Описание
Модуль Ansible для управления конфигурациями маршрутизаторов ESR. Модуль позволяет получать бэкап с устройства и загружать на устройство заранее подготовленный конфигурационный файл.
Параметры
Параметр | Варианты/По умолчанию | Комментарий |
---|---|---|
after - | ||
apply_when - | Варианты:
| Данный параметр управляет отправкой команды commit на устройство. Если параметр установлен в always, то команда commit отправится на устройство в независимости от различий между текущей и требуемой конфигурациями. Если параметр установлен в modified, то команда commit отправится на устройство только в том случае, если текущая конфигурация устройства отличается от требуемой. Если параметр установлен в never, то команда commit не будет отправлена на устройство. Если команда commit была отправлена на устройство, то будет активирован таймер (по умолчанию 600 секунд), по истечению которого на устройстве будет произведён автоматический откат на действующую ранее конфигурацию. Для остановки этого таймера и применения внесённых изменений необходимо задействовать параметр save_when |
backup boolean | Варианты:
| Данный параметр даёт указание модулю получить полный бэкап текущего конфига с устройства, прежде чем какие-либо изменения будут произведены. Файл бэкапа будет сохранён в каталоге backup в корневой директории плейбука. Если каталог отсутствует, то он будет создан. |
before - | ||
lines - | ||
parents - | ||
save_when - | Варианты:
| Данный параметр управляет отправкой команды confirm на устройство. Если параметр установлен в always, то команда confirm отправится в независимости от применённых изменений. Если параметр установлен в applied, то команда confirm будет отправлена только в том случае, если на устройстве были применены какие-то изменения в соответствии с параметром apply_when. Если параметр установлен в never, то команда confirm не будет отправлена на устройство и по истечению заданного времени (по умолчанию 600 секунд) устройство произведёт автоматический откат на действующую ранее конфигурацию. |
sftp_user - | Данный параметр указывает имя пользователя, с которым необходимо подключиться к устройству по протоколу sftp. Игнорируется, если параметр use_sftp установлен в never | |
sftp_password - | Данный параметр указывает пароль, с которым необходимо подключиться к устройству по протоколу sftp с использованием имени пользователя, указанного в параметре sftp_user. Игнорируется, если параметр use_sftp установлен в never | |
src - | - | В данном параметре указывается путь к файлу, содержащему валидную конфигурацию маршрутизатора ESR, либо шаблон конфигурации. При использовании данного параметра произойдёт полная замена текущей конфигурации |
use_sftp boolean | Варианты:
| Данный параметр даёт указание использовать протокол sftp для отправки конфигурации на устройство при использовании параметра src. Для работы необходимо также указать параметры sftp_user и sftp_password |
Примечания
- Протестировано на версии ПО ESR 1.6.2
- Для ускорения загрузки конфигурации при использовании параметра src рекомендуется использовать параметр use_sftp.
- Для использования протокола sftp для загрузки конфигурации необходимо предварительно создать на устройстве пользователя для работы с sftp, указав в настройках этого пользователя ip sftp enable
- Для корректной работы необходима версия Ansible не ниже 2.7.6
- Для получения информации об использовании Ansible для управлении сетевыми устройствами обратитесь к официальному руководству Ansible
Примеры
- name: render a Jinja2 template onto a ESR device esr_config: src: esr-config.j2 - name: get full backup from ESR device esr_config: backup: yes - name: upload config from src to ESR device and confirm esr_config: src: esr-1000.cfg confirm: True
Возвращаемые значения
В общем случае возвращаемые значения описаны здесь. Ниже перечислены уникальные для модуля значения:
Значение | Условие | Описание |
---|---|---|
backup_path string | когда параметр backup установлен в yes | Полный путь к файлу бэкапа Пример: /ansible/playbooks/backup/esr-1000-config.2019-02-19@11:10:06 |
Установка
Для установки скачайте архив по ссылке выше, распакуйте и запустите скрипт install.py
tar xvzf esr_ansible.tar.gz cd ./esr_ansible python install.py