Варианты платформы EXOS
Extreme EXOS входит в коллекцию community.network и поддерживает несколько соединений. Эта страница содержит подробную информацию о работе каждого соединения в Ansible и о способах его использования.
Доступные соединения
CLI | EXOS-API | |
|---|---|---|
Протокол | SSH | HTTP(S) |
Учетные данные |
использует SSH-ключи/SSH-агент, если доступен принимает | использует сертификаты HTTPS, если доступны |
Косвенный доступ | через башней (шлюз) | через веб-прокси |
Настройки соединения |
|
|
Режим включения | не поддерживается EXOS | не поддерживается EXOS |
Формат возвращаемых данных |
|
|
EXOS не поддерживает ansible_connection: local. Необходимо использовать ansible_connection: ansible.netcommon.network_cli или ansible_connection: ansible.netcommon.httpapi.
Использование CLI в Ansible
Пример CLI group_vars/exos.yml
ansible_connection: ansible.netcommon.network_cli ansible_network_os: community.network.exos 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 не поддерживает предоставление паролей через переменные окружения.
Пример задачи CLI
- name: Retrieve EXOS OS version
community.network.exos_command:
commands: show version
when: ansible_network_os == 'community.network.exos'
Использование EXOS-API в Ansible
Пример EXOS-API group_vars/exos.yml
ansible_connection: ansible.netcommon.httpapi ansible_network_os: community.network.exos ansible_user: myuser ansible_password: !vault... proxy_env: http_proxy: http://proxy.example.com:8080
- Если вы подключаетесь к хосту напрямую (не через веб-прокси), вы можете удалить конфигурацию
proxy_env. - Если вы подключаетесь к хосту через веб-прокси с использованием
https, изменитеhttp_proxyнаhttps_proxy.
Пример задачи EXOS-API
- name: Retrieve EXOS OS version
community.network.exos_command:
commands: show version
when: ansible_network_os == 'community.network.exos'
В этом примере переменная proxy_env, определённая в group_vars, передаётся в параметр environment используемого в задаче модуля.
Предупреждение
Никогда не храните пароли в открытом виде. Рекомендуется использовать SSH-ключи для аутентификации SSH-соединений. Ansible поддерживает ssh-агент для управления вашими 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.10/network/user_guide/platform_exos.html