Варианты платформы NOS
Модули Ansible для Extreme NOS в настоящее время поддерживают только подключения через командную строку. httpapi модули могут быть добавлены в будущем. На этой странице подробно описано, как использовать network_cli на NOS в Ansible.
Доступные подключения
| Командная строка | |
|---|---|
| Протокол | SSH |
| Учетные данные |
использует ключи SSH / SSH-агент, если присутствует при использовании пароля принимает |
| Непрямой доступ | через бастион (хост перехода) |
| Настройки подключения | ansible_connection: network_cli |
| Режим включения (эскалация привилегий) | не поддерживается NOS |
| Формат возвращаемых данных | stdout[0]. |
NOS не поддерживает ansible_connection: local. Вы должны использовать ansible_connection: network_cli
Использование командной строки в Ansible
Пример переменных группы командной строки
ansible_connection: network_cli ansible_network_os: nos ansible_user: myuser ansible_password: !vault... ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q bastion01"'
- Если вы используете ключи SSH (включая ssh-агент), вы можете удалить конфигурацию
ansible_password. - Если вы напрямую подключаетесь к хосту (не через бастион/хост перехода), вы можете удалить конфигурацию
ansible_ssh_common_args. - Если вы подключаетесь к хосту через бастион/хост перехода, вы не можете включать свой пароль SSH в директиву
ProxyCommand. Для предотвращения утечки секретов (например, в выводеps), SSH не поддерживает предоставление паролей через переменные среды.
Пример задачи командной строки
- name: Get version information (nos)
nos_command:
commands: "show version"
register: show_ver
when: ansible_network_os == 'nos'
Предупреждение
Никогда не храните пароли в открытом виде. Мы рекомендуем использовать ключи 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.9/network/user_guide/platform_nos.html