Модуль community.aws.autoscaling_launch_config – Создание или удаление конфигураций запуска AWS Autoscaling
Примечание
Этот модуль является частью коллекции community.aws (версия 8.0.0).
У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.aws. Для использования этого модуля потребуются дополнительные требования. Подробнее см. Требования.
Для использования в playbook укажите: community.aws.autoscaling_launch_config.
Новая функция в community.aws 1.0.0
Обзор
- Может создавать или удалять конфигурации запуска AWS Autoscaling.
- Работает с модулем community.aws.autoscaling_group для управления группами Autoscaling.
- До версии 5.0.0 этот модуль назывался
community.aws.ec2_lc. Способ использования не изменился.
Псевдонимы: ec2_lc
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 3.6
- boto3 >= 1.26.0
- botocore >= 1.29.0
Параметры
Параметр | Комментарии |
|---|---|
access_key псевдонимы: aws_access_key_id, aws_access_key, ec2_access_key строка | ID ключа доступа AWS. Дополнительную информацию об маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также могут быть использованы переменные окружения Параметры aws_access_key и profile взаимоисключающие. Псевдоним aws_access_key_id был добавлен в релизе 5.1.0 для соответствия SDK botocore AWS. Псевдоним ec2_access_key устарел и будет удален в релизе после 2024-12-01. Поддержка переменной окружения |
assign_public_ip булево | Используется для групп автоматического масштабирования, запускающих экземпляры в Amazon Virtual Private Cloud. Указывает, следует ли назначать публичный IP-адрес каждому запущенному экземпляру в Amazon VPC. Выбор:
|
aws_ca_bundle путь | Расположение пакета CA для проверки сертификатов SSL. Также может быть использована переменная окружения |
aws_config словарь | Словарь для изменения конфигурации botocore. Параметры можно найти в документации AWS https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. |
classic_link_vpc_id строка | ID ClassicLink-активированной VPC |
classic_link_vpc_security_groups список / элементы=строка | Список идентификаторов групп безопасности, которые нужно ассоциировать с экземплярами ClassicLink VPC. |
debug_botocore_endpoint_logs булево | Используйте Также может быть использована переменная окружения Выбор:
|
ebs_optimized булево | Указывает, оптимизирован ли экземпляр для ввода/вывода EBS (true) или нет (false). Выбор:
|
endpoint_url псевдонимы: ec2_url, aws_endpoint_url, s3_url строка | URL для подключения вместо стандартных конечных точек AWS. Хотя это можно использовать для подключения к другим совместимым с AWS службам, коллекции amazon.aws и community.aws протестированы только с AWS. Также могут быть использованы переменные окружения Псевдонимы ec2_url и s3_url устарели и будут удалены в релизе после 2024-12-01. Поддержка переменной окружения |
image_id строка | Уникальный идентификатор AMI, который будет использоваться для группы. |
instance_id строка | Идентификатор работающего экземпляра, который нужно использовать в качестве основы для конфигурации запуска. Может использоваться вместо image_id и instance_type. |
instance_monitoring булево | Указывает, запускаются ли экземпляры с подробным мониторингом. Выбор:
|
instance_profile_name строка | Имя или Amazon Resource Name (ARN) профиля экземпляра, связанного с ролью IAM для экземпляров. |
instance_type строка | Тип экземпляра, который нужно использовать для экземпляра. Требуется при создании новой конфигурации запуска. |
kernel_id строка | Идентификатор ядра для экземпляра EC2. |
key_name строка | Имя SSH-ключа, которое нужно использовать для доступа к управляемым экземплярам. |
name строка / обязательный | Уникальное имя для конфигурации. |
placement_tenancy string | Определяет, выполняется ли экземпляр на оборудовании с однопользовательской арендой. Если не указано, AWS по умолчанию будет использовать Выборы:
|
profile aliases: aws_profile string | Используемый именованный профиль AWS для аутентификации. Дополнительную информацию об именованных профилях см. в документации AWS https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html. Также может быть использована переменная окружения Параметр profile несовместим с параметрами aws_access_key, aws_secret_key и security_token. |
ramdisk_id string | Идентификатор диска RAM для экземпляров. |
region aliases: aws_region, ec2_region string | AWS регион для использования. Для глобальных служб, таких как IAM, Route53 и CloudFront, region игнорируется. Также могут быть использованы переменные окружения Дополнительную информацию см. в документации Amazon AWS http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region. Псевдоним Поддержка переменной окружения |
secret_key aliases: aws_secret_access_key, aws_secret_key, ec2_secret_key string | Секретный ключ доступа AWS. Дополнительную информацию об маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также могут быть использованы переменные окружения Параметры secret_key и profile несовместимы. Псевдоним aws_secret_access_key добавлен в релизе 5.1.0 для согласованности с AWS botocore SDK. Псевдоним ec2_secret_key устарел и будет удален в релизе после 2024-12-01. Поддержка переменной окружения |
security_groups list / elements=string | Список групп безопасности для применения к экземплярам. Можно указать либо имена или ID групп безопасности, либо их комбинацию. По умолчанию: |
session_token aliases: aws_session_token, security_token, aws_security_token, access_token string | Маркер сессии AWS STS для использования с временными учетными данными. Дополнительную информацию о маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также могут быть использованы переменные окружения Параметры security_token и profile несовместимы. Псевдонимы aws_session_token и session_token были добавлены в релизе 3.2.0, а параметр был переименован из security_token в session_token в релизе 6.0.0. Псевдонимы security_token, aws_security_token и access_token устарели и будут удалены в релизе после 2024-12-01. Поддержка переменных окружения |
spot_price float | Цена, которую вы предлагаете. Применимо только для группы автоматического масштабирования с экземплярами spot. |
state string | Зарегистрировать или снять с регистрации экземпляр. Выборы:
|
user_data string | Неструктурированный блок данных, который доступен экземпляру ec2. Взаимоисключающий с user_data_path. |
user_data_path path | Путь к файлу, содержащему данные пользователя для экземпляров ec2. Взаимоисключающий с user_data. |
validate_certs boolean | Если установлено значение Установка validate_certs=false крайне не рекомендуется. В качестве альтернативы, рассмотрите установку aws_ca_bundle вместо этого. Выборы:
|
volumes list / elements=dictionary | Список словарей, определяющих создаваемые тома. Для любого тома размер тома менее |
|
delete_on_termination boolean |
Удалять ли том автоматически при завершении работы экземпляра? Варианты:
|
|
device_name string / обязательно |
Имя тома (например |
|
encrypted boolean |
Шифровать ли том с использованием KMS CMK ‘aws/ebs’? Варианты:
|
|
ephemeral string |
Использовать ли временный том? Данные на временных томах теряются при остановке экземпляра. Взаимоисключительно с параметром snapshot. |
|
iops integer |
Количество операций ввода-вывода в секунду для тома. Требуется при volume_type=io1. |
|
no_device boolean |
При no_device=true устройство не будет создано. Варианты:
|
|
snapshot string |
ID EBS снимка для копирования при создании тома. Взаимоисключительно с параметром ephemeral. |
|
throughput integer добавлен в community.aws 3.1.0 |
Пропускная способность для тома типа gp3. Допустимый диапазон от 125 до 1000. |
|
volume_size integer |
Размер тома (в GiB). Требуется, если не задан один из параметров ephemeral, snapshot или no_device. |
|
volume_type string |
Тип создаваемого тома. См. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html для получения дополнительной информации о доступных типах томов. |
vpc_id string | ID VPC, используется для преобразования имен групп безопасности в ID. |
Примечания
Примечание
- Конфигурации запуска Amazon ASG неизменяемы после создания, поэтому изменение конфигурации после её изменения не повлияет на конфигурацию запуска на AWS. Необходимо создать новую конфигурацию и назначить её группе ASG.
- Внимание: Для модулей переменные окружения и файлы конфигурации считываются из контекста Ansible «хост», а не «контроллера». В связи с этим, возможно, необходимо явно скопировать файлы на «хост». Для подключаемых модулей поиска и подключения переменные окружения и файлы конфигурации считываются из контекста Ansible «контроллер», а не «хост».
- AWS SDK (boto3), используемый Ansible, также может считывать значения по умолчанию для учетных данных и других настроек, таких как регион, из файлов конфигурации в контексте Ansible «хост» (обычно
~/.aws/credentials). См. https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html для получения дополнительной информации.
Примеры
- name: create a launch configuration with an encrypted volume
community.aws.autoscaling_launch_config:
name: special
image_id: ami-XXX
key_name: default
security_groups:
- 'group'
- 'group2'
instance_type: t1.micro
volumes:
- device_name: /dev/sda1
volume_size: 100
volume_type: io1
iops: 3000
delete_on_termination: true
encrypted: true
- device_name: /dev/sdb
ephemeral: ephemeral0
- name: create a launch configuration using a running instance id as a basis
community.aws.autoscaling_launch_config:
name: special
instance_id: i-00a48b207ec59e948
key_name: default
security_groups:
- 'launch-wizard-2'
volumes:
- device_name: /dev/sda1
volume_size: 120
volume_type: io1
iops: 3000
delete_on_termination: true
- name: create a launch configuration to omit the /dev/sdf EBS device that is included in the AMI image
community.aws.autoscaling_launch_config:
name: special
image_id: ami-XXX
key_name: default
security_groups:
- 'group'
- 'group2'
instance_type: t1.micro
volumes:
- device_name: /dev/sdf
no_device: true
- name: Use EBS snapshot ID for volume
block:
- name: Set Volume Facts
ansible.builtin.set_fact:
volumes:
- device_name: /dev/sda1
volume_size: 20
ebs:
snapshot: snap-XXXX
volume_type: gp2
delete_on_termination: true
encrypted: false
- name: Create launch configuration
community.aws.autoscaling_launch_config:
name: lc1
image_id: ami-xxxx
assign_public_ip: true
instance_type: t2.medium
key_name: my-key
security_groups:
- 'sg-xxxx'
volumes: "{{ volumes }}"
register: lc_info
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
arn строка | Amazon Resource Name конфигурации запуска. Возвращается: при state=present Пример: |
changed логическое | Изменилось ли состояние конфигурации запуска. Возвращается: всегда Пример: |
created_time строка | Дата и время создания конфигурации запуска. Возвращается: при state=present Пример: |
image_id строка | Идентификатор Amazon Machine Image, используемый конфигурацией запуска. Возвращается: при state=present Пример: |
instance_type строка | Тип экземпляра для экземпляров. Возвращается: при state=present Пример: |
name строка | Имя конфигурации запуска. Возвращается: при state=present Пример: |
result сложное | Подробные данные спецификации конфигурации запуска. Возвращается: при state=present |
|
associate_public_ip_address логическое |
(EC2-VPC) Указывает, нужно ли назначать общедоступный IP-адрес каждому экземпляру. Возвращается: при state=present Пример: |
|
block_device_mappings сложное |
Карта блочных устройств, определяющая блочные устройства. Возвращается: при state=present |
|
device_name строка |
Имя устройства, доступного экземпляру EC2 (например, /dev/sdh или xvdh). Возвращается: при state=present Пример: |
|
ebs сложное |
Информация об объеме Amazon EBS. Возвращается: при state=present |
|
snapshot_id строка |
Идентификатор снимка. Возвращается: при state=present |
|
volume_size строка |
Размер тома в ГБ. Возвращается: при state=present Пример: |
|
virtual_name строка |
Имя виртуального устройства (например, ephemeral0). Возвращается: при state=present Пример: |
|
classic_link_vpc_id строка |
Идентификатор VPC с поддержкой ClassicLink для подключения экземпляров EC2-Classic. Возвращается: при state=present |
|
classic_link_vpc_security_groups список / элементы=строка |
Идентификаторы одного или нескольких наборов безопасности для VPC, указанной в ClassicLinkVPCId. Возвращается: при state=present Пример: |
|
created_time строка |
Дата и время создания конфигурации запуска. Возвращается: при state=present Пример: |
|
delete_on_termination boolean |
Указывает, удаляется ли том при завершении работы экземпляра. Возвращается: когда state=present Пример: |
|
ebs_optimized boolean |
Указывает, оптимизирован ли экземпляр для EBS I/O Возвращается: когда state=present Пример: |
|
image_id string |
Идентификатор образа Amazon Machine Image, используемого конфигурацией запуска. Возвращается: когда state=present Пример: |
|
instance_monitoring boolean |
Указывает, запускаются ли экземпляры в этой группе с подробным Возвращается: когда state=present Пример: |
|
instance_profile_name string |
Имя или универсальное имя ресурса (ARN) профиля экземпляра, связанного с ролью IAM для экземпляра. Возвращается: когда state=present |
|
instance_type string |
Тип экземпляра для экземпляров. Возвращается: когда state=present Пример: |
|
iops integer |
Количество операций ввода-вывода в секунду (IOPS), которые необходимо предоставить для тома. Возвращается: когда state=present |
|
kernel_id string |
Идентификатор ядра, связанного с AMI. Возвращается: когда state=present Пример: |
|
key_name string |
Имя пары ключей. Возвращается: когда state=present Пример: |
|
launch_configuration_arn string |
Универсальное имя ресурса (ARN) конфигурации запуска. Возвращается: когда state=present Пример: |
|
member string |
Возвращается: когда state=present Пример: |
|
name string |
Имя конфигурации запуска. Возвращается: когда state=present Пример: |
|
PlacementTenancy string |
Доступность экземпляров, либо default, либо dedicated. Возвращается: когда state=present Пример: |
|
ramdisk_id string |
Идентификатор RAM-диска, связанного с AMI. Возвращается: когда state=present Пример: |
|
security_groups list / elements=string |
Группы безопасности, которые нужно связать с экземплярами. Возвращается: когда state=present Пример: |
|
spot_price float |
Цена, которую нужно предложить при запуске спотовых экземпляров. Возвращается: когда state=present |
|
use_block_device_types boolean |
Указывает, следует ли подавлять сопоставление устройств. Возвращается: когда state=present Пример: |
|
user_data string |
Доступные данные пользователя для экземпляров. Возвращается: при state=present Пример: |
|
volume_type string |
Тип тома (один из standard, io1, gp2). Возвращается: при state=present Пример: |
security_groups list / elements=string | Группы безопасности для ассоциации с экземплярами. Возвращается: при state=present Пример: |
Ссылки на сборки
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/aws/autoscaling_launch_config_module.html