cs_loadbalancer_rule_member – Управляет членами правил балансировки нагрузки на облаках, основанных на Apache CloudStack.
Новое в версии 2.0.
Обзор
- Добавляет и удаляет членов правил балансировки нагрузки.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- cs >= 0.6.10
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account - | Аккаунт, к которому относится правило. | |
| api_http_method - |
| HTTP-метод, используемый для запроса к API-точке. Если не указан, рассматривается переменная среды CLOUDSTACK_METHOD. В качестве последней опции значение берется из файла конфигурации ini, см. также примечания. Значение по умолчанию get, если не указано. |
| api_key - | Ключ API CloudStack API. Если не указан, рассматривается переменная среды CLOUDSTACK_KEY. В качестве последней опции значение берется из файла конфигурации ini, см. также примечания. | |
| api_region - | По умолчанию: "cloudstack" | Имя раздела в файле конфигурации 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, см. также примечания. | |
| domain - | Домен, к которому относится правило. | |
| ip_address - | Общедоступный IP-адрес, с которого будет осуществляться балансировка сетевого трафика. Необходим только для поиска правила, если name не уникален.Псевдонимы: public_ip | |
| name - / обязательно | Название правила балансировки нагрузки. | |
| project - | Имя проекта, к которому относится правило брандмауэра. | |
| state - |
| Виртуальные машины должны быть присутствовать или отсутствовать в правиле. |
| vms - / обязательно | Список виртуальных машин, которые нужно добавить или удалить из правила. Псевдонимы: vm | |
| 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.
- Этот модуль поддерживает режим проверки.
Примеры
# Add VMs to an existing load balancer
- local_action:
module: cs_loadbalancer_rule_member
name: balance_http
vms:
- web01
- web02
# Remove a VM from an existing load balancer
- local_action:
module: 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
local_action:
module: cs_loadbalancer_rule_member
name: balance_http
vm: "{{ ansible_hostname }}"
state: absent
tasks:
# Perform update
post_tasks:
- name: Add to load balancer
local_action:
module: cs_loadbalancer_rule_member
name: balance_http
vm: "{{ ansible_hostname }}"
state: present
Возвращаемые значения
Общие возвращаемые значения описаны в здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| account строка | успех | Аккаунт, к которому относится правило. Пример: example account |
| algorithm строка | успех | Используемый алгоритм балансировщика нагрузки. Пример: source |
| cidr строка | успех | CIDR для переадресации трафика. |
| 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 словарь | успех | Список тегов ресурсов, связанных с правилом. Пример: [ { "key": "foo", "value": "bar" } ] |
| vms список | успех | Члены правила. Пример: [ "web01", "web02" ] |
| zone строка | успех | Имя зоны, к которой относится правило. Пример: ch-gva-2 |
Состояние
- Данный модуль гарантированно не будет содержать несовместимых изменений интерфейса в будущем. [stableinterface]
- Данный модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.7/modules/cs_loadbalancer_rule_member_module.html