os_port_info – Получение информации о портах в OpenStack
Описание
- Получение информации о портах из OpenStack.
- Этот модуль назывался
os_port_factsдо Ansible 2.9, возвращаяansible_facts. Обратите внимание, что модуль os_port_info больше не возвращаетansible_facts!
Псевдонимы: os_port_facts
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- openstacksdk
- openstacksdk >= 0.12.0
- python >= 2.7
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_timeout целое число | Сколько времени должно ждать сокетное подключение перед истечением времени ожидания API-вызовов. Если этот параметр опущен, он не будет передан в библиотеку запросов. | |
| auth словарь | Словарь, содержащий информацию об аутентификации, необходимую для стратегии подключаемых модулей аутентификации облака. Для плагина password по умолчанию он будет содержать auth_url, username, password, project_name и любую информацию о доменах (например, os_user_domain_name или os_project_domain_name), если облако их поддерживает. Для других плагинов этот параметр должен содержать параметры, необходимые данному плагину аутентификации. Этот параметр не нужен, если указано имя облака или присутствуют переменные окружения OpenStack OS_*. | |
| auth_type строка | Имя плагина аутентификации для использования. Если облако использует что-то кроме парольной аутентификации, здесь должно быть указано имя плагина, а содержимое параметра auth должно быть соответствующим образом обновлено. | |
| availability_zone - | Игнорируется. Присутствует для обратной совместимости. | |
| ca_cert строка | Путь к файлу с набором сертификатов CA, который может использоваться для проверки SSL-API-запросов. Псевдонимы: cacert | |
| client_cert строка | Путь к клиенту сертификат для использования в рамках SSL-транзакции. Псевдонимы: cert | |
| client_key строка | Путь к ключу клиента для использования в рамках SSL-транзакции. Псевдонимы: key | |
| cloud необработанные данные | Названное облако или конфигурация облака для работы. Если cloud – строка, она ссылается на конфигурацию облака с именем, определённую в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если предоставлен auth или присутствуют переменные окружения OpenStack OS_*. Если cloud – словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | |
| filters - | Словарь метаданных для дополнительного фильтра. Элементы этого словаря будут сопоставляться с возвращаемыми словарями портов. Сопоставление в настоящее время ограничено строками внутри словаря порта или строками внутри вложенных словарей. | |
| interface строка |
| Тип URL конечной точки для получения из каталога служб. Псевдонимы: endpoint_type |
| port - | Уникальное имя или идентификатор порта. | |
| region_name строка | Имя региона. | |
| timeout целое число | Значение по умолчанию: 180 | Сколько времени Ansible должно ждать запрашиваемого ресурса. |
| validate_certs логическое значение |
| Нужно ли проверять SSL-API-запросы. До Ansible 2.3 значение по умолчанию было yes.Псевдонимы: verify |
| wait логическое значение |
| Должен ли Ansible ждать, пока запрашиваемый ресурс завершит работу. |
Примечания
Примечание
- Могут использоваться стандартные переменные окружения OpenStack, такие как
OS_USERNAME, вместо явного указания значений. - Информация об аутентификации управляется openstacksdk, что означает, что значения могут поступать из файла yaml-конфигурации в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных окружения, и, наконец, из явных параметров в задачах. Более подробную информацию можно найти по адресу https://docs.openstack.org/openstacksdk/
Примеры
# Gather information about all ports
- os_port_info:
cloud: mycloud
register: result
- debug:
msg: "{{ result.openstack_ports }}"
# Gather information about a single port
- os_port_info:
cloud: mycloud
port: 6140317d-e676-31e1-8a4a-b1913814a471
# Gather information about all ports that have device_id set to a specific value
# and with a status of ACTIVE.
- os_port_info:
cloud: mycloud
filters:
device_id: 1038a010-3a37-4a9d-82ea-652f1da36597
status: ACTIVE
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| openstack_ports сложный тип | всегда, но может быть пустым | Список словарей портов. Подмножество ключей словаря, перечисленных ниже, может быть возвращено, в зависимости от вашего облачного провайдера. | |
| admin_state_up булево | успешно | Административное состояние маршрутизатора, которое может быть активным (true) или неактивным (false). Пример: True | |
| allowed_address_pairs список | успешно | Набор из нуля или более разрешенных пар адресов. Пара адресов состоит из IP-адреса и MAC-адреса. | |
| binding:host_id строка | успешно | UUID хоста, на котором выделен порт. Пример: b4bd682d-234a-4091-aa5b-4b025a6a7759 | |
| binding:profile словарь | успешно | Словарь, который позволяет приложению, работающему на хосте, передавать и получать информацию о порте виртуальной сетевой карты (VIF) в плагин. | |
| binding:vif_details словарь | успешно | Словарь, который позволяет приложению передавать информацию о функциях, предоставляемых API сетевых подключений. Пример: {'port_filter': True} | |
| binding:vif_type словарь | успешно | Тип VIF для порта. Пример: ovs | |
| binding:vnic_type строка | успешно | Тип виртуальной сетевой карты (vNIC), привязанной к порту Neutron. Пример: normal | |
| device_id строка | успешно | UUID устройства, использующего этот порт. Пример: b4bd682d-234a-4091-aa5b-4b025a6a7759 | |
| device_owner строка | успешно | UUID сущности, использующей этот порт. Пример: network:router_interface | |
| dns_assignment список | успешно | Информация о назначении DNS. | |
| dns_name строка | успешно | Имя DNS | |
| extra_dhcp_opts список | успешно | Набор из нуля или более дополнительных пар параметров DHCP. Пара параметров состоит из значения параметра и его имени. | |
| fixed_ips список | успешно | IP-адреса для порта. Включает IP-адрес и UUID подсети. | |
| id строка | успешно | UUID порта. Пример: 3ec25c97-7052-4ab8-a8ba-92faf84148de | |
| ip_address строка | успешно | IP-адрес. Пример: 127.0.0.1 | |
| mac_address строка | успешно | MAC-адрес. Пример: 00:00:5E:00:53:42 | |
| name строка | успешно | Имя порта. Пример: port_name | |
| network_id строка | успешно | UUID подключенной сети. Пример: dd1ede4f-3952-4131-aab6-3b8902268c7d | |
| port_security_enabled булево | успешно | Статус защиты порта. Статус включен (true) или выключен (false). | |
| security_groups список | успешно | UUID любых подключенных групп безопасности. | |
| status строка | успешно | Статус порта. Пример: ACTIVE | |
| tenant_id строка | успешно | UUID арендатора, который владеет сетью. Пример: 51fce036d7984ba6af4f6c849f65ef00 | |
Статус
- Данный модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- David Shrewsbury (@Shrews)
Подсказка
Если вы заметите какие-либо проблемы в данной документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/os_port_info_module.html