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 | Значение по умолчанию: None | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key | |
| aws_secret_key | Значение по умолчанию: None | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key | |
| description | Значение по умолчанию: | Необязательное описание создаваемого конвейера. | |
| ec2_url | Значение по умолчанию: None | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если не используется регион. Если не задан, используется значение переменной окружения EC2_URL, если таковое имеется. | |
| name обязательно | Имя Datapipeline для создания/изменения/удаления. | ||
| objects | Список определений объектов конвейера, каждый из которых является словарем, принимающим ключи id, name и fields. | ||
| fields | Список словарей, принимающих ключи key и stringValue/refValue. Значение указывается как ссылка на другой объект refValue или как строковое значение stringValue, но не как оба. | ||
| id | Идентификатор объекта. | ||
| name | Имя объекта. | ||
| parameters | Список объектов параметров (словарей) в определении конвейера. | ||
| attributes | Список атрибутов (словарей) объекта параметра. Каждый атрибут принимает ключи key и stringValue, оба из которых являются строками. | ||
| id | Идентификатор объекта параметра. | ||
| profile (добавлено в 1.6) | Значение по умолчанию: None | Использует профиль 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) | Значение по умолчанию: None | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token | |
| state |
| Требуемое состояние конвейера. | |
| tags | Значение по умолчанию: None | Словарь пар ключ-значение для добавления в конвейер. | |
| timeout | Значение по умолчанию: 300 | Время в секундах ожидания перехода конвейера в нужное состояние, в противном случае произойдет ошибка. | |
| validate_certs (добавлено в 1.5) |
| В случае установки "no", сертификаты SSL для boto версий >= 2.6.0 не будут проверены. | |
| values | Список значений параметров (словарей) в определении конвейера. Каждый словарь принимает ключи id и stringValue, оба из которых являются строками. | ||
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
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.
Примеры
# 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 dict | всегда | Содержит данные конвейера данных (data_pipeline) и сообщение возврата (msg). Если конвейер данных существует, data_pipeline будет содержать ключи description, name, pipeline_id, state, tags и unique_id. Если конвейер данных не существует, data_pipeline будет пустым словарем. Сообщение msg описывает состояние операции. |
Статус
Данный модуль помечен как preview, что означает, что гарантии обратной совместимости интерфейса нет.
Автор
- Рагху Удияр <raghusiddarth@gmail.com> (@raags)
- Слон Хертэл <shertel@redhat.com>
Подсказка
Если вы заметили какие-либо проблемы в данном руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/data_pipeline_module.html