ngine_io.cloudstack.cs_loadbalancer_rule_member – Управляет членами правил балансировки нагрузки на облаках на основе Apache CloudStack.
Примечание
Этот плагин является частью коллекции ngine_io.cloudstack (версия 2.0.0).
Для его установки используйте: ansible-galaxy collection install ngine_io.cloudstack.
Для использования в playbook укажите: ngine_io.cloudstack.cs_loadbalancer_rule_member.
Добавлено в версии 0.1.0: of ngine_io.cloudstack
Обзор
- Добавление и удаление членов правил балансировки нагрузки.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- cs >= 0.9.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account строка | Аккаунт, к которому относится правило. | |
| api_http_method строка |
| HTTP-метод, используемый для запроса к API-точке. Если не указано, рассматривается переменная окружения CLOUDSTACK_METHOD. |
| api_key строка / обязательно | Ключ API CloudStack API. Если не указано, рассматривается переменная окружения CLOUDSTACK_KEY. | |
| api_secret строка / обязательно | Секретный ключ CloudStack API. Если не задан, рассматривается переменная окружения CLOUDSTACK_SECRET. | |
| api_timeout целое число | По умолчанию: 10 | Таймаут HTTP в секундах. Если не указано, рассматривается переменная окружения CLOUDSTACK_TIMEOUT. |
| api_url строка / обязательно | URL CloudStack API, например, https://cloud.example.com/client/api. Если не указано, рассматривается переменная окружения CLOUDSTACK_ENDPOINT. | |
| api_verify_ssl_cert строка | Проверять сертификат CA. Если не указано, рассматривается переменная окружения CLOUDSTACK_VERIFY. | |
| domain строка | Домен, к которому относится правило. | |
| ip_address строка | Общедоступный IP-адрес, с которого будет происходить балансировка сетевого трафика. Необходимо только для поиска правила, если имя name не уникально. Псевдонимы: public_ip | |
| name строка / обязательно | Имя правила балансировки нагрузки. | |
| poll_async логическое |
| Проверять асинхронные задачи до завершения. |
| project строка | Имя проекта, к которому относится правило брандмауэра. | |
| state строка |
| Виртуальные машины должны быть присутствующими или отсутствующими в правиле. |
| vms список / элементы=строка / обязательно | Список виртуальных машин для назначения или удаления из правила. Псевдонимы: vm | |
| zone строка | Имя зоны, в которой должно находиться правило. Требуется, когда поставщик балансировки нагрузки — ElasticLoadBalancerVm |
Примечания
Примечание
- Подробное руководство по модулям cloudstack можно найти в Руководстве по облаку CloudStack.
- Этот модуль поддерживает режим проверки.
Примеры
- name: Add VMs to an existing load balancer
ngine_io.cloudstack.cs_loadbalancer_rule_member:
name: balance_http
vms:
- web01
- web02
- name: Remove a VM from an existing load balancer
ngine_io.cloudstack.cs_loadbalancer_rule_member:
name: balance_http
vms:
- web01
- web02
state: absent
# Rolling upgrade of hosts
- hosts: webservers
serial: 1
pre_tasks:
- name: Remove from load balancer
ngine_io.cloudstack.cs_loadbalancer_rule_member:
name: balance_http
vm: "{{ ansible_hostname }}"
state: absent
tasks:
# Perform update
post_tasks:
- name: Add to load balancer
ngine_io.cloudstack.cs_loadbalancer_rule_member:
name: balance_http
vm: "{{ ansible_hostname }}"
state: present
Возвращаемые значения
Общие возвращаемые значения описаны в здесь, ниже перечислены поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| account строка | успешно | Аккаунт, к которому относится правило. Пример: примерный аккаунт |
| algorithm строка | успешно | Используемый алгоритм балансировки нагрузки. Пример: source |
| cidr строка | успешно | CIDR для переадресации трафика. Пример: 0.0.0.0/0 |
| description строка | успешно | Описание правила. Пример: правило балансировки нагрузки http |
| 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 список / элементы=строка | успешно | Список меток ресурсов, связанных с правилом. Пример: [ { "key": "foo", "value": "bar" } ] |
| vms список / элементы=строка | успешно | Члены правила. Пример: [ "web01", "web02" ] |
| zone строка | успешно | Имя зоны, к которой относится правило. Пример: ch-gva-2 |
Авторы
- Darren Worrall (@dazworrall)
- René Moser (@resmo)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/ngine_io/cloudstack/cs_loadbalancer_rule_member_module.html