Spec-Zone.ru › Ansible

Модуль openstack.cloud.port — добавление, обновление и удаление портов в облаке OpenStack.

Примечание

Этот модуль входит в коллекцию openstack.cloud (версия 2.5.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните команду ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install openstack.cloud. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: openstack.cloud.port.

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Добавление, обновление и удаление портов в облаке OpenStack.

Требования

На хосте, выполняющем этот модуль, необходимы следующие компоненты.

  • python >= 3.6
  • openstacksdk >= 1.0.0

Параметры

Параметр

Комментарии

allowed_address_pairs

list / elements=dictionary

Список разрешённых пар адресов. Разрешённые пары адресов задаются в виде словарей. Например: allowed_address_pairs: - ip_address: 10.1.0.12 mac_address: ab:cd:ef:12:34:56 - ip_address: …

При обновлении порт изменится, если указаны не все вложенные параметры, например если задан ip_address, но не задан mac_address.

ip_address

string

IP-адрес.

mac_address

string

MAC-адрес.

api_timeout

integer

Время ожидания на уровне сокета перед истечением времени ожидания вызовов API. Если параметр не указан, в библиотеку requests ничего не передаётся.

auth

dictionary

Словарь с данными аутентификации, необходимыми для выбранной стратегии плагина аутентификации облака. Для плагина password, используемого по умолчанию, здесь указываются auth_url, username, password, project_name и данные доменов (например, user_domain_name или project_domain_name), если облако их поддерживает. Для других плагинов параметр должен содержать все значения, необходимые соответствующему плагину аутентификации. Этот параметр не требуется, если указано именованное облако или заданы переменные окружения OpenStack OS_*.

auth_type

string

Имя используемого плагина аутентификации. Если в облаке используется не парольная аутентификация, укажите здесь имя плагина и соответствующим образом измените содержимое параметра auth.

binding_profile

dictionary

Словарь профиля привязки, с которым следует создать порт.

binding_vnic_type

псевдонимы: vnic_type

string

Тип создаваемого порта

Варианты:

  • "normal"
  • "direct"
  • "direct-physical"
  • "macvtap"
  • "baremetal"
  • "virtio-forwarder"

ca_cert

псевдонимы: cacert

string

Путь к пакету сертификатов CA, который можно использовать для проверки запросов к API по SSL.

client_cert

псевдонимы: cert

string

Путь к сертификату клиента для использования при SSL-обмене.

client_key

псевдонимы: key

string

Путь к ключу клиента для использования при SSL-обмене.

cloud

any

Имя облака или конфигурация облака, с которым нужно работать. Если cloud — строка, она обозначает именованную конфигурацию облака, заданную в файле OpenStack clouds.yaml. Параметр задаёт значения по умолчанию для auth и auth_type. Он не требуется, если указан auth или заданы переменные окружения OpenStack OS_*. Если cloud — словарь, он содержит полную конфигурацию облака, аналогичную разделу в clouds.yaml.

description

string

Описание порта.

device_id

string

Идентификатор устройства, использующего этот порт.

device_owner

string

Идентификатор сущности, использующей этот порт.

dns_domain

string

Домен DNS порта (только при включённой интеграции с DNS)

dns_name

string

Имя DNS порта (только при включённой интеграции с DNS)

extra_dhcp_opts

list / elements=dictionary

Дополнительные параметры DHCP, назначаемые этому порту. Дополнительные параметры задаются в виде словарей. Обратите внимание: параметры нельзя удалить, можно только обновить. Например: extra_dhcp_opts: - ip_version: 4 opt_name: bootfile-name opt_value: pxelinux.0 - opt_name: …

При обновлении порт изменится, если указаны не все вложенные параметры, например если задан opt_name, но не задан ip_version.

ip_version

integer / обязательный

Версия IP, для которой предназначен этот параметр DHCP.

opt_name

string / обязательный

Имя устанавливаемого параметра DHCP.

opt_value

string / обязательный

Значение устанавливаемого параметра DHCP.

fixed_ips

list / elements=dictionary

Требуемый IP-адрес и/или подсеть для этого порта. Подсеть задаётся параметром subnet_id, а IP-адрес — параметром ip_address.

При обновлении порт изменится, если указаны не все вложенные параметры, например если задан ip_address, но не задан subnet_id.

ip_address

string / обязательный

Фиксированный IP-адрес, который требуется выделить.

subnet_id

string

Подсеть, к которой нужно подключить IP-адрес.

interface

псевдонимы: endpoint_type

string

Тип URL конечной точки, получаемой из каталога служб.

Варианты:

  • "admin"
  • "internal"
  • "public" ← (по умолчанию)

is_admin_state_up

псевдонимы: admin_state_up

boolean

Задаёт административное состояние.

Варианты:

  • false
  • true

is_port_security_enabled

псевдонимы: port_security_enabled

boolean

Включить или отключить защиту порта в сети.

Варианты:

  • false
  • true

mac_address

string

MAC-адрес этого порта.

name

string / обязательный

Имя, присваиваемое порту.

Этот атрибут порта нельзя обновить.

network

string

Идентификатор или имя сети, к которой относится этот порт.

Обязателен при создании нового порта.

При создании порта необходимо указать имя.

Этот атрибут порта нельзя обновить.

no_security_groups

boolean

Не связывать этот порт с группой безопасности.

Устарел. Вместо no_security_groups: true используйте security_groups: [].

Варианты:

  • false ← (по умолчанию)
  • true

region_name

string

Имя региона.

sdk_log_level

string

Уровень журналирования OpenStackSDK

Варианты:

  • "INFO" ← (по умолчанию)
  • "DEBUG"

sdk_log_path

string

Путь к файлу журнала OpenStackSDK. Если значение пустое, журнал не записывается.

security_groups

list / elements=string

Идентификаторы или имена групп безопасности, связанных с портом.

state

string

Должен ли ресурс присутствовать или отсутствовать.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

timeout

integer

Как долго Ansible должен ожидать запрошенный ресурс.

По умолчанию: 180

validate_certs

псевдонимы: verify

boolean

Следует ли проверять запросы к API по SSL.

До Ansible 2.3 значением по умолчанию было true.

Варианты:

  • false
  • true

wait

boolean

Должен ли Ansible ожидать завершения создания запрошенного ресурса.

Варианты:

  • false
  • true ← (по умолчанию)

Примечания

Примечание

  • Вместо явного указания значений можно использовать стандартные переменные окружения 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
- openstack.cloud.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
- openstack.cloud.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
- openstack.cloud.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)
- openstack.cloud.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)
- openstack.cloud.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'
- openstack.cloud.port:
    state: present
    auth:
      auth_url: https://identity.example.com
      username: admin
      password: admin
      project_name: admin
    name: port1
    network: foo
    binding_vnic_type: direct

