Spec-Zone.ru › Ansible 2.10

amazon.aws.ec2_elb_lb – Создаёт, обновляет или удаляет Amazon ELB.

Примечание

Этот плагин является частью коллекции amazon.aws (версия 1.3.0).

Для его установки используйте: ansible-galaxy collection install amazon.aws

Для использования в книге задач укажите: amazon.aws.ec2_elb_lb

Новое в версии 1.0.0: of amazon.aws

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры

Описание

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

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 2.6
  • boto

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
access_logs
словарь
Ассоциативный массив настроек журналов доступа (см. примеры).
aws_access_key
строка
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.
Если задан параметр profile, этот параметр игнорируется.
Одновременное указание параметров aws_access_key и profile устарело и параметры будут сделаны взаимоисключающими после 2022-06-01.

псевдонимы: ec2_access_key, access_key
aws_ca_bundle
путь
Расположение файла сертификатов доверенных центров сертификации (CA Bundle) для проверки SSL-сертификатов.
Используется только для модулей, основанных на boto3.
Примечание: CA Bundle считывается на стороне модуля и может потребоваться явное копирование его с контроллера, если он не запускается локально.
aws_config
словарь
Словарь для модификации конфигурации botocore.
Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.
Для модулей boto используется только ключ 'user_agent'. См. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto для получения дополнительной информации о конфигурации boto.
aws_secret_key
строка
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.
Если задан параметр profile, этот параметр игнорируется.
Одновременное указание параметров aws_secret_key и profile устарело и параметры будут сделаны взаимоисключающими после 2022-06-01.

псевдонимы: ec2_secret_key, secret_key
connection_draining_timeout
целое число
Ожидание указанного таймаута, позволяющего соединениям завершиться перед завершением работы экземпляра.
cross_az_load_balancing
булево
    Варианты:
  • нет
  • да
Распределять нагрузку по всем настроенным зонам доступности.
По умолчанию false
debug_botocore_endpoint_logs
булево
    Варианты:
  • нет ←
  • да
Используйте логирования botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, выводим множество в ключ resource_actions в результатах задачи. Используйте обратный вызов aws_resource_action, чтобы вывести полный список, выполненный во время книги задач. Переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована.
ec2_url
строка
URL для подключения к EC2 или вашей облачной системе Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть.

псевдонимы: aws_endpoint_url, endpoint_url
health_check
словарь
Ассоциативный массив настроек проверки работоспособности (см. примеры).
idle_timeout
целое число
Соединения ELB от клиентов и к серверам отключаются по истечении этого времени.
instance_ids
список / элементы=строка
Список идентификаторов экземпляров, которые нужно подключить к этому ELB.
listeners
список / элементы=словарь
Список портов/протоколов для прослушивания ELB (см. примеры).
name
строка / обязательно
Название ELB.
profile
строка
Использует профиль boto. Работает только с boto >= 2.24.0.
Использование profile переопределяет aws_access_key, aws_secret_key и security_token, и поддержка их одновременного указания с profile устарела.
aws_access_key, aws_secret_key и security_token будут сделаны взаимоисключающими с profile после 2022-06-01.

псевдонимы: aws_profile
purge_instance_ids
булево
    Варианты:
  • нет ←
  • да
Очистить существующие идентификаторы экземпляров на ELB, которые не найдены в instance_ids.
purge_listeners
булево
    Варианты:
  • нет
  • да ←
Очистить существующие слушатели на ELB, которые не найдены в слушателях.
purge_subnets
булево
    Варианты:
  • нет ←
  • да
Очистить существующие подсети на ELB, которые не найдены в подсетях.
purge_zones
булево
    Варианты:
  • нет ←
  • да
Очистить существующие зоны доступности на ELB, которые не найдены в зонах.
region
строка
Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если она есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

псевдонимы: aws_region, ec2_region
scheme
строка
    Варианты:
  • внутренняя
  • обращенная к интернету ←
Схема для использования при создании ELB. Для частного ELB, видимого в VPC, используйте internal
Если вы решите обновить схему другим значением, ELB будет удален и пересоздан. Для обновления схемы необходимо использовать параметр wait.
security_group_ids
список / элементы=строка
Список идентификаторов групп безопасности, которые нужно применить к ELB.
security_group_names
список / элементы=строка
Список имён групп безопасности, которые нужно применить к ELB.
security_token
строка
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.
Если задан параметр profile, этот параметр игнорируется.
Одновременное указание параметров security_token и profile устарело и параметры будут сделаны взаимоисключающими после 2022-06-01.

псевдонимы: aws_security_token, access_token
state
строка / обязательно
    Варианты:
  • отсутствует
  • наличие
Создать или удалить ELB.
stickiness
словарь
Ассоциативный массив настроек политики привязки. Политика будет применена ко всем слушателям (см. примеры).
subnets
список / элементы=строка
Список подсетей VPC для использования при создании ELB. Зоны должны быть пустыми, если используется этот параметр.
tags
словарь
Ассоциативный массив тегов. Для удаления всех тегов, укажите пустой словарь ({}).
validate_certs
булево
    Варианты:
  • нет
  • да ←
Если установлено значение no, SSL-сертификаты не будут проверяться для версий boto >= 2.6.0.
wait
булево
    Варианты:
  • нет ←
  • да
При указании Ansible проверит статус балансировщика нагрузки, чтобы убедиться, что он был успешно удалён из AWS.
wait_timeout
целое число
Значение по умолчанию:
60
Используется совместно с wait. Количество секунд ожидания завершения работы ELB.
Допускается максимальное значение 600 секунд (10 минут).
zones
список / элементы=строка
Список зон доступности для включения в этот ELB.

Примечания

Примечание

  • Если параметры не установлены в модуле, следующие переменные среды могут быть использованы в порядке убывания приоритета AWS_URL или EC2_URL, AWS_PROFILE или AWS_DEFAULT_PROFILE, 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, AWS_CA_BUNDLE
  • Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION обычно могут использоваться для указания региона AWS, когда это необходимо, но это также можно настроить в файле конфигурации boto

Примеры

# 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)

- amazon.aws.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

- amazon.aws.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
- amazon.aws.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
- amazon.aws.ec2_elb_lb:
    name: "test-please-delete"
    state: absent

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

# Ensure ELB is gone and wait for check with timeout value
- amazon.aws.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
- amazon.aws.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
- amazon.aws.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.
- amazon.aws.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
- amazon.aws.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
- amazon.aws.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
- amazon.aws.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
- amazon.aws.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
- amazon.aws.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: {}

Авторы

  • Jim Dalton (@jsdalton)

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

Spec-Zone.ru

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