Spec-Zone.ru › Ansible

Модуль openstack.cloud.security_group — управление группами безопасности Neutron в облаке OpenStack.

Примечание

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

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

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

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

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

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

  • Добавляет группы безопасности Neutron в облако OpenStack или удаляет их из него.

Требования

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

  • python >= 3.6
  • openstacksdk >= 1.0.0

Параметры

Параметр

Комментарии

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.

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

Подробное описание назначения группы безопасности.

interface

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

string

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

Варианты:

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

name

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

Имя группы безопасности. Имена групп безопасности в этом модуле должны быть уникальными.

project

string

Уникальное имя или идентификатор проекта.

region_name

string

Имя региона.

sdk_log_level

string

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

Варианты:

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

sdk_log_path

string

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

security_group_rules

list / элементы=dictionary

Список правил группы безопасности.

Если security_group_rules не определен, Neutron может создать группу безопасности с набором правил по умолчанию.

Правила группы безопасности, перечисленные в security_group_rules, но отсутствующие в этой группе безопасности, будут созданы.

Если security_group_rules не задан, существующие правила группы безопасности, не перечисленные в security_group_rules, будут удалены.

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

description

string

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

direction

string

Направление применения правила группы безопасности.

Не все поставщики поддерживают egress.

Варианты:

  • "egress"
  • "ingress" ← (по умолчанию)

ether_type

string

Должен быть IPv4 или IPv6; адреса, представленные в формате CIDR, должны соответствовать правилам входящего или исходящего трафика. Не все поставщики поддерживают IPv6.

Варианты:

  • "IPv4" ← (по умолчанию)
  • "IPv6"

port_range_max

integer

Максимальный номер порта в диапазоне, на который распространяется правило группы безопасности.

Если протокол — TCP, UDP, DCCP, SCTP или UDP-Lite, это значение должно быть больше или равно значению атрибута port_range_min.

Если протокол — ICMP, это значение должно быть кодом ICMP.

port_range_min

integer

Минимальный номер порта в диапазоне, на который распространяется правило группы безопасности.

Если протокол — TCP, UDP, DCCP, SCTP или UDP-Lite, это значение должно быть меньше или равно значению атрибута port_range_max.

Если протокол — ICMP, это значение должно быть типом ICMP.

protocol

string

IP-протокол можно указать строкой, целым числом или значением null.

Допустимые строковые или целочисленные значения: any или 0, ah или 51, dccp или 33, egp или 8, esp или 50, gre или 47, icmp или 1, icmpv6 или 58, igmp или 2, ipip или 4, ipv6-encap или 41, ipv6-frag или 44, ipv6-icmp или 58, ipv6-nonxt или 59, ipv6-opts или 60, ipv6-route или 43, ospf или 89, pgm или 113, rsvp или 46, sctp или 132, tcp или 6, udp или 17, udplite или 136, vrrp или 112.

Кроме того, допустимо любое целое значение в диапазоне [0-255].

Строка any (или целое число 0) означает все IP-протоколы.

Актуальный список поддерживаемых строковых значений см. среди констант в neutron_lib.constants.

remote_group

string

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

Не может использоваться одновременно с remote_ip_prefix.

remote_ip_prefix

string

Исходный IP-адрес (адреса) в нотации CIDR.

Если в remote_ip_prefix отсутствует маска подсети, например /32, при обновлении модуль завершится с ошибкой OpenStack Security group rule already exists..

Не может использоваться одновременно с remote_group.

state

string

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

Варианты:

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

stateful

boolean

Должен ли ресурс быть с отслеживанием состояния или без него.

Варианты:

  • false
  • true

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/

Примеры

- name: Create a security group
  openstack.cloud.security_group:
    cloud: mordred
    state: present
    name: foo
    description: security group for foo servers

- name: Create a stateless security group
  openstack.cloud.security_group:
    cloud: mordred
    state: present
    stateful: false
    name: foo
    description: stateless security group for foo servers

- name: Update the existing 'foo' security group description
  openstack.cloud.security_group:
    cloud: mordred
    state: present
    name: foo
    description: updated description for the foo security group

- name: Create a security group for a given project
  openstack.cloud.security_group:
    cloud: mordred
    state: present
    name: foo
    project: myproj

- name: Create (or update) a security group with security group rules
  openstack.cloud.security_group:
    cloud: mordred
    state: present
    name: foo
    security_group_rules:
      - ether_type: IPv6
        direction: egress
      - ether_type: IPv4
        direction: egress

- name: Create (or update) security group without security group rules
  openstack.cloud.security_group:
    cloud: mordred
    state: present
    name: foo
    security_group_rules: []

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

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

Ключ

Описание

security_group

dictionary

Словарь с описанием группы безопасности.

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

created_at

string

Время создания группы безопасности

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

Пример: "yyyy-mm-dd hh:mm:ss"

description

string

Описание группы безопасности

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

Пример: "My security group"

id

string

Идентификатор группы безопасности

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

Пример: "d90e55ba-23bd-4d97-b722-8cb6fb485d69"

name

string

Имя группы безопасности.

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

Пример: "my-sg"

project_id

string

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

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

Пример: "25d24fc8-d019-4a34-9fff-0a09fde6a567"

revision_number

integer

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

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

security_group_rules

list / элементы=string

Список правил группы безопасности

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

Пример: [{"description": null, "direction": "ingress", "ethertype": "IPv4", "id": "d90e55ba-23bd-4d97-b722-8cb6fb485d69", "port_range_max": null, "port_range_min": null, "protocol": null, "remote_group_id": "0431c9c5-1660-42e0-8a00-134bec7f03e2", "remote_ip_prefix": null, "security_group_id": "0431c9c5-1660-42e0-8a00-134bec7f03e2", "tenant_id": "bbfe8c41dd034a07bebd592bf03b4b0c"}, {"description": null, "direction": "egress", "ethertype": "IPv4", "id": "aecff4d4-9ce9-489c-86a3-803aedec65f7", "port_range_max": null, "port_range_min": null, "protocol": null, "remote_group_id": null, "remote_ip_prefix": null, "security_group_id": "0431c9c5-1660-42e0-8a00-134bec7f03e2", "tenant_id": "bbfe8c41dd034a07bebd592bf03b4b0c"}]

stateful

boolean

Указывает, является ли группа безопасности ресурсом с отслеживанием состояния или без него.

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

tags

list / элементы=string

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

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

tenant_id

string

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

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

Пример: "25d24fc8-d019-4a34-9fff-0a09fde6a567"

updated_at

string

Время обновления группы безопасности

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

Пример: "yyyy-mm-dd hh:mm:ss"

Авторы

  • Специальная группа 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/security_group_module.html

Spec-Zone.ru

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