os_security_group_rule - Добавление/удаление правила из существующей группы безопасности
Новое в версии 2.0.
Обзор
- Добавление или удаление правила из существующей группы безопасности
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- openstacksdk
- python >= 2.7
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_timeout | Сколько времени должна ждать сокетная связь, прежде чем истечёт время ожидания для вызовов API. Если это значение опущено, к библиотеке запросов ничего не будет передано. | |
| auth | Словарь, содержащий информацию об авторизации, необходимую стратегии плагина авторизации облака. Для стандартного плагина password он должен содержать auth_url, username, password, project_name и любую информацию о домене, если облако её поддерживает. Для других плагинов этот параметр должен содержать все необходимые параметры плагина авторизации. Этот параметр не нужен, если указано имя облака или присутствуют переменные окружения OpenStack OS_*. | |
| auth_type | Имя плагина авторизации, который нужно использовать. Если облако использует что-то кроме парольной аутентификации, здесь должно быть указано имя плагина, а содержимое параметра auth должно быть соответствующим образом обновлено. | |
| availability_zone | Игнорируется. Присутствует для обратной совместимости. | |
| cacert | Путь к пакету сертификатов CA, который может использоваться при проверке запросов API SSL. | |
| cert | Путь к клиенту сертификату для использования в рамках транзакции SSL. | |
| cloud | Имя облака или конфигурация облака для работы. Если cloud — строка, она ссылается на конфигурацию облака, определённую в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если указан auth или присутствуют переменные окружения OpenStack OS_*. Если cloud — словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | |
| direction |
| Направление, в котором применяется правило группы безопасности. Не все поставщики поддерживают egress. |
| ethertype |
| Должно быть IPv4 или IPv6, а адреса, представленные в CIDR, должны соответствовать правилам ingress или egress. Не все поставщики поддерживают IPv6. |
| interface (добавлен в 2.3) |
| Тип URL конечной точки для извлечения из каталога служб. псевдонимы: endpoint_type |
| key | Путь к ключу клиента для использования в рамках транзакции SSL. | |
| port_range_max | Конечный порт | |
| port_range_min | Начальный порт | |
| protocol |
| IP протоколы TCP UDP ICMP 112 (VRRP) |
| region_name | Имя региона. | |
| remote_group | Имя или идентификатор группы безопасности для связи (исключительно с remote_ip_prefix) | |
| remote_ip_prefix | Адрес(ы) источника IP в CIDR-нотации (исключительно с remote_group) | |
| security_group обязательно | Имя или идентификатор группы безопасности | |
| state |
| Должен ли ресурс присутствовать или отсутствовать. |
| timeout | По умолчанию: 180 | Сколько времени Ansible должен ждать запрошенного ресурса. |
| verify bool |
| Нужно ли проверять запросы API SSL. До версии 2.3 по умолчанию было True. псевдонимы: validate_certs |
| wait bool |
| Должен ли Ansible ждать завершения запрошенного ресурса. |
Примечания
Примечание
- Можно использовать стандартные переменные окружения OpenStack, такие как
OS_USERNAME, вместо явного указания значений. - Информация об авторизации управляется os-client-config, что означает, что значения могут браться из yaml-файла конфигурации в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных окружения, и наконец, из явных параметров в play. Более подробную информацию можно найти по адресу http://docs.openstack.org/developer/os-client-config
Примеры
# Create a security group rule
- os_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
# Create a security group rule for ping
- os_security_group_rule:
cloud: mordred
security_group: foo
protocol: icmp
remote_ip_prefix: 0.0.0.0/0
# Another way to create the ping rule
- os_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
# Create a TCP rule covering all ports
- os_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
# Another way to create the TCP rule above (defaults to all ports)
- os_security_group_rule:
cloud: mordred
security_group: foo
protocol: tcp
remote_ip_prefix: 0.0.0.0/0
# Create a rule for VRRP with numbered protocol 112
- os_security_group_rule:
security_group: loadbalancer_sg
protocol: 112
remote_group: loadbalancer-node_sg
Возвращаемые значения
Общие значения возврата описаны в документации, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| direction строка | state == present | Направление, в котором применяется правило группы безопасности. Пример: egress |
| ethertype строка | state == present | Одно из значений IPv4 или IPv6. Пример: IPv4 |
| id строка | state == present | Уникальный UUID правила. |
| port_range_max целое число | state == present | Максимальное число порта в диапазоне, которому соответствует правило группы безопасности. Пример: 8000 |
| port_range_min целое число | state == present | Минимальное число порта в диапазоне, которому соответствует правило группы безопасности. Пример: 8000 |
| protocol строка | state == present | Протокол, которому соответствует правило группы безопасности. Пример: tcp |
| remote_ip_prefix строка | state == present | Префикс удаленного IP-адреса, который нужно связать с этим правилом группы безопасности. Пример: 0.0.0.0/0 |
| security_group_id строка | state == present | Идентификатор группы безопасности, который нужно связать с этим правилом группы безопасности. |
Статус
Этот модуль помечен как preview, что означает, что его интерфейс не гарантирует обратную совместимость.
Техническое обслуживание
Этот модуль помечен как community, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.
Список других модулей, также поддерживаемых сообществом Ansible, см. в документации.
Автор
- Benno Joy (@bennojoy)
Подсказка
Если вы заметили какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/os_security_group_rule_module.html