Модуль openstack.cloud.security_group_rule — управление правилами групп безопасности в сети OpenStack (Neutron)
Примечание
Этот модуль входит в коллекцию openstack.cloud (версия 2.5.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install openstack.cloud. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать этот модуль в плейбуке, укажите: openstack.cloud.security_group_rule.
Краткое описание
- Добавление или удаление правил групп безопасности в службе сети OpenStack (Neutron).
- Используйте security_group_rules в openstack.cloud.security_group, чтобы определить набор правил групп безопасности. При создании или удалении нескольких правил групп безопасности это будет намного быстрее, чем использование данного модуля, поскольку последний выполняет отдельные вызовы API сети OpenStack (Neutron) для каждого правила группы безопасности.
Требования
На хосте, выполняющем этот модуль, необходимы следующие компоненты.
- 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 | Путь к пакету сертификатов центра сертификации, который можно использовать для проверки запросов к 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 | Описание правила группы безопасности. |
direction string | Направление, в котором применяется правило группы безопасности. Не все поставщики поддерживают Допустимые значения:
|
ether_type псевдонимы: ethertype string | Допустимы IPv4 или IPv6, а адреса в формате CIDR должны соответствовать правилам входящего или исходящего трафика. Не все поставщики поддерживают IPv6. Допустимые значения:
|
interface псевдонимы: endpoint_type string | Тип URL конечной точки, получаемой из каталога служб. Допустимые значения:
|
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. |
project string | Уникальное имя или идентификатор проекта. |
protocol string | IP-протокол может быть задан строкой, целым числом или значением null. Допустимые строковые или целочисленные значения: Также допустимо любое целое значение в диапазоне Строка any (или целое число 0) означает все IP-протоколы. Актуальный список поддерживаемых строковых значений см. среди констант в neutron_lib.constants. |
region_name string | Имя региона. |
remote_group string | Имя или идентификатор связываемой группы безопасности. Несовместим с remote_ip_prefix. |
remote_ip_prefix string | Исходный IP-адрес или адреса в нотации CIDR. Если в remote_ip_prefix не указана маска подсети, например Несовместим с remote_group. |
sdk_log_level string | Уровень журналирования OpenStackSDK Допустимые значения:
|
sdk_log_path string | Путь к файлу журнала OpenStackSDK. Если значение пустое, журнал не ведётся. |
security_group string / обязательный | Имя или идентификатор группы безопасности. |
state string | Должен ли ресурс присутствовать или отсутствовать. Допустимые значения:
|
timeout integer | Время ожидания ресурса, запрошенного Ansible. По умолчанию: |
validate_certs псевдонимы: verify boolean | Следует ли проверять запросы к API SSL. До Ansible 2.3 значение по умолчанию было Допустимые значения:
|
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/
Примеры
- name: Create a security group rule
openstack.cloud.security_group_rule:
cloud: mordred
security_group: foo
protocol: tcp
port_range_min: 80
port_range_max: 80
remote_ip_prefix: 0.0.0.0/0
- name: Create a security group rule for ping
openstack.cloud.security_group_rule:
cloud: mordred
security_group: foo
protocol: icmp
remote_ip_prefix: 0.0.0.0/0
- name: Another way to create the ping rule
openstack.cloud.security_group_rule:
cloud: mordred
security_group: foo
protocol: icmp
port_range_min: -1
port_range_max: -1
remote_ip_prefix: 0.0.0.0/0
- name: Create a TCP rule covering all ports
openstack.cloud.security_group_rule:
cloud: mordred
security_group: foo
protocol: tcp
port_range_min: 1
port_range_max: 65535
remote_ip_prefix: 0.0.0.0/0
- name: Another way to create the TCP rule above (defaults to all ports)
openstack.cloud.security_group_rule:
cloud: mordred
security_group: foo
protocol: tcp
remote_ip_prefix: 0.0.0.0/0
- name: Create a rule for VRRP with numbered protocol 112
openstack.cloud.security_group_rule:
security_group: loadbalancer_sg
protocol: 112
remote_group: loadbalancer-node_sg
- name: Create a security group rule for a given project
openstack.cloud.security_group_rule:
cloud: mordred
security_group: foo
protocol: icmp
remote_ip_prefix: 0.0.0.0/0
project: myproj
- name: Remove the default created egress rule for IPv4
openstack.cloud.security_group_rule:
cloud: mordred
security_group: foo
protocol: any
remote_ip_prefix: 0.0.0.0/0
Возвращаемые значения
Общие возвращаемые значения описаны здесь, ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
rule словарь | Словарь с описанием правила группы безопасности Возвращается: при успешном выполнении, если state имеет значение |
|
created_at строка |
Метка времени создания ресурса Возвращается: при успешном выполнении |
|
description строка |
Описание ресурса Возвращается: при успешном выполнении |
|
direction строка |
Направление, в котором применяется правило группы безопасности. Возвращается: при успешном выполнении Пример: |
|
ether_type строка |
IPv4 или IPv6 Возвращается: при успешном выполнении |
|
id строка |
Уникальный UUID правила. Возвращается: при успешном выполнении |
|
name строка |
Имя ресурса. Возвращается: при успешном выполнении |
|
port_range_max целое число |
Максимальный номер порта в диапазоне, соответствующем правилу группы безопасности. Возвращается: при успешном выполнении Пример: |
|
port_range_min целое число |
Минимальный номер порта в диапазоне, соответствующем правилу группы безопасности. Возвращается: при успешном выполнении Пример: |
|
project_id строка |
ID проекта, которому принадлежит ресурс. Возвращается: при успешном выполнении |
|
protocol строка |
Протокол, соответствующий правилу группы безопасности. Возвращается: при успешном выполнении Пример: |
|
remote_address_group_id строка |
ID удалённой группы адресов, связанной с этим правилом группы безопасности. Возвращается: при успешном выполнении Пример: |
|
remote_group_id строка |
ID удалённой группы безопасности, связанной с этим правилом группы безопасности. Возвращается: при успешном выполнении Пример: |
|
remote_ip_prefix строка |
Удалённый префикс IP-адреса, связанный с этим правилом группы безопасности. Возвращается: при успешном выполнении Пример: |
|
revision_number целое число |
Номер редакции Возвращается: при успешном выполнении Пример: |
|
security_group_id строка |
ID группы безопасности, связанной с этим правилом группы безопасности. Возвращается: при успешном выполнении |
|
tags список / элементы=строка |
Теги, связанные с ресурсом. Возвращается: при успешном выполнении |
|
tenant_id строка |
ID проекта, которому принадлежит ресурс. Устарело. Возвращается: при успешном выполнении |
|
updated_at строка |
Метка времени последнего обновления правила группы безопасности. Возвращается: при успешном выполнении |
Ссылки на коллекцию
© 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_rule_module.html