community.aws.data_pipeline – Создание и управление AWS Datapipeline
Примечание
Этот плагин является частью коллекции community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws
Для использования в плейбуке укажите: community.aws.data_pipeline
Новое в версии 1.0.0: из community.aws
Обзор
- Создает и управляет AWS Datapipeline. Создание не является идемпотентным в AWS, поэтому
uniqueIdсоздается путем хэширования параметров (без объектов), заданных для datapipeline. - Определение конвейера должно быть в формате, указанном здесь https://docs.aws.amazon.com/datapipeline/latest/APIReference/API_PutPipelineDefinition.html#API_PutPipelineDefinition_RequestSyntax.
- Операции будут ожидать заданного количества времени, чтобы гарантировать, что конвейер находится в запрошенном состоянии.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| 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 для проверки SSL-сертификатов. Используется только для модулей на основе boto3. Примечание: пакет CA читается со стороны модуля и может потребоваться явно скопировать его с контроллера, если он не используется локально. | |||
| 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 | |||
| debug_botocore_endpoint_logs булево |
| Использовать логирование botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», сделанных во время задачи, выводя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода полного списка, сделанного во время плейбука. Также может использоваться переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS. | ||
| description строка | Значение по умолчанию: "" | Необязательное описание конвейера, который создается. | ||
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где необходима область. Должен быть указан для всех других модулей, если не используется область. Если не задан, используется значение переменной среды EC2_URL, если она задана. псевдонимы: aws_endpoint_url, endpoint_url | |||
| name строка / обязательно | Название Datapipeline для создания/модификации/удаления. | |||
| objects список / элементы=словарь | Список определений объектов конвейера, каждый из которых является словарем, который принимает ключи id, name и fields. | |||
| fields список / элементы=словарь | Пара-значение, определяющие свойства объекта. Значение задается как ссылка на другой объект refValue или как строковое значение stringValue, но не оба сразу. | |||
| key строка | Идентификатор поля. | |||
| refValue строка | Значение поля, выраженное как идентификатор другого объекта. Можно указать только одно из stringValue и refValue. | |||
| stringValue строка | Значение поля. Можно указать только одно из stringValue и refValue. | |||
| id строка | Идентификатор объекта. | |||
| name строка | Название объекта. | |||
| parameters список / элементы=словарь | Список объектов параметров (словарей) в определении конвейера. | |||
| attributes список / элементы=словарь | Список атрибутов (словарей) объекта параметра. | |||
| key строка | Идентификатор поля. | |||
| stringValue строка | Значение поля. | |||
| id строка | Идентификатор объекта параметра. | |||
| 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 | |||
| region строка | AWS-регион для использования. Если не указан, используется значение переменной среды AWS_REGION или EC2_REGION, если она задана. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | |||
| security_token строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если задан параметр profile, этот параметр игнорируется. Одновременное указание параметров security_token и profile устарело и эти параметры будут сделаны взаимоисключающими после 2022-06-01. псевдонимы: aws_security_token, access_token | |||
| state строка |
| Запрошенное состояние конвейера. | ||
| tags словарь | Словарь пар ключ-значение для добавления к конвейеру. | |||
| timeout целое число | Значение по умолчанию: 300 | Время в секундах ожидания перехода конвейера в запрошенное состояние, в противном случае происходит ошибка. | ||
| validate_certs булево |
| При установке в значение «нет», SSL-сертификаты не будут проверяться для версий boto >= 2.6.0. | ||
| values список / элементы=словарь | Список значений параметров (словарей) в определении конвейера. | |||
| id строка | Идентификатор значения параметра | |||
| stringValue строка | Значение поля | |||
| version строка | Параметр version никогда не имел никакого эффекта и будет удален после 2022-06-01. | |||
Примечания
Примечание
- Если параметры не заданы в модуле, следующие переменные среды могут использоваться в порядке убывания приоритета
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: These examples do not set authentication details, see the AWS Guide for details.
# Create pipeline
- community.aws.data_pipeline:
name: test-dp
region: us-west-2
objects: "{{pipelineObjects}}"
parameters: "{{pipelineParameters}}"
values: "{{pipelineValues}}"
tags:
key1: val1
key2: val2
state: present
# Example populating and activating a pipeline that demonstrates two ways of providing pipeline objects
- community.aws.data_pipeline:
name: test-dp
objects:
- "id": "DefaultSchedule"
"name": "Every 1 day"
"fields":
- "key": "period"
"stringValue": "1 days"
- "key": "type"
"stringValue": "Schedule"
- "key": "startAt"
"stringValue": "FIRST_ACTIVATION_DATE_TIME"
- "id": "Default"
"name": "Default"
"fields": [ { "key": "resourceRole", "stringValue": "my_resource_role" },
{ "key": "role", "stringValue": "DataPipelineDefaultRole" },
{ "key": "pipelineLogUri", "stringValue": "s3://my_s3_log.txt" },
{ "key": "scheduleType", "stringValue": "cron" },
{ "key": "schedule", "refValue": "DefaultSchedule" },
{ "key": "failureAndRerunMode", "stringValue": "CASCADE" } ]
state: active
# Activate pipeline
- community.aws.data_pipeline:
name: test-dp
region: us-west-2
state: active
# Delete pipeline
- community.aws.data_pipeline:
name: test-dp
region: us-west-2
state: absent
Значения возврата
Общие значения возврата документированы здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| changed boolean | всегда | указывает, был ли изменен поток данных Пример: {'changed': True} |
| result словарь | всегда | Содержит данные потока данных (data_pipeline) и сообщение возврата (msg). Если поток данных существует, data_pipeline будет содержать ключи description, name, pipeline_id, state, tags и unique_id. Если поток данных не существует, data_pipeline будет пустым словарем. Msg описывает статус операции. |
Авторы
- Raghu Udiyar (@raags) <raghusiddarth@gmail.com>
- Sloane Hertel (@s-hertel) <shertel@redhat.com>
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/aws/data_pipeline_module.html