os_port – Добавление/обновление/удаление портов из облака OpenStack
Описание
- Добавление, обновление или удаление портов из облака OpenStack. Состояние «present» гарантирует создание или обновление порта при необходимости.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.7
- openstacksdk >= 0.12.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| admin_state_up boolean |
| Устанавливает состояние администратора. |
| allowed_address_pairs - | Список разрешенных пар адресов. Разрешенные пары адресов поддерживаются со структурой словаря. Например: allowed_address_pairs: - ip_address: 10.1.0.12 mac_address: ab:cd:ef:12:34:56 - ip_address: ... | |
| api_timeout integer | Сколько времени слой сокета должен ждать перед истечением времени ожидания для вызовов API. Если это опущено, ничего не будет передано в библиотеку запросов. | |
| auth dictionary | Словарь, содержащий информацию об авторизации, необходимую стратегии плагина авторизации облака. Для плагина по умолчанию «password» он будет содержать «auth_url», «username», «password», «project_name» и любую информацию о доменах (например, «os_user_domain_name» или «os_project_domain_name»), если облако их поддерживает. Для других плагинов этот параметр должен содержать требуемые параметры плагина авторизации. Этот параметр не нужен, если предоставлено имя облака или присутствуют переменные среды OpenStack OS_*. | |
| auth_type string | Имя плагина авторизации, который необходимо использовать. Если облако использует что-то другое, кроме аутентификации по паролю, имя плагина должно быть указано здесь, а содержимое параметра «auth» должно быть соответствующим образом обновлено. | |
| availability_zone - | Игнорируется. Присутствует для обратной совместимости | |
| ca_cert string | Путь к пакету сертификатов CA, который может использоваться в рамках проверки SSL-запросов API. псевдонимы: cacert | |
| client_cert string | Путь к клиенту сертификата для использования в рамках SSL-транзакции. псевдонимы: cert | |
| client_key string | Путь к ключу клиента для использования в рамках SSL-транзакции. псевдонимы: key | |
| cloud raw | Именованное облако или конфигурация облака для работы. Если «cloud» — строка, она ссылается на конфигурацию облака с именем, определенную в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для «auth» и «auth_type». Этот параметр не нужен, если предоставлен «auth» или присутствуют переменные среды OpenStack OS_*. Если «cloud» — словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | |
| device_id - | Идентификатор устройства, использующего этот порт. | |
| device_owner - | Идентификатор сущности, которая использует этот порт. | |
| extra_dhcp_opts - | Дополнительные параметры DHCP, которые необходимо назначить этому порту. Дополнительные параметры поддерживаются со структурой словаря. Пример: extra_dhcp_opts: - opt_name: opt name1 opt_value: value1 - opt_name: ... | |
| fixed_ips - | Желаемые IP-адрес и/или подсеть для этого порта. Подсеть указывается по идентификатору subnet_id, а IP — по ip_address. | |
| interface string |
| Тип URL конечной точки для извлечения из каталога служб. псевдонимы: endpoint_type |
| mac_address - | MAC-адрес этого порта. | |
| name - | Имя, которое нужно присвоить порту. | |
| network - / обязательно | Идентификатор или имя сети, к которой принадлежит этот порт. | |
| no_security_groups boolean |
| Не связывать группу безопасности с этим портом. |
| port_security_enabled boolean добавлено в 2.8 |
| Включить или отключить безопасность порта в сети. |
| region_name string | Имя региона. | |
| security_groups - | Идентификаторы или имена групп безопасности, связанные с портом (строка через запятую или список YAML) | |
| state - |
| Должно ли ресурс быть присутствующим или отсутствующим. |
| timeout integer | Значение по умолчанию: 180 | Сколько времени Ansible должно ждать запрошенного ресурса. |
| validate_certs boolean |
| Выполнять или нет проверку SSL-запросов API. До Ansible 2.3 это имело значение yes. псевдонимы: verify |
| vnic_type - добавлено в 2.8 |
| Тип порта, который должен быть создан |
| wait boolean |
| Должен ли Ansible ждать, пока запрошенный ресурс будет завершён. |
Примечания
Примечание
- Можно использовать стандартные переменные среды OpenStack, такие как
OS_USERNAME, вместо явного указания значений. - Информация об авторизации управляется openstacksdk, что означает, что значения могут быть взяты из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных среды, и, наконец, из явных параметров в задачах. Более подробную информацию можно найти по адресу https://docs.openstack.org/openstacksdk/
Примеры
# Create a port
- os_port:
state: present
auth:
auth_url: https://identity.example.com
username: admin
password: admin
project_name: admin
name: port1
network: foo
# Create a port with a static IP
- os_port:
state: present
auth:
auth_url: https://identity.example.com
username: admin
password: admin
project_name: admin
name: port1
network: foo
fixed_ips:
- ip_address: 10.1.0.21
# Create a port with No security groups
- os_port:
state: present
auth:
auth_url: https://identity.example.com
username: admin
password: admin
project_name: admin
name: port1
network: foo
no_security_groups: True
# Update the existing 'port1' port with multiple security groups (version 1)
- os_port:
state: present
auth:
auth_url: https://identity.example.com
username: admin
password: admin
project_name: admin
name: port1
security_groups: 1496e8c7-4918-482a-9172-f4f00fc4a3a5,057d4bdf-6d4d-472...
# Update the existing 'port1' port with multiple security groups (version 2)
- os_port:
state: present
auth:
auth_url: https://identity.example.com
username: admin
password: admin
project_name: admin
name: port1
security_groups:
- 1496e8c7-4918-482a-9172-f4f00fc4a3a5
- 057d4bdf-6d4d-472...
# Create port of type 'direct'
- os_port:
state: present
auth:
auth_url: https://identity.example.com
username: admin
password: admin
project_name: admin
name: port1
network: foo
vnic_type: direct
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| admin_state_up boolean | успех | Флаг состояния администратора для этого порта. |
| allowed_address_pairs список | успех | Разрешённые пары адресов с этим портом. |
| fixed_ips список | успех | Фиксированный(ые) IP-адрес(ы), связанные с этим портом. |
| id строка | успех | Уникальный UUID. |
| name строка | успех | Имя, присвоенное порту. |
| network_id строка | успех | ID сети, к которой принадлежит этот порт. |
| port_security_enabled boolean | успех | Состояние безопасности порта в сети. |
| security_groups список | успех | Группа(ы) безопасности, связанные с этим портом. |
| status строка | успех | Статус порта. |
| tenant_id строка | успех | ID арендатора, связанный с этим портом. |
| vnic_type строка | успех | Тип созданного порта |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Davide Agnello (@dagnello)
Подсказка
Если вы обнаружите какие-либо проблемы в данной документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 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_module.html