Варианты платформы с поддержкой Netconf
На этой странице представлены подробности о работе подключения netconf в Ansible 2.7 и о том, как его использовать.
Доступные подключения
| Протокол | XML через SSH |
| Непрямой доступ | через бастион (хост перехода) |
| Настройки подключения | ansible_connection: netconf |
Для устаревших playbook, Ansible все еще поддерживает ansible_connection=local только для модуля netconf_config. Рекомендуется как можно скорее перейти на ansible_connection=netconf.
Использование NETCONF в Ansible 2.6 и более поздних версиях
Включение NETCONF
Прежде чем использовать NETCONF для подключения к коммутатору, необходимо:
- установить пакет
ncclientPython на управляющих узлах сpip install ncclient - включить NETCONF на устройстве Junos OS.
Чтобы включить NETCONF на новом коммутаторе через Ansible, используйте модуль, специфичный для платформы, через подключение CLI или настройте его вручную. Например, настройте переменные на уровне платформы, как в примере CLI выше, затем запустите задачу playbook следующим образом:
- name: Enable NETCONF connection: network_cli junos_netconf: when: ansible_network_os == 'junos'
После включения NETCONF измените свои переменные, чтобы использовать подключение NETCONF.
Пример инвентаризации NETCONF [junos:vars]
[junos:vars] ansible_connection=netconf ansible_network_os=junos ansible_user=myuser ansible_ssh_pass=!vault |
Пример задачи NETCONF
- name: Backup current switch config
netconf_config:
backup: yes
register: backup_junos_location
Пример задачи NETCONF с настраиваемыми переменными
- name: configure interface while providing different private key file path
netconf_config:
backup: yes
register: backup_junos_location
vars:
ansible_private_key_file: /home/admin/.ssh/newprivatekeyfile
Примечание: для настраиваемых переменных плагина подключения nectonf .. _Refer: https://docs.ansible.com/ansible/latest/plugins/connection/netconf.html
Предупреждение
Никогда не храните пароли в открытом виде. Рекомендуется использовать ключи SSH для аутентификации подключений SSH. Ansible поддерживает ssh-agent для управления вашими ключами SSH. Если вам необходимо использовать пароли для аутентификации подключений SSH, рекомендуется шифровать их с помощью Ansible Vault.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/network/user_guide/platform_netconf_enabled.html