Spec-Zone.ru › Ansible 2.4

elb_application_lb - Управление балансировщиком нагрузки приложений

Новое в версии 2.4.

  • Краткое описание
  • Требования (к хосту, на котором выполняется модуль)
  • Параметры
  • Примеры
  • Значения возврата
  • Примечания
    • Статус

Краткое описание

  • Управление балансировщиком нагрузки приложений AWS. Подробнее см. https://aws.amazon.com/blogs/aws/new-aws-application-load-balancer/.

Требования (к хосту, на котором выполняется модуль)

  • python >= 2.6
  • boto

Параметры

параметр обязательный значение по умолчанию выбор комментарии
access_logs_enabled
нет
  • да
  • нет
Включить или выключить логи доступа. Если значение true, то необходимо установить access_logs_s3_bucket.
access_logs_s3_bucket
нет
Имя S3-бакета для логов доступа. Этот параметр обязателен, если включены логи доступа в Amazon S3. Бакет должен находиться в той же области, что и балансировщик нагрузки, и иметь политику ведра, которая предоставляет Elastic Load Balancing разрешение на запись в ведро.
access_logs_s3_prefix
нет
Префикс для расположения в S3-бакете. Если вы не укажете префикс, логи доступа будут храниться в корневом каталоге бакета.
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
deletion_protection
нет
  • да
  • нет
Указывает, включена ли защита от удаления для ELB.
ec2_url
нет
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где область требуется. Должен быть указан для всех других модулей, если область не используется. Если не задан, используется значение переменной среды EC2_URL, если таковое имеется.
idle_timeout
нет 60
Количество секунд ожидания перед закрытием неактивного соединения.
listeners
нет
Список словарей, содержащих слушателей для подключения к ELB. Подробнее о необходимом словаре см. примеры. Обратите внимание, что ключи слушателей используют CamelCase.
name
да
Имя балансировщика нагрузки. Это имя должно быть уникальным в вашем аккаунте AWS, может иметь максимальную длину 32 символа, должно содержать только буквенно-цифровые символы или дефисы, и не должно начинаться или заканчиваться дефисом.
profile
(добавлен в 1.6)
нет
Использует профиль boto. Работает только с boto >= 2.24.0.
purge_listeners
нет True
  • да
  • нет
Если да, существующие слушатели будут удалены из ELB, чтобы точно соответствовать параметру listeners. Если параметр listeners не задан, слушатели не будут изменены
purge_tags
нет True
  • да
  • нет
Если да, существующие теги будут удалены из ресурса, чтобы точно соответствовать параметру tags. Если параметр tags не задан, теги не будут изменены.
region
нет
AWS область. Если не указана, используется значение переменной среды AWS_REGION или EC2_REGION, если она есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region
scheme
нет internet-facing
  • internet-facing
  • internal
Балансировщик нагрузки — Интернет-ориентированный или внутренний. Схема ELB не может быть изменена после создания.
security_groups
нет
Список имен или идентификаторов групп безопасности, которые необходимо назначить балансировщику нагрузки. Требуется, если state=present.
security_token
(добавлен в 1.6)
нет
AWS STS security token. Если не задан, то используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.
псевдонимы: access_token
state
да
  • present
  • absent
Создать или уничтожить балансировщик нагрузки.
subnets
нет
Список идентификаторов подсетей, которые необходимо подключить к балансировщику нагрузки. Можно указать только одну подсеть на одну зону доступности. Необходимо указать подсети из как минимум двух зон доступности. Требуется, если state=present.
tags
нет
Словарь с одним или несколькими тегами для назначения балансировщику нагрузки.
validate_certs
(добавлен в 1.5)
нет да
  • да
  • нет
Если установлено «нет», сертификаты SSL для boto версий >= 2.6.0 не будут проверяться.

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

# Create an ELB and attach a listener
- elb_application_lb:
    name: myelb
    security_groups:
      - sg-12345678
      - my-sec-group
    subnets:
      - subnet-012345678
      - subnet-abcdef000
    listeners:
      - Protocol: HTTP # Required. The protocol for connections from clients to the load balancer (HTTP or HTTPS) (case-sensitive).
        Port: 80 # Required. The port on which the load balancer is listening.
        # The security policy that defines which ciphers and protocols are supported. The default is the current predefined security policy.
        SslPolicy: ELBSecurityPolicy-2015-05
        Certificates: # The ARN of the certificate (only one certficate ARN should be provided)
          - CertificateArn: arn:aws:iam::12345678987:server-certificate/test.domain.com
        DefaultActions:
          - Type: forward # Required. Only 'forward' is accepted at this time
            TargetGroupName: # Required. The name of the target group
    state: present

