data_pipeline – Создание и управление AWS Datapipeline
Новая версия 2.4.
Описание
- Создание и управление 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. псевдонимы: ec2_access_key, access_key | ||
| aws_secret_key строка | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. псевдонимы: ec2_secret_key, secret_key | ||
| debug_botocore_endpoint_logs логический тип добавлено в 2.8 |
| Использовать логгер botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, выводя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода в общий список, созданный во время выполнения playbook. Также может использоваться переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS. | |
| description - | Значение по умолчанию: "" | Необязательное описание создаваемого конвейера. | |
| ec2_url строка | 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 строка | Использует профиль 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 строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | ||
| state - |
| Требуемое состояние конвейера. | |
| tags - | Словарь пар ключ-значение для добавления в конвейер. | ||
| timeout - | Значение по умолчанию: 300 | Время в секундах ожидания перехода конвейера в требуемое состояние, иначе произойдёт ошибка. | |
| validate_certs логический тип |
| При значении "нет" сертификаты 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), если учётные данные не предоставлены. См. 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
- 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 логический тип | всегда | указывает, был ли изменён конвейер данных Пример: {'changed': True} |
| result словарь | всегда | Содержит данные конвейера данных (data_pipeline) и сообщение об ошибке (msg). Если конвейер данных существует, data_pipeline будет содержать ключи description, name, pipeline_id, state, tags и unique_id. Если конвейера данных не существует, data_pipeline будет пустым словарем. Сообщение msg описывает состояние операции. |
Статус
- Этот модуль не гарантирует обратную совместимость. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Рагу Удияр (@raags) <raghusiddarth@gmail.com>
- Слоун Хертел (@s-hertel) <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.8/modules/data_pipeline_module.html