elb_target_group - Управление группой целевых серверов для балансировщика нагрузки приложений или сети
Новое в версии 2.4.
Обзор
- Управление группой целевых серверов балансировщика нагрузки AWS Elastic Load Balancer. Подробнее см. http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html или http://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| aws_access_key | Значение по умолчанию: None | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key |
| aws_secret_key | Значение по умолчанию: None | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key |
| deregistration_delay_timeout | Время ожидания балансировщиком нагрузки Elastic Load Balancing перед изменением состояния дерегистрируемого целевого сервера с состояния «отключение» на «не используется». Диапазон 0-3600 секунд. | |
| ec2_url | Значение по умолчанию: None | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковая имеется. |
| health_check_interval | Приблизительное время в секундах между проверками состояния целевых серверов. | |
| health_check_path | Путь для проверки состояния целевых серверов. Путь должен быть определен для настройки проверки состояния. | |
| health_check_port | Значение по умолчанию: Порт, на котором каждый целевой сервер получает трафик от балансировщика нагрузки. | Порт, который балансировщик нагрузки использует при проверке состояния целевых серверов. Может быть установлен на 'traffic-port' для соответствия порту целевого сервера. |
| health_check_protocol |
| Протокол, который балансировщик нагрузки использует при проверке состояния целевых серверов. |
| health_check_timeout | Время в секундах, в течение которого отсутствие ответа от целевого сервера означает неудачную проверку состояния. | |
| healthy_threshold_count | Количество последовательных успешных проверок состояния, необходимых для перевода целевого сервера из состояния «неисправный» в «исправный». | |
| modify_targets | Значение по умолчанию: yes | Определяет, нужно ли изменять существующие целевые сервера в группе для соответствия переданным данным. |
| name обязательно | Имя группы целевых серверов. | |
| port | Порт, на котором целевые серверы получают трафик. Этот порт используется, если вы не укажете переопределения порта при регистрации целевого сервера. Обязательно, если state это present. | |
| profile (добавлено в 1.6) | Значение по умолчанию: None | Использует профиль boto. Работает только с boto >= 2.24.0. |
| protocol |
| Протокол для маршрутизации трафика к целевым серверам. Обязательно, когда state это present. |
| purge_tags |
| Если yes, существующие теги будут удалены из ресурса для точного соответствия параметру tags. Если параметр tags не задан, теги не будут изменены. |
| region | AWS регион. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если она есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
Псевдонимы: aws_region, ec2_region | |
| security_token (добавлено в 1.6) | Значение по умолчанию: None | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token |
| state обязательно |
| Создание или удаление группы целевых серверов. |
| stickiness_enabled |
| Указывает, включены ли «липкие сессии». |
| stickiness_lb_cookie_duration | Период времени в секундах, в течение которого запросы от клиента должны маршрутизироваться к одному и тому же целевому серверу. По истечении этого периода времени, созданный балансировщиком нагрузки cookie считается устаревшим. Диапазон: 1 секунда - 1 неделя (604800 секунд). | |
| stickiness_type | Значение по умолчанию: lb_cookie | Тип «липких сессий». Возможные значения: lb_cookie. |
| successful_response_codes | HTTP-коды, используемые при проверке успешного ответа от целевого сервера. Можно указать несколько значений (например, «200,202») или диапазон значений (например, «200-299»). | |
| tags | Словарь одного или нескольких тегов для назначения группе целевых серверов. | |
| target_type (добавлено в 2.5) |
| Тип целевого сервера, который необходимо указать при регистрации целевых серверов в этой группе. Возможные значения: instance (целевые серверы указываются по идентификатору экземпляра) или ip (целевые серверы указываются по IP-адресу). Обратите внимание, что вы не можете указать целевые серверы для группы целевых серверов, используя одновременно идентификаторы экземпляров и IP-адреса. Если тип целевого сервера ip, укажите IP-адреса из подсетей виртуальной частной сети (VPC) для группы целевых серверов, диапазон RFC 1918 (10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16) и диапазон RFC 6598 (100.64.0.0/10). Вы не можете указать общедоступные IP-адреса. |
| targets | Список целевых серверов для назначения в группу. По умолчанию параметр равен пустому списку. Если параметр 'modify_targets' не установлен, все существующие целевые серверы будут удалены из группы. Список должен содержать идентификатор и параметр порта. Подробнее см. Примеры. | |
| unhealthy_threshold_count | Количество последовательных сбоев проверки состояния, необходимых для признания целевого сервера неисправным. | |
| validate_certs (добавлено в 1.5) |
| При значении «no», сертификаты SSL не будут проверяться для версий boto >= 2.6.0. |
| vpc_id | Идентификатор виртуальной частной сети (VPC). Обязательно, если state это present. |
Примечания
Примечание
- После создания группы целевых серверов можно изменить только проверку состояния.
- Если параметры не заданы в модуле, могут использоваться следующие переменные окружения в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_ACCESS_KEY_IDилиAWS_ACCESS_KEYилиEC2_ACCESS_KEY,AWS_SECRET_ACCESS_KEYилиAWS_SECRET_KEYилиEC2_SECRET_KEY,AWS_SECURITY_TOKENилиEC2_SECURITY_TOKEN,AWS_REGIONилиEC2_REGION - Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания AWS региона, когда это необходимо, но это также можно настроить в файле конфигурации boto
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
# Create a target group with a default health check
- elb_target_group:
name: mytargetgroup
protocol: http
port: 80
vpc_id: vpc-01234567
state: present
# Modify the target group with a custom health check
- elb_target_group:
name: mytargetgroup
protocol: http
port: 80
vpc_id: vpc-01234567
health_check_path: /
successful_response_codes: "200, 250-260"
state: present
# Delete a target group
- elb_target_group:
name: mytargetgroup
state: absent
# Create a target group with instance targets
- elb_target_group:
name: mytargetgroup
protocol: http
port: 81
vpc_id: vpc-01234567
health_check_path: /
successful_response_codes: "200,250-260"
targets:
- Id: i-01234567
Port: 80
- Id: i-98765432
Port: 80
state: present
wait_timeout: 200
wait: True
# Create a target group with IP address targets
- elb_target_group:
name: mytargetgroup
protocol: http
port: 81
vpc_id: vpc-01234567
health_check_path: /
successful_response_codes: "200,250-260"
target_type: ip
targets:
- Id: 10.0.0.10
Port: 80
AvailabilityZone: all
- Id: 10.0.0.20
Port: 80
state: present
wait_timeout: 200
wait: True
Возвращаемые значения
Общие возвращаемые значения задокументированы здесь, ниже приведены поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| deregistration_delay_timeout_seconds int | при наличии состояния | Время, которое Elastic Load Balancing ожидает, прежде чем изменить состояние удаляемого целевого объекта с «ожидания» на «неиспользуемый». Пример: 300 |
| health_check_interval_seconds int | при наличии состояния | Приблизительное время в секундах между проверками состояния отдельных целевых объектов. Пример: 30 |
| health_check_path string | при наличии состояния | Пункт назначения запроса проверки состояния. Пример: /index.html |
| health_check_port string | при наличии состояния | Порт для подключения к целевому объекту. Пример: traffic-port |
| health_check_protocol string | при наличии состояния | Протокол для подключения к целевому объекту. Пример: HTTP |
| health_check_timeout_seconds int | при наличии состояния | Время в секундах, в течение которого отсутствие ответа означает неудачную проверку состояния. Пример: 5 |
| healthy_threshold_count int | при наличии состояния | Число последовательных успешных проверок состояния, необходимых для перевода целевого объекта из состояния «неисправен» в «исправен». Пример: 5 |
| load_balancer_arns list | при наличии состояния | Имена Amazon Resource Names (ARN) балансировщиков нагрузки, которые направляют трафик в эту группу целевых объектов. |
| matcher dict | при наличии состояния | HTTP-коды, используемые при проверке успешного ответа от целевого объекта. Пример: {'http_code': '200'} |
| port int | при наличии состояния | Порт, на котором слушают целевые объекты. Пример: 80 |
| protocol string | при наличии состояния | Протокол, используемый для маршрутизации трафика к целевым объектам. Пример: HTTP |
| stickiness_enabled bool | при наличии состояния | Указывает, включены ли «липкие сессии». Пример: True |
| stickiness_lb_cookie_duration_seconds int | при наличии состояния | Период времени в секундах, в течение которого запросы от клиента должны маршрутизироваться к одному и тому же целевому объекту. Пример: 86400 |
| stickiness_type string | при наличии состояния | Тип «липких сессий». Пример: lb_cookie |
| tags dict | при наличии состояния | Теги, прикрепленные к группе целевых объектов. Пример: { 'Tag': 'Пример' } |
| target_group_arn string | при наличии состояния | Идентификатор Amazon Resource Name (ARN) группы целевых объектов. Пример: arn:aws:elasticloadbalancing:ap-southeast-2:01234567890:targetgroup/mytargetgroup/aabbccddee0044332211 |
| target_group_name string | при наличии состояния | Имя группы целевых объектов. Пример: mytargetgroup |
| unhealthy_threshold_count int | при наличии состояния | Число последовательных сбоев проверки состояния, необходимых для того, чтобы считать целевой объект неисправным. Пример: 2 |
| vpc_id string | при наличии состояния | Идентификатор VPC для целевых объектов. Пример: vpc-0123456 |
Статус
Этот модуль помечен как предварительная версия, что означает, что его интерфейс не гарантируется обратной совместимостью.
Автор
- Rob White (@wimnat)
Подсказка
Если вы заметите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/elb_target_group_module.html