Spec-Zone.ru › Ansible

Параметры платформы EXOS

Extreme EXOS входит в коллекцию community.network и поддерживает несколько типов подключений. На этой странице описано, как работает каждый тип подключения в Ansible и как его использовать.

  • Доступные подключения
  • Использование CLI в Ansible

    • Пример CLI group_vars/exos.yml
    • Пример задачи CLI
  • Использование EXOS-API в Ansible

    • Пример EXOS-API group_vars/exos.yml
    • Пример задачи EXOS-API

Доступные подключения

CLI

EXOS-API

Протокол

SSH

HTTP(S)

Учетные данные

используются ключи SSH / ssh-agent, если они доступны

при использовании пароля принимается -u myuser -k

используются сертификаты HTTPS, если они доступны

Опосредованный доступ

через бастионный узел (промежуточный узел)

через веб-прокси

Параметры подключения

ansible_connection:

ansible.netcommon.network_cli

ansible_connection:

ansible.netcommon.httpapi

Режим enable
(повышение привилегий)

не поддерживается в EXOS

не поддерживается в EXOS

Формат возвращаемых данных

stdout[0].

stdout[0].messages[0].

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_paramiko_proxy_command: '-o ProxyCommand="ssh -W %h:%p -q bastion01"'
  • Если вы используете ключи SSH (включая ssh-agent), конфигурацию ansible_password можно удалить.
  • Если вы подключаетесь к узлу напрямую (не через бастионный/промежуточный узел), конфигурацию ansible_paramiko_proxy_command можно удалить.
  • Если вы подключаетесь к узлу через бастионный/промежуточный узел, нельзя указывать пароль 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-agent для управления ключами SSH. Если для аутентификации SSH-подключений необходимо использовать пароли, рекомендуется зашифровать их с помощью Ansible Vault.

См. также

Настройка параметров времени ожидания

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/network/user_guide/platform_exos.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API