ngine_io.cloudstack.cs_loadbalancer_rule – Управляет правилами балансировщика нагрузки в облаках на основе Apache CloudStack.
Примечание
Этот плагин является частью коллекции ngine_io.cloudstack (версия 1.1.0).
Для его установки используйте: ansible-galaxy collection install ngine_io.cloudstack.
Для использования в playbook, укажите: ngine_io.cloudstack.cs_loadbalancer_rule.
Новое в версии 0.1.0: плагина ngine_io.cloudstack
Обзор
- Добавление, обновление и удаление правил балансировщика нагрузки.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
- cs >= 0.9.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account строка | Аккаунт, к которому относится правило. | |
| algorithm строка |
| Алгоритм балансировщика нагрузки Требуется при использовании state=present. |
| 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 строка | Секретный ключ 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, если не указано. | |
| cidr строка | CIDR (полная запись), используемый для правила брандмауэра, если необходимо. | |
| description строка | Описание правила балансировщика нагрузки. | |
| domain строка | Домен, к которому относится правило. | |
| ip_address строка / обязательно | Общедоступный IP-адрес, с которого будет осуществляться балансировка сетевого трафика. псевдонимы: public_ip | |
| name строка / обязательно | Имя правила балансировщика нагрузки. | |
| network строка | Имя сети. | |
| open_firewall логическое значение |
| Нужно ли создавать правило брандмауэра для публичного порта при создании нового правила. Используйте cs_firewall для управления правилами брандмауэра. |
| poll_async логическое значение |
| Ожидать завершения асинхронных задач. |
| private_port целое число | Приватный порт приватного IP-адреса/виртуальной машины, на который будет направляться сетевой трафик. Требуется при использовании state=present. Не может быть изменён после создания правила из-за ограничений API. | |
| project строка | Имя проекта, к которому относится IP-адрес балансировщика. | |
| protocol строка | Протокол, используемый балансировщиком нагрузки. | |
| public_port целое число | Общедоступный порт, с которого будет осуществляться балансировка сетевого трафика. Требуется при использовании state=present. Не может быть изменён после создания правила из-за ограничений API. | |
| state строка |
| Состояние правила. |
| tags список / элементы=словарь | Список тегов. Теги представлены в виде списка словарей с ключами key и value. Для удаления всех тегов установите пустой список, например, tags: []. псевдонимы: tag | |
| vpc строка | Имя VPC. | |
| zone строка | Имя зоны, в которой должно быть создано правило. Если не указано, используется зона по умолчанию. |
Примечания
Примечание
- 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 load balancer rule
ngine_io.cloudstack.cs_loadbalancer_rule:
name: balance_http
public_ip: 1.2.3.4
algorithm: leastconn
public_port: 80
private_port: 8080
- name: Update algorithm of an existing load balancer rule
ngine_io.cloudstack.cs_loadbalancer_rule:
name: balance_http
public_ip: 1.2.3.4
algorithm: roundrobin
public_port: 80
private_port: 8080
- name: Delete a load balancer rule
ngine_io.cloudstack.cs_loadbalancer_rule:
name: balance_http
public_ip: 1.2.3.4
state: absent
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращено | Описание |
|---|---|---|
| account строка | успешно | Аккаунт, к которому относится правило. Пример: example account |
| algorithm строка | успешно | Используемый алгоритм балансировщика нагрузки. Пример: source |
| cidr строка | успешно | CIDR, с которого будет перенаправляться трафик. Пример: 0.0.0.0/0 |
| description строка | успешно | Описание правила. Пример: правило балансировщика нагрузки HTTP |
| domain строка | успешно | Домен, к которому относится правило. Пример: example domain |
| id строка | успешно | UUID правила. Пример: a6f7a5fc-43f8-11e5-a151-feff819cdc9f |
| name строка | успешно | Имя правила. Пример: http-lb |
| private_port целое число | успешно | Приватный IP-адрес. Пример: 80 |
| project строка | успешно | Имя проекта, к которому относится правило. Пример: Производство |
| protocol строка | успешно | Протокол правила. Пример: tcp |
| public_ip строка | успешно | Публичный IP-адрес. Пример: 1.2.3.4 |
| public_port целое число | успешно | Публичный порт. Пример: 80 |
| state строка | успешно | Состояние правила. Пример: Добавить |
| tags список / элементы=строка | успешно | Список тегов ресурса, связанных с правилом. Пример: [ { "ключ": "foo", "значение": "bar" } ] |
| zone строка | успешно | Название зоны, к которой относится правило. Пример: ch-gva-2 |
Авторы
- Darren Worrall (@dazworrall)
- 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_loadbalancer_rule_module.html