This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
система_управления_конфигурациями_ansible_и_cisco [2019/08/15 13:28] val [Шаг 1. Исходное состояние стенда] |
система_управления_конфигурациями_ansible_и_cisco [2019/09/02 12:10] (current) val [Система управления конфигурациями Ansible и Cisco] |
||
|---|---|---|---|
| Line 5: | Line 5: | ||
| **Хэштеги:** Linux, Cisco, Ansible, Fail2ban, Git | **Хэштеги:** Linux, Cisco, Ansible, Fail2ban, Git | ||
| + | **Видеозапись:** https://youtu.be/zUi4lTd5WHc | ||
| ===== Реклама вебинара ===== | ===== Реклама вебинара ===== | ||
| Line 16: | Line 17: | ||
| * [[Linux. Мониторинг оборудования и интеграция с Cisco#Модуль 2. Развертывание менеджмент станции]] | * [[Linux. Мониторинг оборудования и интеграция с Cisco#Модуль 2. Развертывание менеджмент станции]] | ||
| * [[Сервис SSH#Настройка ssh клиента]] для согласования протоколов шифрования | * [[Сервис SSH#Настройка ssh клиента]] для согласования протоколов шифрования | ||
| - | |||
| - | <code> | ||
| - | rm /root/.ssh/known_hosts | ||
| - | |||
| - | ping ya.ru | ||
| - | </code> | ||
| * Коммутаторы switch1, switch2, switch3, ... | * Коммутаторы switch1, switch2, switch3, ... | ||
| Line 61: | Line 56: | ||
| ===== Шаг 2. Постановка задач и ретроспектива вариантов их решения ===== | ===== Шаг 2. Постановка задач и ретроспектива вариантов их решения ===== | ||
| - | ==== Задачи и известные решения ==== | + | ==== Задачи и варианты решения ==== |
| === Задача 1 - автоматическое резервное копирование конфигураций === | === Задача 1 - автоматическое резервное копирование конфигураций === | ||
| Line 71: | Line 66: | ||
| * [[Система контроля версий rcs]] | * [[Система контроля версий rcs]] | ||
| - | === Задача 3 - изменения конфигурации множества устройств cisco === | + | === Задача 3 - изменение конфигурации множества устройств cisco === |
| * [[Программирование диалогов expect]] | * [[Программирование диалогов expect]] | ||
| Line 81: | Line 76: | ||
| * [[Резервное копирование конфигурации Cisco#Пакет ciscoconf]] | * [[Резервное копирование конфигурации Cisco#Пакет ciscoconf]] | ||
| - | === Задача 2 и 3 === | + | === Задача 1, 2 и 3 === |
| * [[Резервное копирование конфигурации Cisco#Пакет rancid]] | * [[Резервное копирование конфигурации Cisco#Пакет rancid]] | ||
| Line 90: | Line 85: | ||
| <code> | <code> | ||
| + | server.corp43.un:~# ssh switch1 "show running-config" | ||
| + | |||
| server.corp43.un:~# apt install tftpd && mkdir /srv/tftp/ | server.corp43.un:~# apt install tftpd && mkdir /srv/tftp/ | ||
| Line 102: | Line 99: | ||
| * Для автоматизации подключения к новым устройствам может потребоваться [[Сервис SSH#Настройка ssh клиента]] для отключения проверки ключа | * Для автоматизации подключения к новым устройствам может потребоваться [[Сервис SSH#Настройка ssh клиента]] для отключения проверки ключа | ||
| - | * [[Программирование диалогов expect]] | + | * [[Программирование диалогов expect]], в том числе, с использованием tftp |
| <code> | <code> | ||
| Line 112: | Line 109: | ||
| <code> | <code> | ||
| - | server.corp43.un:~# sshpass -p cisco ssh switchN "show run" | + | server.corp43.un:~# sshpass -p cisco ssh switch1 "show run" |
| + | |||
| + | server.corp43.un:~# rm /srv/tftp/switch2-running-config | ||
| - | server.corp43.un:~# sshpass -p cisco scp switchN:running-config /srv/tftp/switchN-running-config | + | server.corp43.un:~# sshpass -p cisco scp switch2:running-config /srv/tftp/switch2-running-config |
| </code> | </code> | ||
| ===== Шаг 4. Использование git для протоколирования версий конфигураций ===== | ===== Шаг 4. Использование git для протоколирования версий конфигураций ===== | ||
| Line 125: | Line 124: | ||
| ==== Простой вариант - изменение конфигурации командой scp ==== | ==== Простой вариант - изменение конфигурации командой scp ==== | ||
| - | * !!! tftp больше не нужен :) | + | * !!! tftp больше ВООБЩЕ не нужен :) |
| - | * Например, отключим scp :) | + | * Например, отключим scp через scp :) |
| <code> | <code> | ||
| + | server.corp43.un:~# cd /root/ | ||
| + | |||
| server.corp43.un:~# cat cisco_change_conf.txt | server.corp43.un:~# cat cisco_change_conf.txt | ||
| </code><code> | </code><code> | ||
| Line 150: | Line 151: | ||
| <code> | <code> | ||
| + | # host switch1 | ||
| + | |||
| + | # host 192.168.43.3 | ||
| + | |||
| # cat /root/backup_cisco_conf.sh | # cat /root/backup_cisco_conf.sh | ||
| </code><code> | </code><code> | ||
| Line 166: | Line 171: | ||
| /usr/bin/git commit -a -m `date '+%Y-%m-%d_%H:%M:%S'` | /usr/bin/git commit -a -m `date '+%Y-%m-%d_%H:%M:%S'` | ||
| </code><code> | </code><code> | ||
| + | # cd /srv/tftp/ | ||
| + | |||
| + | # rm switch1-running-config | ||
| + | |||
| + | # /root/backup_cisco_conf.sh 192.168.43.3 | ||
| + | </code> | ||
| + | |||
| + | * [[Сервис Git]] | ||
| + | |||
| + | <code> | ||
| # cat /etc/fail2ban/action.d/cisco-backup-config.conf | # cat /etc/fail2ban/action.d/cisco-backup-config.conf | ||
| </code><code> | </code><code> | ||
| Line 173: | Line 188: | ||
| </code> | </code> | ||
| - | * [[Сервис Git]] | + | |
| ===== Шаг 6. Добавляем новое оборудование ===== | ===== Шаг 6. Добавляем новое оборудование ===== | ||
| - | - Базовая конфигурация | + | - Базовая конфигурация switch3 |
| - | - До настройка через ansible | + | - До настройка через [[Сервис Ansible#Использование playbook]] ansible только нужных устройств |
| - Проверка наличия резервной копии | - Проверка наличия резервной копии | ||