ngine_io.cloudstack.cs_network_acl_rule – Управляет правилами списка управления доступом к сети (ACL) в облаках на основе Apache CloudStack.
Примечание
Этот плагин является частью коллекции ngine_io.cloudstack (версия 1.1.0).
Для его установки используйте: ansible-galaxy collection install ngine_io.cloudstack.
Для использования в книге задач укажите: ngine_io.cloudstack.cs_network_acl_rule.
Новое в версии 0.1.0: плагина ngine_io.cloudstack
Описание
- Добавление, обновление и удаление правил списка управления доступом к сети.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- cs >= 0.9.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account строка | Аккаунт, к которому относится VPC. | |
| action_policy строка |
| Политика действий правила. псевдонимы: action |
| api_http_method строка |
| HTTP-метод, используемый для запроса к API-точке. Если не задано, используется переменная среды CLOUDSTACK_METHOD. В качестве последнего варианта значение берется из файла конфигурации ini, также см. примечания. Значение по умолчанию - get, если не указано. |
| api_key строка | Ключ API CloudStack API. Если не задано, используется переменная среды CLOUDSTACK_KEY. В качестве последнего варианта значение берется из файла конфигурации ini, также см. примечания. | |
| api_region строка | По умолчанию: "cloudstack" | Имя раздела ini в файле cloustack.ini.Если не задано, используется переменная среды CLOUDSTACK_REGION. |
| api_secret строка | Секретный ключ API CloudStack API. Если не задано, используется переменная среды CLOUDSTACK_SECRET. В качестве последнего варианта значение берется из файла конфигурации ini, также см. примечания. | |
| api_timeout целое число | Таймаут HTTP в секундах. Если не задано, используется переменная среды CLOUDSTACK_TIMEOUT. В качестве последнего варианта значение берется из файла конфигурации ini, также см. примечания. Значение по умолчанию - 10 секунд, если не указано. | |
| api_url строка | URL CloudStack API, например, https://cloud.example.com/client/api. Если не задано, используется переменная среды CLOUDSTACK_ENDPOINT. В качестве последнего варианта значение берется из файла конфигурации ini, также см. примечания. | |
| api_verify_ssl_cert строка | Файл сертификата CA. Если не задано, используется переменная среды CLOUDSTACK_VERIFY. В качестве последнего варианта значение берется из файла конфигурации ini, также см. примечания. Значение по умолчанию - null если не указано. | |
| cidrs список / элементы=строка | По умолчанию: ["0.0.0.0/0"] | CIDR правил. псевдонимы: cidr |
| domain строка | Домен, к которому относится VPC. | |
| end_port целое число | Конечный порт для данного правила. Учитывается, если protocol=tcp или protocol=udp. Если не указано, равно start_port. | |
| icmp_code целое число | Код ошибки для данного сообщения icmp. Учитывается, если protocol=icmp. | |
| icmp_type целое число | Тип icmp-сообщения, которое отправляется. Учитывается, если protocol=icmp. | |
| network_acl строка / обязательно | Имя списка управления доступом к сети. псевдонимы: acl | |
| poll_async булево |
| Ожидать асинхронные задачи до завершения. |
| project строка | Имя проекта, к которому относится VPC. | |
| protocol строка |
| Протокол правила |
| protocol_number целое число | Номер протокола от 1 до 256, необходимый, если protocol=by_number. | |
| rule_position целое число / обязательно | Положение правила списка управления доступом к сети. псевдонимы: number | |
| start_port целое число | Начальный порт для данного правила. Учитывается, если protocol=tcp или protocol=udp. псевдонимы: port | |
| state строка |
| Состояние правила списка управления доступом к сети. |
| tags список / элементы=словарь | Список тегов. Теги представляют собой список словарей, содержащих ключи key и value. Если нужно удалить все теги, установите пустой список, например, tags: []. псевдонимы: tag | |
| traffic_type строка |
| Тип трафика правила. псевдонимы: type |
| vpc строка / обязательно | VPC, к которому относится список управления доступом к сети. | |
| zone строка | Имя зоны, к которой относится VPC. Если не задано, используется зона по умолчанию. |
Примечания
Примечание
- Ansible использует метод конфигурации библиотеки
cs, если учетные данные не предоставлены аргументамиapi_url,api_key,api_secret. Конфигурация считывается из нескольких источников в следующем порядке. Переменные средыCLOUDSTACK_ENDPOINT,CLOUDSTACK_KEY,CLOUDSTACK_SECRETиCLOUDSTACK_METHOD.CLOUDSTACK_TIMEOUT. Переменная средыCLOUDSTACK_CONFIG, указывающая на файл конфигурации.ini. Файлcloudstack.iniв текущей рабочей директории. Файл.cloudstack.iniв домашнем каталоге пользователя. Дополнительно, несколько учетных данных и конечных точек могут быть указаны с использованием разделов ini вcloudstack.ini. Используйте аргументapi_regionдля выбора имени раздела, по умолчанию используется разделcloudstack. Для получения дополнительной информации см. https://github.com/exoscale/cs. - Подробное руководство по модулям cloudstack можно найти в руководстве по облаку CloudStack.
- Этот модуль поддерживает режим проверки.
Примеры
- name: create a network ACL rule, allow port 80 ingress
ngine_io.cloudstack.cs_network_acl_rule:
network_acl: web
rule_position: 1
vpc: my vpc
traffic_type: ingress
action_policy: allow
port: 80
cidr: 0.0.0.0/0
- name: create a network ACL rule, deny port range 8000-9000 ingress for 10.20.0.0/16 and 10.22.0.0/16
ngine_io.cloudstack.cs_network_acl_rule:
network_acl: web
rule_position: 1
vpc: my vpc
traffic_type: ingress
action_policy: deny
start_port: 8000
end_port: 9000
cidrs:
- 10.20.0.0/16
- 10.22.0.0/16
- name: remove a network ACL rule
ngine_io.cloudstack.cs_network_acl_rule:
network_acl: web
rule_position: 1
vpc: my vpc
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| account строка | успех | Аккаунт, к которому относится правило сетевого ACL. Пример: example account |
| action_policy строка | успех | Политика действий правила сетевого ACL. Пример: deny |
| cidr строка | успех | CIDR правила сетевого ACL. Пример: 0.0.0.0/0 |
| cidrs список / элементы=строка | успех | CIDR правила сетевого ACL. Пример: ['0.0.0.0/0'] |
| domain строка | успех | Домен, к которому относится правило сетевого ACL. Пример: example domain |
| end_port целое число | успех | Конечный порт правила сетевого ACL. Пример: 80 |
| icmp_code целое число | успех | Код ICMP правила сетевого ACL. Пример: 8 |
| icmp_type целое число | успех | Тип ICMP правила сетевого ACL. |
| network_acl строка | успех | Имя сетевого ACL. Пример: customer acl |
| project строка | успех | Имя проекта, к которому относится правило сетевого ACL. Пример: Production |
| protocol строка | успех | Протокол правила сетевого ACL. Пример: tcp |
| protocol_number целое число | успех | Номер протокола, если протокол задан номером. Пример: 8 |
| rule_position целое число | успех | Позиция правила сетевого ACL. Пример: 1 |
| start_port целое число | успех | Начальный порт правила сетевого ACL. Пример: 80 |
| state строка | успех | Состояние правила сетевого ACL. Пример: Активный |
| tags список / элементы=строка | успех | Список тегов ресурса, связанных с правилом сетевого ACL. Пример: [ { "key": "foo", "value": "bar" } ] |
| traffic_type строка | успех | Тип трафика правила сетевого ACL. Пример: ingress |
| vpc строка | успех | VPC сетевого ACL. Пример: customer vpc |
| zone строка | успех | Зона, к которой относится VPC. Пример: ch-gva-2 |
Авторы
- René Moser (@resmo)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/ngine_io/cloudstack/cs_network_acl_rule_module.html