cisco.ios.ios_facts – Сбор фактов с удалённых устройств, работающих на Cisco IOS
Примечание
Этот плагин входит в коллекцию cisco.ios (версия 1.2.1).
Для его установки используйте: ansible-galaxy collection install cisco.ios.
Для использования в книге задач укажите: cisco.ios.ios_facts.
Новое в версии 1.0.0: модуля cisco.ios
Описание
- Сбор базового набора фактов устройства с удаленного устройства, работающего под управлением IOS. Этот модуль добавляет к ключам всех базовых сетевых фактов префикс
ansible_net_<fact>. Модуль facts всегда собирает базовый набор фактов с устройства и может включать или отключать сбор дополнительных фактов.
Примечание
У этого модуля есть соответствующий плагин действий.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| gather_network_resources список / элементы=строка | При указании этот аргумент ограничивает собираемые факты заданным подмножеством. Возможные значения этого аргумента включают все и ресурсы, такие как интерфейсы, VLAN и т. д. Можно указать список значений для включения более широкого подмножества. Значения также могут использоваться с начальным ! для указания, что определенное подмножество не должно собираться. Допустимые подмножества — 'all', 'interfaces', 'l2_interfaces', 'vlans', 'lag_interfaces', 'lacp', 'lacp_interfaces', 'lldp_global', 'lldp_interfaces', 'l3_interfaces', 'acl_interfaces', 'static_routes', 'acls'. | ||
| gather_subset список / элементы=строка | По умолчанию: "!config" | При указании этот аргумент ограничивает собираемые факты заданным подмножеством. Возможные значения этого аргумента включают all, min, hardware, config, и interfaces.Укажите список значений для включения более широкого подмножества. Используйте значение с начальным ! для сбора всех фактов, за исключением этого подмножества. | |
| provider словарь | Устарело Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli.Дополнительную информацию см. в руководстве IOS Platform Options. Объект словаря, содержащий данные подключения. | ||
| auth_pass строка | Указывает пароль, который необходимо использовать, если требуется переход в привилегированный режим на удаленном устройстве. Если authorize имеет значение false, то этот аргумент не оказывает влияния. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| authorize булево |
| Указывает модулю перейти в привилегированный режим на удаленном устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| host строка | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве целевого адреса для транспорта. | ||
| password строка | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| port целое число | Указывает порт для построения подключения к удалённому устройству. | ||
| ssh_keyfile путь | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сессии SSH. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout целое число | Указывает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут превышен до завершения операции, модуль выдаст ошибку. | ||
| username строка | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
Примечания
Примечание
- Тестировано на IOS 15.6
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве Ansible Network Guide
- Дополнительную информацию об использовании Ansible для управления устройствами Cisco см. на странице интеграции Cisco Cisco integration page.
Примеры
- name: Gather all legacy facts
cisco.ios.ios_facts:
gather_subset: all
- name: Gather only the config and default facts
cisco.ios.ios_facts:
gather_subset:
- config
- name: Do not gather hardware facts
cisco.ios.ios_facts:
gather_subset:
- '!hardware'
- name: Gather legacy and resource facts
cisco.ios.ios_facts:
gather_subset: all
gather_network_resources: all
- name: Gather only the interfaces resource facts and no legacy facts
cisco.ios.ios_facts:
gather_subset:
- '!all'
- '!min'
gather_network_resources:
- interfaces
- name: Gather interfaces resource and minimal legacy facts
cisco.ios.ios_facts:
gather_subset: min
gather_network_resources: interfaces
- name: Gather L2 interfaces resource and minimal legacy facts
cisco.ios.ios_facts:
gather_subset: min
gather_network_resources: l2_interfaces
- name: Gather L3 interfaces resource and minimal legacy facts
cisco.ios.ios_facts:
gather_subset: min
gather_network_resources: l3_interfaces
Возвращаемые значения
Общие возвращаемые значения описаны в здесь, а следующие поля уникальны для этого модуля:
| Ключ | Возвращается | Описание |
|---|---|---|
| ansible_net_all_ipv4_addresses список / элементы=строка | при конфигурировании интерфейсов | Все IPv4-адреса, настроенные на устройстве |
| ansible_net_all_ipv6_addresses список / элементы=строка | при конфигурировании интерфейсов | Все IPv6-адреса, настроенные на устройстве |
| ansible_net_api строка | всегда | Имя транспортного протокола |
| ansible_net_config строка | при конфигурировании конфигурации | Текущая активная конфигурация устройства |
| ansible_net_filesystems список / элементы=строка | при конфигурировании оборудования | Все имена файловых систем, доступные на устройстве |
| ansible_net_filesystems_info словарь | при конфигурировании оборудования | Хэш всех файловых систем, содержащий информацию о каждой файловой системе (например, свободное и общее пространство) |
| ansible_net_gather_network_resources список / элементы=строка | при конфигурировании ресурса | Список фактов для подмножеств сетевых ресурсов, собранных с устройства |
| ansible_net_gather_subset список / элементы=строка | всегда | Список подмножеств фактов, собранных с устройства |
| ansible_net_hostname строка | всегда | Настроенное имя хоста устройства |
| ansible_net_image строка | всегда | Файл образа, используемый устройством |
| ansible_net_interfaces словарь | при конфигурировании интерфейсов | Хэш всех работающих интерфейсов системы |
| ansible_net_iostype строка | всегда | Тип операционной системы (IOS или IOS-XE), работающей на удалённом устройстве |
| ansible_net_memfree_mb целое число | при конфигурировании оборудования | Доступная свободная память на удалённом устройстве в Мб |
| ansible_net_memtotal_mb целое число | при конфигурировании оборудования | Общий объем памяти на удалённом устройстве в Мб |
| ansible_net_model строка | всегда | Имя модели, возвращённое устройством |
| ansible_net_neighbors словарь | при конфигурировании интерфейсов | Список соседей CDP и LLDP с удалённого устройства. Если присутствуют данные соседей CDP и LLDP на одном порту, предпочтение отдаётся CDP. |
| ansible_net_python_version строка | всегда | Версия Python, используемая контроллером Ansible |
| ansible_net_serialnum строка | всегда | Серийный номер удалённого устройства |
| ansible_net_stacked_models список / элементы=строка | при конфигурировании нескольких устройств в стеке | Имена моделей каждого устройства в стеке |
| ansible_net_stacked_serialnums список / элементы=строка | при конфигурировании нескольких устройств в стеке | Серийные номера каждого устройства в стеке |
| ansible_net_version строка | всегда | Версия операционной системы, работающей на удалённом устройстве |
Авторы
- Пётр Спрыгада (@privateip)
- Сумит Джаисвал (@justjais)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/cisco/ios/ios_facts_module.html