# Create a port with binding profile
- openstack.cloud.port:
    state: present
    auth:
      auth_url: https://identity.example.com
      username: admin
      password: admin
      project_name: admin
    name: port1
    network: foo
    binding_profile:
      pci_slot: "0000:03:11.1"
      physical_network: "provider"

Возвращаемые значения

Общие возвращаемые значения задокументированы здесь, ниже перечислены поля, уникальные для этого модуля:

Ключ

Описание

port

dictionary

Словарь с описанием порта.

Возвращается: при успешном выполнении, если state имеет значение present.

allowed_address_pairs

list / elements=string

Разрешённые пары адресов.

Возвращается: при успешном выполнении

Пример: []

binding_host_id

string

Идентификатор хоста, на котором выделен порт. В некоторых случаях разные реализации могут выполняться на разных хостах.

Возвращается: при успешном выполнении

Пример: "b4bd682d-234a-4091-aa5b-4b025a6a7759"

binding_profile

dictionary

Словарь, позволяющий приложению, выполняемому на указанном хосте, передавать подключаемому модулю и получать от него информацию, относящуюся к порту vif.

Возвращается: при успешном выполнении

Пример: {}

binding_vif_details

dictionary

Словарь, позволяющий приложению передавать информацию о функциях, предоставляемых API Networking.

Возвращается: при успешном выполнении

binding_vif_type

dictionary

Тип VIF для порта.

Возвращается: при успешном выполнении

binding_vnic_type

string

Тип виртуальной сетевой карты (vNIC), привязанной к порту neutron.

Возвращается: при успешном выполнении

Пример: "normal"

created_at

string

Временная метка создания порта.

Возвращается: при успешном выполнении

Пример: "2022-02-03T13:28:25Z"

data_plane_status

string

Статус нижележащей плоскости передачи данных порта.

Возвращается: при успешном выполнении

description

string

Описание порта.

Возвращается: при успешном выполнении

device_id

string

Идентификатор устройства этого порта.

Возвращается: при успешном выполнении

