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. | ||
| id | Идентификатор объекта. | ||
| name | Имя объекта. | ||
| fields | Список словарей, принимающих ключи key и stringValue/refValue. Значение задается как ссылка на другой объект refValue или как строковое значение stringValue, но не как то и другое. | ||
| parameters | Список объектов параметров (словарей) в определении конвейера. | ||
| id | Идентификатор объекта параметра. | ||
| attributes | Список атрибутов (словарей) объекта параметра. Каждый атрибут принимает ключи key и stringValue, которые являются строками. | ||
| 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 |
| Запрашиваемое состояние конвейера. | |
| tags | Словарь пар ключ-значение для добавления в конвейер. | ||
| timeout | По умолчанию: 300 | Время в секундах ожидания перехода конвейера в запрошенное состояние, в противном случае произойдет ошибка. | |
| validate_certs bool (добавлено в 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, что означает, что его интерфейс не гарантированно будет совместим со старыми версиями.
Техническое обслуживание
Этот модуль помечен как community, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.
Список других модулей, также поддерживаемых сообществом Ansible, см. здесь.
Автор
- Рагху Удияр <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.6/modules/data_pipeline_module.html