# Create an ELB and attach a listener with logging enabled
- elb_application_lb:
    access_logs_enabled: yes
    access_logs_s3_bucket: mybucket
    access_logs_s3_prefix: "/logs"
    name: myelb
    security_groups:
      - sg-12345678
      - my-sec-group
    subnets:
      - subnet-012345678
      - subnet-abcdef000
    listeners:
      - Protocol: HTTP # Required. The protocol for connections from clients to the load balancer (HTTP or HTTPS) (case-sensitive).
        Port: 80 # Required. The port on which the load balancer is listening.
        # The security policy that defines which ciphers and protocols are supported. The default is the current predefined security policy.
        SslPolicy: ELBSecurityPolicy-2015-05
        Certificates: # The ARN of the certificate (only one certficate ARN should be provided)
          - CertificateArn: arn:aws:iam::12345678987:server-certificate/test.domain.com
        DefaultActions:
          - Type: forward # Required. Only 'forward' is accepted at this time
            TargetGroupName: # Required. The name of the target group
    state: present

# Create an ALB with listeners and rules
- elb_application_lb:
    name: test-alb
    subnets:
      - subnet-12345678
      - subnet-87654321
    security_groups:
      - sg-12345678
    scheme: internal
    listeners:
      - Protocol: HTTPS
        Port: 443
        DefaultActions:
          - Type: forward
            TargetGroupName: test-target-group
        Certificates:
          - CertificateArn: arn:aws:iam::12345678987:server-certificate/test.domain.com
        SslPolicy: ELBSecurityPolicy-2015-05
        Rules:
          - Conditions:
              - Field: path-pattern
                Values:
                  - '/test'
            Priority: '1'
            Actions:
              - TargetGroupName: test-target-group
                Type: forward
    state: present

# Remove an ELB
- elb_application_lb:
    name: myelb
    state: absent

Значения возврата

Общие значения возврата описаны здесь Значения возврата, следующие поля уникальны для этого модуля:

название описание возвращаемое значение тип пример
access_logs_s3_bucket
Имя ведра S3 для журналов доступа.
при наличии состояния строка mys3bucket
access_logs_s3_enabled
Указывает, включены ли журналы доступа, хранящиеся в Amazon S3.
при наличии состояния строка True
access_logs_s3_prefix
Префикс для расположения в ведре S3.
при наличии состояния строка /my/logs
availability_zones
Доступные зоны для балансировщика нагрузки.
при наличии состояния список [{'subnet_id': 'subnet-aabbccddff', 'zone_name': 'ap-southeast-2a'}]
canonical_hosted_zone_id
Идентификатор размещенной зоны Amazon Route 53, связанной с балансировщиком нагрузки.
при наличии состояния строка ABCDEF12345678
created_time
Дата и время создания балансировщика нагрузки.
при наличии состояния строка 2015-02-12T02:14:02+00:00
deletion_protection_enabled
Указывает, включена ли защита от удаления.
при наличии состояния строка True
dns_name
Общедоступное имя DNS балансировщика нагрузки.
при наличии состояния строка internal-my-elb-123456789.ap-southeast-2.elb.amazonaws.com
idle_timeout_timeout_seconds
Значение таймаута бездействия в секундах.
при наличии состояния строка 60
ip_address_type
Тип IP-адресов, используемых подсетями для балансировщика нагрузки.
при наличии состояния строка ipv4
listeners
Информация о слушателях.
при наличии состояния сложный тип
contains:
название описание возвращаемое значение тип пример
default_actions
Действия по умолчанию для слушателя.
при наличии состояния строка
listener_arn
Amazon Resource Name (ARN) слушателя.
при наличии состояния строка
protocol
Протокол для подключений от клиентов к балансировщику нагрузки.
при наличии состояния строка HTTPS
ssl_policy
Политика безопасности, определяющая поддерживаемые шифры и протоколы.
при наличии состояния строка
certificates
Сертификат SSL сервера.
при наличии состояния сложный тип
load_balancer_arn
Amazon Resource Name (ARN) балансировщика нагрузки.
при наличии состояния строка
port
Порт, на котором слушает балансировщик нагрузки.
при наличии состояния целое число 80
load_balancer_arn
Amazon Resource Name (ARN) балансировщика нагрузки.
при наличии состояния строка arn:aws:elasticloadbalancing:ap-southeast-2:0123456789:loadbalancer/app/my-elb/001122334455
load_balancer_name
Имя балансировщика нагрузки.
при наличии состояния строка my-elb
scheme
Балансировщик нагрузки — внешний или внутренний.
при наличии состояния строка внутренний
security_groups
Идентификаторы групп безопасности для балансировщика нагрузки.
при наличии состояния список ['sg-0011223344']
state
Состояние балансировщика нагрузки.
при наличии состояния словарь {'code': 'active'}
tags
Теги, прикрепленные к балансировщику нагрузки.
при наличии состояния словарь { 'Tag': 'Пример' }
type
Тип балансировщика нагрузки.
при наличии состояния строка приложения
vpc_id
Идентификатор VPC для балансировщика нагрузки.
при наличии состояния строка vpc-0011223344

Примечания

Примечание

  • Слушатели сопоставляются по порту. Если порт слушателя изменен, будет создан новый слушатель.
  • Правила слушателя сопоставляются по приоритету. Если приоритет правила изменен, будет создано новое правило.
  • Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета 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

Состояние

Этот модуль помечен как превью, что означает, что гарантии обратной совместимости интерфейса нет.

Для помощи в разработке модулей, если вы заинтересованы, ознакомьтесь со статьей Информация о сообществе и вклад, Тестирование Ansible и Разработка модулей.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/elb_application_lb_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API