Пример: "b4bd682d-234a-4091-aa5b-4b025a6a7759"

device_owner

string

Владелец устройства этого порта, например network:dhcp.

Возвращается: при успешном выполнении

Пример: "network:router_interface"

device_profile

string

Профиль устройства этого порта, соответствующий профилям устройств Cyborg: https://docs.openstack.org/api-ref/accelerator/v2/index.html# device-profiles.

Возвращается: при успешном выполнении

dns_assignment

list / elements=string

Назначение DNS для порта.

Возвращается: при успешном выполнении

dns_domain

string

Домен DNS, назначенный порту.

Возвращается: при успешном выполнении

dns_name

string

Имя DNS для порта.

Возвращается: при успешном выполнении

extra_dhcp_opts

list / elements=string

Набор из нуля или более дополнительных пар параметров DHCP. Пара параметров состоит из значения и имени параметра.

Возвращается: при успешном выполнении

Пример: []

fixed_ips

list / elements=string

IP-адреса порта. Включают IP-адрес и идентификатор подсети.

Возвращается: при успешном выполнении

id

string

Идентификатор порта.

Возвращается: при успешном выполнении

Пример: "3ec25c97-7052-4ab8-a8ba-92faf84148de"

ip_allocation

string

Параметр ip_allocation указывает, используется ли для портов отложенное, немедленное или отсутствующее выделение IP-адресов.

Возвращается: при успешном выполнении

is_admin_state_up

boolean

Административное состояние порта: включено True или выключено False.

Возвращается: при успешном выполнении

Пример: true

is_port_security_enabled

boolean

Состояние безопасности порта: включена True или отключена False.

Возвращается: при успешном выполнении

Пример: false

mac_address

string

MAC-адрес разрешённой пары адресов.

Возвращается: при успешном выполнении

Пример: "00:00:5E:00:53:42"

name

string

Имя порта.

Возвращается: при успешном выполнении

Пример: "port_name"

network_id

string

Идентификатор подключённой сети.

Возвращается: при успешном выполнении

Пример: "dd1ede4f-3952-4131-aab6-3b8902268c7d"

numa_affinity_policy

string

Политика привязки к NUMA, заданная для этого порта.

Возвращается: при успешном выполнении

Пример: "required"

project_id

string

Идентификатор проекта, которому принадлежит сеть.

Возвращается: при успешном выполнении

Пример: "aa1ede4f-3952-4131-aab6-3b8902268c7d"

propagate_uplink_status

boolean

Следует ли передавать состояние восходящего канала порта.

Возвращается: при успешном выполнении

Пример: false

qos_network_policy_id

string

Идентификатор политики QoS, назначенной сети, к которой привязан порт.

Возвращается: при успешном выполнении

Пример: "1e4f3958-c0c9-4dec-82fa-ed2dc1c5cb34"

qos_policy_id

string

Идентификатор политики QoS, назначенной порту.

Возвращается: при успешном выполнении

Пример: "b20bb47f-5d6d-45a6-8fe7-2c1b44f0db73"

resource_request

string

Параметр port-resource-request предоставляет Placement сведения о запрашиваемых портом ресурсах Placement (например, минимальной пропускной способности) и характеристиках (например, типе vnic и физической сети), предназначенных для Nova и Placement.

Возвращается: при успешном выполнении

revision_number

integer

Номер редакции ресурса.

Возвращается: при успешном выполнении

Пример: 0

security_group_ids

list / elements=string

Идентификаторы подключённых групп безопасности.

Возвращается: при успешном выполнении

status

string

Статус порта. Значение — ACTIVE или DOWN.

Возвращается: при успешном выполнении

Пример: "ACTIVE"

tags

list / elements=string

Список тегов ресурса.

Возвращается: при успешном выполнении

Пример: []

tenant_id

string

То же, что и project_id. Устарело.

Возвращается: при успешном выполнении

Пример: "51fce036d7984ba6af4f6c849f65ef00"

trunk_details

dictionary

Транк, связанный с этим родительским портом, и его подчинённые порты. Присутствует для родительских портов транка, если загружено расширение trunk-details.

Возвращается: при успешном выполнении

updated_at

string

Временная метка последнего обновления порта.

Возвращается: при успешном выполнении

Пример: "2022-02-03T13:28:25Z"

Авторы

  • Специальная группа OpenStack Ansible

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)

© 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/collections/openstack/cloud/port_module.html

Spec-Zone.ru

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