Spec-Zone.ru › Ansible

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

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

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

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

    • Включение NX-API
    • Пример NX-API group_vars/nxos.yml
    • Пример задачи NX-API
  • Матрица поддержки платформ Cisco Nexus

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

CLI

NX-API

Протокол

SSH

HTTP(S)

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

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

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

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

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

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

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

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

ansible_connection:

ansible.netcommon.network_cli

ansible_connection:

ansible.netcommon.httpapi

Режим enable
(повышение привилегий)
поддерживается начиная с версии 2.5.3

поддерживается: используйте ansible_become: true с ansible_become_method: enable и ansible_become_password:

не поддерживается NX-API

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

stdout[0].

stdout[0].messages[0].

ansible_connection: local устарел. Вместо него используйте ansible_connection: ansible.netcommon.network_cli или ansible_connection: ansible.netcommon.httpapi.

Использование CLI в Ansible

Пример CLI group_vars/nxos.yml

ansible_connection: ansible.netcommon.network_cli
ansible_network_os: cisco.nxos.nxos
ansible_user: myuser
ansible_password: !vault...
ansible_become: true
ansible_become_method: enable
ansible_become_password: !vault...
ansible_paramiko_proxy_command: '-o ProxyCommand="ssh -W %h:%p -q bastion01"'

Примечание

Переменная ansible_paramiko_proxy_command устарела вместе с модулем подключения на основе Paramiko. Вместо неё используйте ansible_libssh_proxy_command с модулем подключения libssh. Подробнее о переходе с Paramiko на libssh см. в статье Переход на ssh_type libssh для ansible.netcommon.network_cli во всех коллекциях Ansible Networking.

  • Если вы используете ключи SSH (включая ssh-agent), конфигурацию ansible_password можно удалить.
  • Если вы подключаетесь к узлу напрямую (не через бастион/промежуточный узел), конфигурацию ansible_paramiko_proxy_command можно удалить.
  • Если вы подключаетесь к узлу через бастион/промежуточный узел, нельзя указывать пароль SSH в директиве ProxyCommand. Чтобы секретные данные не попали в вывод (например, в вывод ps), SSH не поддерживает передачу паролей через переменные окружения.

Пример задачи CLI

- name: Backup current switch config (nxos)
  cisco.nxos.nxos_config:
    backup: yes
  register: backup_nxos_location
  when: ansible_network_os == 'cisco.nxos.nxos'

Использование NX-API в Ansible

Включение NX-API

Прежде чем подключаться к коммутатору с помощью NX-API, необходимо включить NX-API. Чтобы включить NX-API на новом коммутаторе с помощью Ansible, используйте модуль nxos_nxapi через CLI-подключение. Настройте group_vars/nxos.yml так же, как в примере CLI выше, а затем запустите задачу плейбука, например:

- name: Enable NX-API
  cisco.nxos.nxos_nxapi:
    enable_http: yes
    enable_https: yes
  when: ansible_network_os == 'cisco.nxos.nxos'

Дополнительные сведения о параметрах включения HTTP/HTTPS и локального HTTP см. в документации модуля nxos_nxapi.

После включения NX-API измените group_vars/nxos.yml, чтобы использовать подключение NX-API.

Пример NX-API group_vars/nxos.yml

ansible_connection: ansible.netcommon.httpapi
ansible_network_os: cisco.nxos.nxos
ansible_user: myuser
ansible_password: !vault...
proxy_env:
  http_proxy: http://proxy.example.com:8080
  • Если вы подключаетесь к узлу напрямую (не через веб-прокси), конфигурацию proxy_env можно удалить.
  • Если вы подключаетесь к узлу через веб-прокси с помощью https, замените http_proxy на https_proxy.

Пример задачи NX-API

- name: Backup current switch config (nxos)
  cisco.nxos.nxos_config:
    backup: yes
  register: backup_nxos_location
  environment: "{{ proxy_env }}"
  when: ansible_network_os == 'cisco.nxos.nxos'

В этом примере переменная proxy_env, определённая в group_vars, передаётся параметру environment модуля, используемого в задаче.

Предупреждение

Никогда не храните пароли в открытом виде. Для аутентификации SSH-подключений рекомендуется использовать ключи SSH. Ansible поддерживает ssh-agent для управления ключами SSH. Если для аутентификации SSH-подключений необходимо использовать пароли, рекомендуется зашифровать их с помощью Ansible Vault.

Матрица поддержки платформ Cisco Nexus

Следующие платформы и версии программного обеспечения сертифицированы Cisco для работы с этой версией Ansible.

Минимальные требования к платформам и программному обеспечению

Поддерживаемые платформы

Минимальная версия NX-OS

Cisco Nexus N3k

7.0(3)I2(5) и новее

Cisco Nexus N9k

7.0(3)I2(5) и новее

Cisco Nexus N5k

7.3(0)N1(1) и новее

Cisco Nexus N6k

7.3(0)N1(1) и новее

Cisco Nexus N7k

7.3(0)D1(1) и новее

Cisco Nexus MDS

8.4(1) и новее (совместимость см. в документации соответствующего модуля)

Модели платформ

Платформа

Описание

N3k

Поддерживаются модели N30xx, N31xx и N35xx

N5k

Поддерживаются все модели N5xxx

N6k

Поддерживаются все модели N6xxx

N7k

Поддерживаются все модели N7xxx

N9k

Поддерживаются все модели N9xxx

MDS

Поддерживаются все модели MDS 9xxx

См. также

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

© 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_nxos.html

Spec-Zone.ru

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