vyos_config – Управление конфигурацией VyOS на удаленном устройстве
Новое в версии 2.2.
Описание
- Этот модуль предоставляет управление файлами конфигурации устройств VyOS. Он предоставляет аргументы для управления как файлом конфигурации, так и состоянием активной конфигурации. Все команды конфигурации основаны на командах
setиdeleteв конфигурации устройства.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| backup логическое значение |
| Аргумент backup сделает резервную копию текущей активной конфигурации устройства на хост Ansible перед внесением любых изменений. Если значение backup_options не задано, файл резервной копии будет расположен в папке резервных копий в корневом каталоге playbook или в корневом каталоге роли, если playbook является частью ansible роли. Если каталог не существует, он создаётся. | |
| backup_options словарь добавлено в 2.8 | Это объект типа dict, содержащий настраиваемые параметры, связанные с путём к файлу резервной копии. Значение этого параметра считывается только при установке backup в yes; если backup установлено в no, этот параметр будет проигнорирован. | ||
| dir_path путь | Этот параметр предоставляет путь, заканчивающийся именем каталога, в котором будет храниться файл резервной копии конфигурации. Если каталог не существует, он будет сначала создан, а имя файла будет либо значением filename, либо именем файла по умолчанию, как описано в описании параметров filename. Если значение пути не указано, будет создан каталог backup в текущей рабочей директории, и резервная копия конфигурации будет скопирована в filename внутри каталога backup. | ||
| filename - | Имя файла, которое будет использоваться для хранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <hostname>_config.<дата>@<время>. | ||
| comment - | По умолчанию: "настроен модулем vyos_config" | Позволяет указать описание коммита, которое будет включено при коммите конфигурации. Если конфигурация не изменена или не сохранена, этот аргумент игнорируется. | |
| config - | Аргумент config указывает базу конфигурации для сравнения с желаемой конфигурацией. Если это значение не указано, модуль автоматически извлечёт текущую активную конфигурацию с удалённого устройства. | ||
| lines - | Отсортированный набор строк конфигурации, которые будут управляться и сравниваться с существующей конфигурацией на удалённом устройстве. | ||
| match - |
| Аргумент match управляет методом сопоставления с текущей активной конфигурацией. По умолчанию желаемая конфигурация сопоставляется с активной конфигурацией, и разницы загружаются. Если аргумент match установлен в none, активная конфигурация игнорируется, и конфигурация всегда загружается. | |
| provider словарь | Устаревший Начиная с 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 логическое значение |
| Аргумент save управляет сохранением изменений, внесённых в активную конфигурацию, на диск. Это независимо от коммита конфигурации. При установке в True, активная конфигурация сохраняется. | |
| src - | Аргумент src указывает путь к исходному файлу конфигурации для загрузки. Исходный файл конфигурации может быть в формате скобок или в заданном формате. Исходный файл может содержать переменные шаблона Jinja2. | ||
Примечания
Примечание
- Проверено на VYOS 1.1.7
- Сокращённые команды НЕ идемпотентны, см. Вопросы и ответы по сети.
- Дополнительную информацию об использовании 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 yes | Полный путь к резервной копии файла Пример: /playbooks/ansible/backup/vyos_config.2016-07-16@22:28:34 |
| commands список | всегда | Список команд конфигурации, отправленных устройству Пример: ['...', '...'] |
| date строка | при backup yes | Дата, извлечённая из имени файла резервной копии Пример: 2016-07-16 |
| filename строка | при backup yes и имя файла не указано в параметрах backup | Имя файла резервной копии Пример: vyos_config.2016-07-16@22:28:34 |
| filtered список | всегда | Список команд конфигурации, удаленных для предотвращения сбоя загрузки Пример: ['...', '...'] |
| shortname строка | при backup yes и имя файла не указано в параметрах backup | Полный путь к файлу резервной копии без отметки времени Пример: /playbooks/ansible/backup/vyos_config |
| time строка | при backup yes | Время, извлечённое из имени файла резервной копии Пример: 22:28:34 |
Состояние
- Данный модуль не гарантирует обратную совместимость. [превью]
- Данный модуль поддерживается командой Ansible Network Team. [сетевой]
Поддержка 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.8/modules/vyos_config_module.html