Spec-Zone.ru › Ansible 2.6

Варианты платформы NXOS

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

  • Доступные подключения
  • Использование CLI в Ansible 2.6
    • Пример CLI group_vars/nxos.yml
    • Пример задачи CLI
  • Использование NX-API в Ansible 2.6
    • Включение NX-API
    • Пример NX-API group_vars/nxos.yml
    • Пример задачи NX-API

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

CLI NX-API
Протокол SSH HTTP(S)
Непрямой доступ через башн (хост перехода) через веб-прокси
Формат возвращаемых данных stdout[0]. stdout[0].messages[0].

Для устаревших playbooks NXOS по-прежнему поддерживает ansible_connection: local. Рекомендуется как можно скорее перейти на использование ansible_connection: network_cli или ansible_connection: httpapi.

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

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

ansible_connection: network_cli
ansible_network_os: nxos
ansible_user: myuser
ansible_ssh_pass: !vault...
ansible_become: yes
ansible_become_method: enable
ansible_become_pass: !vault...
ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q bastion01"'
  • Если вы используете SSH-ключи (включая ssh-agent), вы можете удалить конфигурацию ansible_ssh_pass.
  • Если вы обращаетесь к хосту напрямую (не через башн/хост перехода), вы можете удалить конфигурацию ansible_ssh_common_args.
  • Если вы обращаетесь к хосту через башн/хост перехода, вы не можете включать свой пароль SSH в директиву ProxyCommand. Для предотвращения утечки секретов (например, в выводе ps) SSH не поддерживает предоставление паролей через переменные окружения.

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

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

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

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

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

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

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

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

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

ansible_connection: httpapi
ansible_network_os: nxos
ansible_user: myuser
ansible_ssh_pass: !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)
  nxos_config:
    backup: yes
  register: backup_nxos_location
  environment: "{{ proxy_env }}"
  when: ansible_network_os == 'nxos'

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

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

Никогда не храните пароли в открытом виде. Рекомендуется использовать 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.6/network/user_guide/platform_nxos.html

Spec-Zone.ru

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