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

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

- 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–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/network/user_guide/platform_nxos.html

Spec-Zone.ru

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