vyos_config – Управление конфигурацией VyOS на удалённом устройстве
Обзор
- Этот модуль обеспечивает управление файлами конфигурации устройств VyOS. Он предоставляет аргументы для управления как файлом конфигурации, так и состоянием активной конфигурации. Все команды конфигурации основаны на командах
setиdeleteв конфигурации устройства.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| backup boolean |
| Аргумент backup выполнит резервное копирование текущей активной конфигурации устройства на хост Ansible перед внесением каких-либо изменений. Если значение backup_options не указано, файл резервной копии будет расположен в папке backup в корневом каталоге playbook или в корневом каталоге роли, если playbook является частью роли Ansible. Если папка не существует, она будет создана. | |
| backup_options dictionary добавлено в 2.8 | Это объект dict, содержащий настраиваемые параметры, относящиеся к пути к файлу резервной копии. Значение этого параметра читается только тогда, когда backup установлено в yes, если backup установлено в no, этот параметр будет проигнорирован. | ||
| dir_path path | Этот параметр задаёт путь, заканчивающийся именем каталога, в котором будет храниться файл резервной копии конфигурации. Если каталог не существует, он будет создан, а имя файла будет либо значением filename, либо значением по умолчанию, как описано в описании параметров filename. Если значение пути не указано, будет создан каталог backup в текущей рабочей директории, и резервная копия конфигурации будет скопирована в filename внутри каталога backup. | ||
| filename - | Имя файла, используемое для хранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время> | ||
| comment - | По умолчанию: "configured by vyos_config" | Позволяет указать описание коммита, которое будет включено при сохранении конфигурации. Если конфигурация не изменена или не сохранена, этот аргумент игнорируется. | |
| config - | Аргумент config задаёт базу конфигурации для сравнения с желаемой конфигурацией. Если это значение не указано, модуль автоматически извлечёт текущую активную конфигурацию с удалённого устройства. | ||
| lines - | Упорядоченный набор строк конфигурации, подлежащий управлению и сравнению с существующей конфигурацией на удалённом устройстве. | ||
| match - |
| Аргумент match управляет методом сравнения с текущей активной конфигурацией. По умолчанию желаемая конфигурация сравнивается с активной, и разницы загружаются. Если аргумент match установлен в none, активная конфигурация игнорируется, и конфигурация всегда загружается. | |
| provider dictionary | Устарело Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli. Для получения дополнительной информации см. Руководство по сети. Объект dict, содержащий данные соединения. | ||
| host строка / обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному протоколу. Значение host используется в качестве адреса назначения для транспорта. | ||
| password строка | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| port целое число | По умолчанию: 22 | Указывает порт для подключения к удалённому устройству. | |
| ssh_keyfile путь | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout целое число | По умолчанию: 10 | Указывает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истечёт до завершения операции, модуль вернёт ошибку. | |
| username строка | Задаёт имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| save boolean |
| Аргумент save управляет сохранением изменений, внесённых в активную конфигурацию, на диск. Это независимо от коммита конфигурации. При установке в True активная конфигурация сохраняется. | |
| src - | Аргумент src указывает путь к исходному файлу конфигурации для загрузки. Исходный файл конфигурации может быть в формате скобок или формате установки. Исходный файл может содержать переменные шаблона Jinja2. | ||
Примечания
Примечание
- Тестировалось на VyOS 1.1.8 (helium).
- Этот модуль работает с подключением
network_cli. См. параметры платформы VyOS. - Для получения дополнительной информации об использовании Ansible для управления сетевыми устройствами, см. Руководство по Ansible для сетей
Примеры
- name: configure the remote device
vyos_config:
lines:
- set system host-name {{ inventory_hostname }}
- set service lldp
- delete service dhcp-server
- name: backup and load from file
vyos_config:
src: vyos.cfg
backup: yes
- name: render a Jinja2 template onto the VyOS router
vyos_config:
src: vyos_template.j2
- name: for idempotency, use full-form commands
vyos_config:
lines:
# - set int eth eth2 description 'OUTSIDE'
- set interface ethernet eth2 description 'OUTSIDE'
- name: configurable backup path
vyos_config:
backup: yes
backup_options:
filename: backup.cfg
dir_path: /home/user
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup = да | Полный путь к резервной копии файла Пример: /playbooks/ansible/backup/vyos_config.2016-07-16@22:28:34 |
| commands список | всегда | Список команд конфигурации, отправленных устройству Пример: ['...', '...'] |
| date строка | при backup = да | Дата, извлечённая из имени файла резервной копии Пример: 2016-07-16 |
| filename строка | при backup = да и имя файла не указано в опциях резервного копирования | Имя файла резервной копии Пример: vyos_config.2016-07-16@22:28:34 |
| filtered список | всегда | Список команд конфигурации, удалённых для предотвращения сбоя загрузки Пример: ['...', '...'] |
| shortname строка | при backup = да и имя файла не указано в опциях резервного копирования | Полный путь к файлу резервной копии без отметки времени Пример: /playbooks/ansible/backup/vyos_config |
| time строка | при backup = да | Время, извлечённое из имени файла резервной копии Пример: 22:28:34 |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается командой Ansible Network. [сеть]
Поддержка Red Hat
Дополнительную информацию о поддержке этого модуля Red Hat можно найти в этой статье базы знаний Red Hat.
Авторы
- Nathaniel Case (@Qalthos)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/vyos_config_module.html