Spec-Zone.ru › Ansible 2.4

ec2_elb_lb — Создаёт или удаляет Amazon ELB.

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

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

Обзор

  • Возвращает информацию о балансировщике нагрузки.
  • Будет помечен как изменённый только при изменении состояния.

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

  • python >= 2.6
  • boto

Параметры

параметр обязателен по умолчанию варианты комментарии
access_logs
(добавлено в 2.0)
нет None
Ассоциативный массив настроек журналов доступа (см. пример)
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
connection_draining_timeout
(добавлено в 1.8)
нет
Ожидание указанного таймаута, позволяя соединениям завершиться, прежде чем завершить экземпляр.
cross_az_load_balancing
(добавлено в 1.8)
нет нет
  • да
  • нет
Распределение нагрузки по всем настроенным зонам доступности.
ec2_url
нет
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где регион обязателен. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковая имеется.
health_check
нет None
Ассоциативный массив настроек проверки работоспособности (см. пример).
idle_timeout
(добавлено в 2.0)
нет
Соединения ELB от клиентов и к серверам тайм-аут после этого количества времени.
instance_ids
(добавлено в 2.1)
нет
Список идентификаторов экземпляров для подключения к этому балансировщику.
listeners
нет
Список портов/протоколов для прослушивания этим балансировщиком (см. пример).
name
да
Название ELB.
profile
(добавлено в 1.6)
нет
Использует профиль boto. Работает только с boto >= 2.24.0.
purge_instance_ids
(добавлено в 2.1)
нет
Очистить существующие идентификаторы экземпляров на ELB, которые не найдены в instance_ids.
purge_listeners
нет True
Очистить существующие слушатели на ELB, которые не найдены в listeners.
purge_subnets
(добавлено в 1.7)
нет
Очистить существующие подсети на ELB, которые не найдены в subnets.
purge_zones
нет
Очистить существующие зоны доступности на ELB, которые не найдены в zones.
region
нет
AWS-регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковая имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region
scheme
(добавлено в 1.7)
нет internet-facing
  • internal
  • internet-facing
Схема для использования при создании ELB. Для частного ELB, видимого для VPC, используйте 'internal'. Если вы хотите обновить схему с другим значением, ELB будет уничтожен и пересоздан. Для обновления схемы необходимо использовать параметр wait.
security_group_ids
(добавлено в 1.6)
нет None
Список идентификаторов групп безопасности, применяемых к elb.
security_group_names
(добавлено в 2.0)
нет None
Список имён групп безопасности, применяемых к elb.
security_token
(добавлено в 1.6)
нет
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.
псевдонимы: access_token
state
да
  • present
  • absent
Создать или удалить ELB.
stickiness
(добавлено в 2.0)
нет
Ассоциативный массив настроек политики stickiness. Политика будет применена ко всем слушателям (см. пример).
subnets
(добавлено в 1.7)
нет None
Список подсетей VPC для использования при создании ELB. Zones должны быть пустыми, если используется этот параметр.
tags
(добавлено в 2.1)
нет
Ассоциативный массив тегов. Для удаления всех тегов, укажите пустой словарь.
validate_certs
(добавлено в 1.5)
нет да
  • да
  • нет
При установке "нет", сертификаты SSL не будут проверены для версий boto >= 2.6.0.
wait
(добавлено в 2.1)
нет
  • да
  • нет
При указании Ansible проверит статус балансировщика, чтобы убедиться, что он был успешно удалён из AWS.
wait_timeout
(добавлено в 2.1)
нет 60
Используется совместно с wait. Количество секунд ожидания завершения elb. Максимально разрешено 600 секунд (10 минут).
zones
нет
Список зон доступности для включения в этом ELB.

Примеры

# Note: None of these examples set aws_access_key, aws_secret_key, or region.
# It is assumed that their matching environment variables are set.

# Basic provisioning example (non-VPC)

- local_action:
    module: ec2_elb_lb
    name: "test-please-delete"
    state: present
    zones:
      - us-east-1a
      - us-east-1d
    listeners:
      - protocol: http # options are http, https, ssl, tcp
        load_balancer_port: 80
        instance_port: 80
        proxy_protocol: True
      - protocol: https
        load_balancer_port: 443
        instance_protocol: http # optional, defaults to value of protocol setting
        instance_port: 80
        # ssl certificate required for https or ssl
        ssl_certificate_id: "arn:aws:iam::123456789012:server-certificate/company/servercerts/ProdServerCert"

