Spec-Zone.ru › Ansible

Параметры платформы CloudEngine OS

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

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

    • Пример инвентаря CLI [ce:vars]
    • Пример задачи CLI
  • Использование NETCONF в Ansible

    • Включение NETCONF
    • Пример инвентаря NETCONF [ce:vars]
    • Пример задачи NETCONF
  • Примечания

    • Модули, работающие с ansible.netcommon.network_cli
    • Модули, работающие с ansible.netcommon.netconf

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

CLI

NETCONF

Протокол

SSH

XML через SSH

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

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

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

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

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

Непрямой доступ

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

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

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

ansible_connection:

ansible.netcommon.network_cli

ansible_connection:

ansible.netcommon.netconf

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

не поддерживается ОС ce

не поддерживается ОС ce

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

См. документацию соответствующего модуля

См. документацию соответствующего модуля

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

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

Пример инвентаря CLI [ce:vars]

[ce:vars]
ansible_connection=ansible.netcommon.network_cli
ansible_network_os=community.network.ce
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 CE OS version
  community.network.ce_command:
    commands: display version
  when: ansible_network_os == 'community.network.ce'

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

Включение NETCONF

Прежде чем подключаться к коммутатору с помощью NETCONF, необходимо:

  • установить пакет Python ncclient на управляющих узлах с помощью pip install ncclient
  • включить NETCONF на устройствах CloudEngine OS

Чтобы включить NETCONF на новом коммутаторе с помощью Ansible, используйте модуль community.network.ce_config с подключением CLI. Настройте переменные уровня платформы так же, как в приведенном выше примере CLI, а затем выполните задачу плейбука, например:

- name: Enable NETCONF
  connection: ansible.netcommon.network_cli
  community.network.ce_config:
    lines:
      - snetconf server enable
  when: ansible_network_os == 'community.network.ce'

После включения NETCONF измените переменные, чтобы использовать подключение NETCONF.

Пример инвентаря NETCONF [ce:vars]

[ce:vars]
ansible_connection=ansible.netcommon.netconf
ansible_network_os=community.network.ce
ansible_user=myuser
ansible_password=!vault |
ansible_paramiko_proxy_command='-o ProxyCommand="ssh -W %h:%p -q bastion01"'

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

- name: Create a vlan, id is 50(ce)
  community.network.ce_vlan:
    vlan_id: 50
    name: WEB
  when: ansible_network_os == 'community.network.ce'

Примечания

Модули, работающие с ansible.netcommon.network_cli

community.network.ce_acl_interface
community.network.ce_command
community.network.ce_config
community.network.ce_evpn_bgp
community.network.ce_evpn_bgp_rr
community.network.ce_evpn_global
community.network.ce_facts
community.network.ce_mlag_interface
community.network.ce_mtu
community.network.ce_netstream_aging
community.network.ce_netstream_export
community.network.ce_netstream_global
community.network.ce_netstream_template
community.network.ce_ntp_auth
community.network.ce_rollback
community.network.ce_snmp_contact
community.network.ce_snmp_location
community.network.ce_snmp_traps
community.network.ce_startup
community.network.ce_stp
community.network.ce_vxlan_arp
community.network.ce_vxlan_gateway
community.network.ce_vxlan_global

Модули, работающие с ansible.netcommon.netconf

community.network.ce_aaa_server
community.network.ce_aaa_server_host
community.network.ce_acl
community.network.ce_acl_advance
community.network.ce_bfd_global
community.network.ce_bfd_session
community.network.ce_bfd_view
community.network.ce_bgp
community.network.ce_bgp_af
community.network.ce_bgp_neighbor
community.network.ce_bgp_neighbor_af
community.network.ce_dldp
community.network.ce_dldp_interface
community.network.ce_eth_trunk
community.network.ce_evpn_bd_vni
community.network.ce_file_copy
community.network.ce_info_center_debug
community.network.ce_info_center_global
community.network.ce_info_center_log
community.network.ce_info_center_trap
community.network.ce_interface
community.network.ce_interface_ospf
community.network.ce_ip_interface
community.network.ce_lacp
community.network.ce_link_status
community.network.ce_lldp
community.network.ce_lldp_interface
community.network.ce_mlag_config
community.network.ce_netconf
community.network.ce_ntp
community.network.ce_ospf
community.network.ce_ospf_vrf
community.network.ce_reboot
community.network.ce_sflow
community.network.ce_snmp_community
community.network.ce_snmp_target_host
community.network.ce_snmp_user
community.network.ce_static_route
community.network.ce_static_route_bfd
community.network.ce_switchport
community.network.ce_vlan
community.network.ce_vrf
community.network.ce_vrf_af
community.network.ce_vrf_interface
community.network.ce_vrrp
community.network.ce_vxlan_tunnel
community.network.ce_vxlan_vap

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

Никогда не храните пароли в открытом виде. Для аутентификации 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_ce.html

Spec-Zone.ru

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