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 - | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key | |
| aws_secret_key - | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key | |
| deregistration_delay_timeout - | Время ожидания Elastic Load Balancing перед изменением состояния удаляемого целевого сервера с «draining» на «unused». Диапазон значений: 0-3600 секунд. | |
| ec2_url - | 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 - | По умолчанию: "да" | Изменять ли существующие целевые серверы в группе в соответствии с параметрами, переданными в модуль. |
| name - / обязательно | Имя группы целевых серверов. | |
| port - | Порт, на котором целевые серверы получают трафик. Этот порт используется, если не указан порт перезаписи при регистрации целевого сервера. Требуется, если state - present. | |
| profile - добавлен в 1.6 | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| protocol - |
| Протокол для маршрутизации трафика к целевым серверам. Требуется, когда state - present. |
| purge_tags boolean |
| Если «да», существующие теги будут удалены из ресурса, чтобы точно соответствовать параметру 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 | AWS STS токен безопасности. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token | |
| state - / обязательно |
| Создание или удаление группы целевых серверов. |
| stickiness_enabled boolean |
| Указывает, включены ли «sticky sessions». |
| stickiness_lb_cookie_duration - | Период времени в секундах, в течение которого запросы от клиента должны маршрутизироваться к тому же целевому серверу. По истечении этого периода, генерируемый балансировщиком нагрузки cookie считается устаревшим. Диапазон: от 1 секунды до 1 недели (604800 секунд). | |
| stickiness_type - | По умолчанию: "lb_cookie" | Тип «sticky sessions». Возможные значения: lb_cookie. |
| successful_response_codes - | HTTP коды, используемые при проверке успешного ответа от целевого сервера. Можно указать несколько значений (например, "200,202") или диапазон значений (например, "200-299"). | |
| tags - | Словарь одного или нескольких тегов для назначения целевой группе. | |
| target_type - добавлен в 2.5 |
| Тип целевого сервера, который необходимо указать при регистрации целевых серверов в этой группе целевых серверов. Возможные значения: instance (целевые серверы заданы по ID экземпляра) или ip (целевые серверы заданы по IP-адресу). Обратите внимание, что вы не можете указать целевые серверы для группы целевых серверов, используя как ID экземпляров, так и 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», все существующие целевые серверы будут удалены из группы. Список должен содержать параметры Id и Port. Подробнее см. примеры. | |
| unhealthy_threshold_count - | Количество последовательных сбоев проверки работоспособности, необходимых для перевода целевого сервера в состояние неработоспособности. | |
| validate_certs boolean добавлен в 1.5 |
| При установке в «нет» SSL сертификаты не будут проверены для версий boto >= 2.6.0. |
| vpc_id - | Идентификатор виртуальной частной сети (VPC). Требуется, когда state - present. | |
| wait boolean добавлен в 2.4 |
| Ожидать ли создания целевой группы. |
| wait_timeout - добавлен в 2.4 | По умолчанию: 200 | Время ожидания создания целевой группы. |
Примечания
Примечание
- После создания целевой группы можно изменить только проверку работоспособности с помощью последующих вызовов
- Если параметры не установлены в модуле, можно использовать следующие переменные среды в порядке убывания приоритета
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), если учетные данные не предоставлены. См. https://boto.readthedocs.io/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 целое число | при состоянии present | Время ожидания Elastic Load Balancing перед изменением состояния дерегистрируемого целевого объекта из состояния «вывод» в состояние «неиспользуемый». Пример: 300 |
| health_check_interval_seconds целое число | при состоянии present | Приблизительное время в секундах между проверками работоспособности отдельных целевых объектов. Пример: 30 |
| health_check_path строка | при состоянии present | Место назначения запроса проверки работоспособности. Пример: /index.html |
| health_check_port строка | при состоянии present | Порт для подключения к целевому объекту. Пример: traffic-port |
| health_check_protocol строка | при состоянии present | Протокол для подключения к целевому объекту. Пример: HTTP |
| health_check_timeout_seconds целое число | при состоянии present | Время в секундах, по истечении которого отсутствие ответа означает неудачную проверку работоспособности. Пример: 5 |
| healthy_threshold_count целое число | при состоянии present | Количество последовательных успешных проверок работоспособности, необходимых для признания неработающего целевого объекта работоспособным. Пример: 5 |
| load_balancer_arns список | при состоянии present | Имена Amazon Resource Name (ARN) балансировщиков нагрузки, которые направляют трафик в эту целевую группу. |
| matcher словарь | при состоянии present | HTTP-коды для проверки успешного ответа от целевого объекта. Пример: {'http_code': '200'} |
| port целое число | при состоянии present | Порт, на котором слушают целевые объекты. Пример: 80 |
| protocol строка | при состоянии present | Протокол для маршрутизации трафика к целевым объектам. Пример: HTTP |
| stickiness_enabled булево значение | при состоянии present | Указывает, включены ли «липкие» сессии. Пример: True |
| stickiness_lb_cookie_duration_seconds целое число | при состоянии present | Период времени в секундах, в течение которого запросы от клиента должны направляться к одному и тому же целевому объекту. Пример: 86400 |
| stickiness_type строка | при состоянии present | Тип «липких» сессий. Пример: lb_cookie |
| tags словарь | при состоянии present | Теги, прикрепленные к целевой группе. Пример: { 'Tag': 'Пример' } |
| target_group_arn строка | при состоянии present | Идентификатор Amazon Resource Name (ARN) целевой группы. Пример: arn:aws:elasticloadbalancing:ap-southeast-2:01234567890:targetgroup/mytargetgroup/aabbccddee0044332211 |
| target_group_name строка | при состоянии present | Имя целевой группы. Пример: mytargetgroup |
| unhealthy_threshold_count целое число | при состоянии present | Количество последовательных сбоев проверки работоспособности, необходимых для признания целевого объекта неработоспособным. Пример: 2 |
| vpc_id строка | при состоянии present | Идентификатор VPC для целевых объектов. Пример: vpc-0123456 |
Статус
- Этот модуль не гарантирует обратную совместимость. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.7/modules/elb_target_group_module.html