data_pipeline - Создание и управление AWS Datapipeline
Новое в версии 2.4.
- Обзор
- Требования (к хосту, на котором выполняется модуль)
- Параметры
- Примеры
- Возвращаемые значения
- Примечания
Обзор
- Создание и управление AWS Datapipeline. Создание не является идемпотентным в AWS, поэтому uniqueId создается путём хэширования параметров (без объектов), переданных в datapipeline.
Определение конвейера должно быть в формате, указанном здесь http://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. псевдонимы: ec2_access_key, access_key | ||||||||||||||||||||||
| aws_secret_key | нет | Секретный ключ AWS. Если не указан, используется значение переменной среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. псевдонимы: ec2_secret_key, secret_key | ||||||||||||||||||||||
| description | нет | Необязательное описание создаваемого конвейера. | ||||||||||||||||||||||
| ec2_url | нет | URL для подключения к облаку EC2 или Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не указан, используется значение переменной среды EC2_URL, если таковое имеется. | ||||||||||||||||||||||
| name | да | Имя Datapipeline для создания/модификации/удаления. | ||||||||||||||||||||||
| objects | нет | Список определений объектов конвейера, каждый из которых представляет собой словарь, использующий ключи id, name и fields. |
||||||||||||||||||||||
| ||||||||||||||||||||||||
| parameters | нет | Список объектов параметров (словари) в определении конвейера. |
||||||||||||||||||||||
| ||||||||||||||||||||||||
| profile (добавлено в 1.6)
| нет | Использует профиль boto. Работает только с boto >= 2.24.0. | ||||||||||||||||||||||
| region | нет | Регион AWS для использования. Если не указан, используется значение переменной среды AWS_REGION или EC2_REGION, если таковая имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | ||||||||||||||||||||||
| security_token (добавлено в 1.6)
| нет | Токен безопасности AWS STS. Если не указан, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | ||||||||||||||||||||||
| state | нет | present |
| Запрашиваемое состояние конвейера. | ||||||||||||||||||||
| tags | нет | Словарь пар ключ:значение для добавления в конвейер. | ||||||||||||||||||||||
| timeout | нет | 300 | Время в секундах ожидания перехода конвейера в запрошенное состояние, в противном случае произойдет ошибка. | |||||||||||||||||||||
| validate_certs (добавлено в 1.5)
| нет | да |
| При значении "нет" сертификаты SSL не будут проверены для boto версии >= 2.6.0. | ||||||||||||||||||||
| values | нет | Список значений параметров (словари) в определении конвейера. Каждый словарь использует ключи id и stringValue, оба из которых являются строками. | ||||||||||||||||||||||
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
# Create pipeline
- 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
- 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
- data_pipeline:
name: test-dp
region: us-west-2
state: active
# Delete pipeline
- data_pipeline:
name: test-dp
region: us-west-2
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для данного модуля:
| имя | описание | возвращается | тип | пример |
|---|---|---|---|---|
| changed | были ли изменены данные конвейера | всегда | bool | {'changed': True} |
| result | Содержит данные конвейера (data_pipeline) и сообщение возврата (msg). Если конвейер существует, data_pipeline будет содержать ключи description, name, pipeline_id, state, tags и unique_id. Если конвейера нет, то data_pipeline будет пустым словарем. Сообщение msg описывает статус операции. | всегда | dict |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
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
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантирует обратной совместимости.
Для получения помощи в разработке модулей, если у вас есть такое желание, пожалуйста, прочитайте Информация о сообществе и вклад, Тестирование Ansible и Разработка модулей.
© 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/data_pipeline_module.html