# Internal ELB example

- local_action:
    module: ec2_elb_lb
    name: "test-vpc"
    scheme: internal
    state: present
    instance_ids:
      - i-abcd1234
    purge_instance_ids: true
    subnets:
      - subnet-abcd1234
      - subnet-1a2b3c4d
    listeners:
      - protocol: http # options are http, https, ssl, tcp
        load_balancer_port: 80
        instance_port: 80

# Configure a health check and the access logs
- local_action:
    module: ec2_elb_lb
    name: "test-please-delete"
    state: present
    zones:
      - us-east-1d
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80
    health_check:
        ping_protocol: http # options are http, https, ssl, tcp
        ping_port: 80
        ping_path: "/index.html" # not required for tcp or ssl
        response_timeout: 5 # seconds
        interval: 30 # seconds
        unhealthy_threshold: 2
        healthy_threshold: 10
    access_logs:
        interval: 5 # minutes (defaults to 60)
        s3_location: "my-bucket" # This value is required if access_logs is set
        s3_prefix: "logs"

# Ensure ELB is gone
- local_action:
    module: ec2_elb_lb
    name: "test-please-delete"
    state: absent

# Ensure ELB is gone and wait for check (for default timeout)
- local_action:
    module: ec2_elb_lb
    name: "test-please-delete"
    state: absent
    wait: yes

# Ensure ELB is gone and wait for check with timeout value
- local_action:
    module: ec2_elb_lb
    name: "test-please-delete"
    state: absent
    wait: yes
    wait_timeout: 600

# Normally, this module will purge any listeners that exist on the ELB
# but aren't specified in the listeners parameter. If purge_listeners is
# false it leaves them alone
- local_action:
    module: ec2_elb_lb
    name: "test-please-delete"
    state: present
    zones:
      - us-east-1a
      - us-east-1d
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80
    purge_listeners: no

# Normally, this module will leave availability zones that are enabled
# on the ELB alone. If purge_zones is true, then any extraneous zones
# will be removed
- local_action:
    module: ec2_elb_lb
    name: "test-please-delete"
    state: present
    zones:
      - us-east-1a
      - us-east-1d
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80
    purge_zones: yes

# Creates a ELB and assigns a list of subnets to it.
- local_action:
    module: ec2_elb_lb
    state: present
    name: 'New ELB'
    security_group_ids: 'sg-123456, sg-67890'
    region: us-west-2
    subnets: 'subnet-123456,subnet-67890'
    purge_subnets: yes
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80

# Create an ELB with connection draining, increased idle timeout and cross availability
# zone load balancing
- local_action:
    module: ec2_elb_lb
    name: "New ELB"
    state: present
    connection_draining_timeout: 60
    idle_timeout: 300
    cross_az_load_balancing: "yes"
    region: us-east-1
    zones:
      - us-east-1a
      - us-east-1d
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80

# Create an ELB with load balancer stickiness enabled
- local_action:
    module: ec2_elb_lb
    name: "New ELB"
    state: present
    region: us-east-1
    zones:
      - us-east-1a
      - us-east-1d
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80
    stickiness:
      type: loadbalancer
      enabled: yes
      expiration: 300

# Create an ELB with application stickiness enabled
- local_action:
    module: ec2_elb_lb
    name: "New ELB"
    state: present
    region: us-east-1
    zones:
      - us-east-1a
      - us-east-1d
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80
    stickiness:
      type: application
      enabled: yes
      cookie: SESSIONID

# Create an ELB and add tags
- local_action:
    module: ec2_elb_lb
    name: "New ELB"
    state: present
    region: us-east-1
    zones:
      - us-east-1a
      - us-east-1d
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80
    tags:
      Name: "New ELB"
      stack: "production"
      client: "Bob"

# Delete all tags from an ELB
- local_action:
    module: ec2_elb_lb
    name: "New ELB"
    state: present
    region: us-east-1
    zones:
      - us-east-1a
      - us-east-1d
    listeners:
      - protocol: http
        load_balancer_port: 80
        instance_port: 80
    tags: {}

Примечания

Примечание

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

Статус

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

Для получения помощи в разработке модулей, если у вас есть желание, прочитайте Community Information & Contributing, Testing Ansible и Developing Modules.

© 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/ec2_elb_lb_module.html

Spec-Zone.ru

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