community.aws.cloudformation_stack_set модуль — Управление группами стеков CloudFormation
Примечание
Этот модуль входит в коллекцию community.aws (версия 8.0.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.aws. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробностей.
Чтобы использовать его в книге задач, укажите: community.aws.cloudformation_stack_set.
Новое в community.aws 1.0.0
Обзор
- Запускает/обновляет/удаляет наборы стеков AWS CloudFormation.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 3.6
- boto3 >= 1.26.0
- botocore >= 1.29.0
Параметры
Параметр | Комментарии |
|---|---|
access_key псевдонимы: aws_access_key_id, aws_access_key, ec2_access_key строка | Идентификатор ключа доступа 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. Поддержка переменной среды |
accounts список / элементы=строка | Список AWS-аккаунтов, в которых нужно создать экземпляры стеков CloudFormation. Для создания набора стеков необходимо указать по крайней мере одну область. При обновлениях, если указано меньше областей, будут обновлены только указанные. |
administration_role_arn псевдонимы: admin_role_arn, admin_role, administration_role строка | ARN роли администрирования, то есть роли, которую CloudFormation Stack Sets использует для делегирования ролей в дочерних учетных записях. По умолчанию |
aws_ca_bundle путь | Расположение файла CA Bundle для проверки SSL-сертификатов. Также может быть использована переменная среды |
aws_config словарь | Словарь для модификации конфигурации botocore. Параметры можно найти в документации AWS https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. |
capabilities список / элементы=строка | Возможности позволяют стекам создавать и изменять ресурсы IAM, что может включать добавление пользователей или ролей. В настоящее время доступны только значения ‘CAPABILITY_IAM’ и ‘CAPABILITY_NAMED_IAM’. Можно указать одно или оба. Для следующих ресурсов требуется указать один или оба этих параметра: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::IAM::UserToGroupAddition Выбор:
|
debug_botocore_endpoint_logs логический | Используйте Также может быть использована переменная среды Выбор:
|
description строка | Описание того, что создает этот набор стеков. |
endpoint_url псевдонимы: ec2_url, aws_endpoint_url, s3_url строка | URL для подключения вместо стандартных AWS-точек входа. Хотя это можно использовать для подключения к другим службам, совместимым с AWS, коллекции amazon.aws и community.aws протестированы только с AWS. Также могут быть использованы переменные среды Псевдонимы ec2_url и s3_url устарели и будут удалены в релизе после 2024-12-01. Поддержка переменной среды |
execution_role_name псевдонимы: exec_role_name, exec_role, execution_role строка | ARN роли исполнения, то есть роли, которую CloudFormation Stack Sets использует в дочерних учетных записях. ЭТО НЕ ДОЛЖНО быть ARN, и роли должны существовать в каждой указанной дочерней учетной записи. Именем роли исполнения по умолчанию является |
failure_tolerance словарь | Настройки для изменения того, что считается «поломкой» при обновлении экземпляра стека, и сколько их выполнять одновременно. По умолчанию: |
|
fail_count целое число |
Количество учетных записей в каждой области, в которых данная операция может завершиться неудачно, прежде чем CloudFormation остановит операцию в этой области. Необходимо указать либо fail_count, либо fail_percentage. |
|
fail_percentage целое число |
Процент учетных записей в каждой области, в которых данная операция стека может завершиться неудачно, прежде чем CloudFormation остановит операцию в этой области. Необходимо указать либо fail_count, либо fail_percentage. |
|
parallel_count целое число |
Максимальное количество учетных записей, в которых можно выполнить эту операцию одновременно. parallel_count может быть не более чем на единицу больше, чем fail_count. Необходимо указать либо parallel_count, либо parallel_percentage. Обратите внимание, что эта настройка позволяет указать максимум для операций. В некоторых случаях для больших развертываний фактическое количество может быть ниже. |
|
parallel_percentage integer |
Максимальный процент учётных записей, в которых операция будет выполняться одновременно. Вы должны указать один из параметров: parallel_count или parallel_percentage. Обратите внимание, что данная настройка определяет максимум для операций. Для больших развертываний в определённых ситуациях фактический процент может быть ниже. |
name string / обязательно | Имя набора стеков CloudFormation. |
parameters словарь | Список словарей всех переменных шаблона для стека. Значение может быть строкой или словарем. Словарь может использоваться для установки дополнительных атрибутов параметров шаблона, таких как UsePreviousValue (см. пример). По умолчанию: |
profile псевдонимы: aws_profile строка | Используемый именованный профиль AWS для аутентификации. Дополнительную информацию об именованных профилях см. в документации AWS https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html. Также можно использовать переменную среды Параметр profile взаимоисключает параметры aws_access_key, aws_secret_key и security_token. |
purge_stacks булево | Применимо только при state=absent. Определяет, будут ли удалены экземпляры стеков при удалении набора стеков. По умолчанию экземпляры удаляются. Чтобы сохранить стеки при удалении набора стеков, установите purge_stacks=false. Варианты:
|
region псевдонимы: aws_region, ec2_region строка | Используемая область AWS. Для глобальных служб, таких как IAM, Route53 и CloudFront, region игнорируется. Также можно использовать переменные среды Дополнительную информацию см. в документации Amazon AWS http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region. Псевдоним Поддержка переменной среды |
regions список / элементы=строка | Список областей AWS, в которых будут созданы экземпляры стека. Параметр region выбирает место создания набора стеков, а regions — область для экземпляров стеков. Для создания набора стеков необходимо указать хотя бы одну область. При обновлении, если указано меньше областей, будут обновлены только указанные области. |
secret_key псевдонимы: aws_secret_access_key, aws_secret_key, ec2_secret_key строка | Секретный ключ доступа 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. Поддержка переменной среды |
session_token псевдонимы: aws_session_token, security_token, aws_security_token, access_token строка | Токен сессии 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. Поддержка переменных среды |
state строка | Если state=present, стек будет создан. Если state=present и стек существует, а шаблон изменён, он будет обновлён. Если state=absent, стек будет удалён. Варианты:
|
tags словарь | Словарь тегов, которые нужно прикрепить к стеку и его ресурсам во время создания стека. Можно обновить позже, при обновлении тегов удаляются предыдущие записи. |
template путь | Локальный путь к шаблону CloudFormation. Это должен быть полный путь к файлу, относительный к рабочей директории. При использовании ролей это может выглядеть как Если state=present и стек ещё не существует, необходимо указать template, template_body или template_url (только один из них). Если state=present, стек существует, и ни template, ни template_body, ни template_url не указаны, будет повторно использован предыдущий шаблон. |
тело_шаблона строка | Тело шаблона. Используйте его для передачи фактического тела шаблона CloudFormation. Если состояние=наличие и стека еще нет, необходимо указать шаблон, тело_шаблона или ссылка_на_шаблон (но только один из них). Если состояние=наличие, стек существует, и ни шаблон, тело_шаблона, ни ссылка_на_шаблон не указаны, предыдущий шаблон будет повторно использован. |
ссылка_на_шаблон строка | Расположение файла, содержащего тело шаблона. URL должен указывать на шаблон (максимальный размер 307 200 байт), размещённый в ведре S3 в той же области, что и стек. Если состояние=наличие и стека еще нет, необходимо указать шаблон, тело_шаблона или ссылка_на_шаблон (но только один из них). Если состояние=наличие, стек существует, и ни шаблон, тело_шаблона, ни ссылка_на_шаблон не указаны, предыдущий шаблон будет повторно использован. |
validate_certs булево | При установке в Настройка validate_certs=false настоятельно не рекомендуется. В качестве альтернативы, рассмотрите возможность установки aws_ca_bundle вместо этого. Варианты:
|
wait булево | Ожидать завершения операции со стеком. Это включает ожидание, пока экземпляры стека достигнут состояния UPDATE_COMPLETE. Если вы не хотите ждать, этот модуль не будет сообщать об ошибках операций со стеком, так как он не будет ждать их завершения. Варианты:
|
wait_timeout целое число | Сколько времени ждать (в секундах) завершения операций создания/обновления/удаления стеков. По умолчанию: |
Примечания
Примечание
- Для создания отдельного стека используйте модуль amazon.aws.cloudformation.
- Внимание: Для модулей переменные среды и файлы конфигурации считываются из контекста Ansible «хост», а не «контроллер». Поэтому файлы, возможно, нужно будет скопировать на «хост». Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются из контекста Ansible «контроллер», а не «хост».
- AWS SDK (boto3), используемый Ansible, также может считывать значения по умолчанию для учетных данных и других настроек, таких как область, из файлов конфигурации в контексте Ansible «хост» (обычно
~/.aws/credentials). Дополнительную информацию см. на https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.
Примеры
- name: Create a stack set with instances in two accounts
community.aws.cloudformation_stack_set:
name: my-stack
description: Test stack in two accounts
state: present
template_url: https://s3.amazonaws.com/my-bucket/cloudformation.template
accounts:
- 123456789012
- 234567890123
regions:
- us-east-1
- name: on subsequent calls, templates are optional but parameters and tags can be altered
community.aws.cloudformation_stack_set:
name: my-stack
state: present
parameters:
InstanceName: my_stacked_instance
tags:
foo: bar
test: stack
accounts:
- 123456789012
- 234567890123
regions:
- us-east-1
- name: The same type of update, but wait for the update to complete in all stacks
community.aws.cloudformation_stack_set:
name: my-stack
state: present
wait: true
parameters:
InstanceName: my_restacked_instance
tags:
foo: bar
test: stack
accounts:
- 123456789012
- 234567890123
regions:
- us-east-1
- name: Register new accounts (create new stack instances) with an existing stack set.
community.aws.cloudformation_stack_set:
name: my-stack
state: present
wait: true
parameters:
InstanceName: my_restacked_instance
tags:
foo: bar
test: stack
accounts:
- 123456789012
- 234567890123
- 345678901234
regions:
- us-east-1
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
Ключ | Описание |
|---|---|
операции список / элементы=строка | Все операции, инициированные этим запуском модуля cloudformation_stack_set Возвращается: всегда Пример: |
журнал_операций список / элементы=строка | Последние события в журнале событий CloudFormation. В некоторых случаях это может быть из предыдущего запуска. Возвращается: всегда Пример: |
экземпляры_стека список / элементы=строка | Экземпляры стека CloudFormation, которые являются членами этого набора стеков. Также будет указана область и идентификатор учетной записи. Возвращается: состояние == наличие Пример: |
набор_стеков словарь | Факты о текущем развернутом наборе стеков, его параметрах и тегах. Возвращается: состояние == наличие Пример: |
Ссылки на коллекции
© 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/cloudformation_stack_set_module.html