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 перед изменением состояния дерегистрируемого целевого сервера с «ожидания» на «неиспользуемый». Диапазон: 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 bool |
| Если да, существующие метки будут удалены из ресурса, чтобы точно соответствовать параметру метки. Если параметр меток не задан, метки не будут изменены. |
| 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 security token. Если не задан, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | |
| state обязательно |
| Создать или удалить группу целевых серверов. |
| stickiness_enabled bool |
| Указывает, включены ли устойчивые сессии. |
| 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», все существующие целевые серверы будут удалены из группы. Список должен содержать параметры Id и Port. Подробнее см. в примерах. | |
| unhealthy_threshold_count | Количество последовательных сбоев проверки состояния, необходимых для того, чтобы считать целевой сервер неработоспособным. | |
| validate_certs bool (добавлен в 1.5) |
| При установке в значение «нет» сертификаты 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 |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратной совместимости интерфейса.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. Дополнительную информацию см. в поддержке и техническом обслуживании модулей.
Список других модулей, также поддерживаемых сообществом Ansible, см. здесь.
Автор
- 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.6/modules/elb_target_group_module.html