Spec-Zone.ru › Ansible

community.aws.dynamodb_table модуль — Создание, обновление или удаление таблиц AWS Dynamo DB

Примечание

Этот модуль является частью коллекции community.aws (версия 8.0.0).

Эта коллекция, возможно, уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.aws. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.

Для использования в плейбуке укажите: community.aws.dynamodb_table.

Добавлен в community.aws 1.0.0

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Описание

  • Создание или удаление таблиц AWS Dynamo DB.
  • Возможно обновление пропускной способности выделенных ресурсов для существующих таблиц.
  • Возвращает состояние указанной таблицы.

Требования

Ниже перечислены требования, которые должны быть выполнены на хосте, на котором выполняется этот модуль.

  • python >= 3.6
  • boto3 >= 1.26.0
  • botocore >= 1.29.0

Параметры

Параметр

Комментарии

access_key

алиасы: aws_access_key_id, aws_access_key, ec2_access_key

строка

Идентификатор ключа доступа AWS.

Дополнительную информацию об маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также могут использоваться переменные среды AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY в порядке убывания приоритета.

Параметры aws_access_key и profile взаимоисключающие.

Алиас aws_access_key_id был добавлен в релизе 5.1.0 для обеспечения согласованности с SDK botocore AWS.

Алиас ec2_access_key устарел и будет удален в релизе после 2024-12-01.

Поддержка переменной среды EC2_ACCESS_KEY устарела и будет удалена в релизе после 2024-12-01.

aws_ca_bundle

путь

Расположение набора сертификатов CA для проверки SSL-сертификатов.

Также может использоваться переменная среды AWS_CA_BUNDLE.

aws_config

словарь

Словарь для изменения конфигурации botocore.

Параметры можно найти в документации AWS https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.

billing_mode

строка

Управляет созданием таблиц с предоплатой или по требованию.

Варианты:

  • "PROVISIONED"
  • "PAY_PER_REQUEST"

debug_botocore_endpoint_logs

логический тип

Используйте botocore.endpoint логгер для анализа уникальных (а не общих) "resource:action" API-запросов, сделанных во время задачи, выводя набор в ключ resource_actions в результатах задачи. Используйте aws_resource_action обратный вызов для вывода полного списка, сделанного во время выполнения playbook.

Также может использоваться переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS.

Варианты:

  • false ← (по умолчанию)
  • true

endpoint_url

алиасы: ec2_url, aws_endpoint_url, s3_url

строка

URL для подключения вместо стандартных конечных точек AWS. Хотя это можно использовать для подключения к другим совместимым с AWS службам, коллекции amazon.aws и community.aws протестированы только с AWS.

Также могут использоваться переменные среды AWS_URL или EC2_URL в порядке убывания приоритета.

Алиасы ec2_url и s3_url устарели и будут удалены в релизе после 2024-12-01.

Поддержка переменной среды EC2_URL устарела и будет удалена в релизе после 2024-12-01.

hash_key_name

строка

Имя ключа хеширования.

Требуется, когда state=present и таблица не существует.

hash_key_type

строка

Тип ключа хеширования.

По умолчанию 'STRING' при создании новой таблицы.

Варианты:

  • "STRING"
  • "NUMBER"
  • "BINARY"

indexes

список / элементы=словарь

Список словарей, описывающих индексы для добавления в таблицу. Глобальные индексы могут быть обновлены. Локальные индексы не поддерживают обновления или пропускную способность.

Обязательные параметры: [‘name’, ‘type’, ‘hash_key_name’]

Другие параметры: [‘hash_key_type’, ‘range_key_name’, ‘range_key_type’, ‘includes’, ‘read_capacity’, ‘write_capacity’]

По умолчанию: []

hash_key_name

строка

Имя ключа на основе хеширования.

Требуется, если индекс еще не существует.

Не может быть изменен после создания индекса.

hash_key_type

строка

Тип ключа на основе хеширования.

По умолчанию 'STRING' при создании нового индекса.

Не может быть изменен после создания индекса.

Варианты:

  • "STRING"
  • "NUMBER"
  • "BINARY"

includes

список / элементы=строка

Список полей для включения при использовании global_include или include индексов.

name

строка / обязательный

Имя индекса.

range_key_name

строка

Имя ключа диапазона.

Не может быть изменен после создания индекса.

range_key_type

строка

Тип ключа диапазона.

По умолчанию 'STRING' при создании нового индекса.

Не может быть изменен после создания индекса.

Варианты:

  • "STRING"
  • "NUMBER"
  • "BINARY"

read_capacity

целое число

Пропускная способность чтения (единицы) для резервирования для индекса.

type

string / обязательно

Тип индекса.

Варианты:

  • "all"
  • "global_all"
  • "global_include"
  • "global_keys_only"
  • "include"
  • "keys_only"

write_capacity

целое число

Пропускная способность записи (единиц), резервируемая для индекса.

name

string / обязательно

Имя таблицы.

profile

псевдонимы: aws_profile

строка

Используемый именованный профиль AWS для аутентификации.

Дополнительную информацию об именованных профилях см. в документации AWS https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html.

Также можно использовать переменную среды AWS_PROFILE.

Параметр profile взаимоисключающий с параметрами aws_access_key, aws_secret_key и security_token.

purge_tags

булево

Если purge_tags=true и tags задано, существующие теги ресурса будут удалены, чтобы точно соответствовать параметру tags.

Если параметр tags не задан, теги не будут изменены, даже если purge_tags=True.

Ключи тегов, начинающиеся с aws:, зарезервированы Amazon и не могут быть изменены. Поэтому они будут проигнорированы для параметра purge_tags. Подробнее см. в документации Amazon https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html#tag-conventions.

Варианты:

  • false
  • true ← (по умолчанию)

range_key_name

строка

Имя ключевого диапазона.

range_key_type

строка

Тип ключевого диапазона.

По умолчанию 'STRING', при создании нового ключевого диапазона.

Варианты:

  • "STRING"
  • "NUMBER"
  • "BINARY"

read_capacity

целое число

Пропускная способность чтения (единиц) для резервирования.

По умолчанию 1, при создании новой таблицы.

region

псевдонимы: aws_region, ec2_region

строка

AWS регион для использования.

Для глобальных сервисов, таких как IAM, Route53 и CloudFront, region игнорируется.

Также можно использовать переменные среды AWS_REGION или EC2_REGION.

Дополнительную информацию см. в документации Amazon AWS http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region.

Псевдоним ec2_region устарел и будет удален в релизе после 2024-12-01

Поддержка переменной среды EC2_REGION устарела и будет удалена в релизе после 2024-12-01.

secret_key

псевдонимы: aws_secret_access_key, aws_secret_key, ec2_secret_key

строка

Секретный ключ доступа AWS.

Дополнительную информацию об маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY, или EC2_SECRET_KEY в порядке убывания приоритета.

Параметры secret_key и profile взаимоисключающие.

Псевдоним aws_secret_access_key был добавлен в релизе 5.1.0 для соответствия SDK AWS botocore.

Псевдоним ec2_secret_key устарел и будет удален в релизе после 2024-12-01.

Поддержка переменной среды EC2_SECRET_KEY устарела и будет удалена в релизе после 2024-12-01.

session_token

псевдонимы: aws_session_token, security_token, aws_security_token, access_token

строка

Маркер сеанса AWS STS для временных учетных данных.

Дополнительную информацию об маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные среды AWS_SESSION_TOKEN, AWS_SECURITY_TOKEN, или EC2_SECURITY_TOKEN в порядке убывания приоритета.

Параметры security_token и profile взаимоисключающие.

Псевдонимы aws_session_token и session_token были добавлены в релизе 3.2.0, а параметр был переименован из security_token в session_token в релизе 6.0.0.

Псевдонимы security_token, aws_security_token и access_token устарели и будут удалены в релизе после 2024-12-01.

Поддержка переменных среды EC2_SECRET_KEY и AWS_SECURITY_TOKEN устарела и будет удалена в релизе после 2024-12-01.

state

строка

Создать или удалить таблицу.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

table_class

строка

добавлено в community.aws 3.1.0

Класс таблицы.

Варианты:

  • "STANDARD"
  • "STANDARD_INFREQUENT_ACCESS"
END_OF_DOCUMENT_MARKER

метки

псевдонимы: resource_tags

словарь

Словарь, представляющий метки, которые необходимо применить к ресурсу.

Если параметр метки не задан, то метки не будут изменены.

validate_certs

логический

Если установлено значение false, сертификаты SSL не будут проверены для связи с API AWS.

Настройка validate_certs=false категорически не рекомендуется. В качестве альтернативы, рассмотрите возможность настройки aws_ca_bundle вместо этого.

Выборы:

  • false
  • true ← (по умолчанию)

wait

логический

Когда wait=True, модуль будет ожидать до wait_timeout секунд завершения обновлений индексов, создания или удаления таблицы перед возвратом.

Выборы:

  • false
  • true ← (по умолчанию)

wait_timeout

псевдонимы: wait_for_active_timeout

целое число

Сколько времени (в секундах) ожидать завершения создания/обновления/удаления.

AWS позволяет обновлять только вторичные индексы по одному, этот модуль автоматически обновляет их последовательно, и тайм-аут применяется отдельно для каждого индекса.

По умолчанию: 900

write_capacity

целое число

Пропускная способность записи (единицы), которую необходимо зарезервировать.

По умолчанию 1 при создании новой таблицы.

Примечания

Примечание

  • Внимание: Для модулей переменные среды и конфигурационные файлы считываются из контекста Ansible «хост», а не «контроллер». Таким образом, файлы могут потребоваться явно скопировать на «хост». Для плагинов поиска и соединения переменные среды и конфигурационные файлы считываются из контекста Ansible «контроллер», а не «хост».
  • AWS SDK (boto3), который используется Ansible, также может считывать значения по умолчанию для учетных данных и других параметров, таких как регион, из своих конфигурационных файлов в контексте Ansible «хост» (обычно ~/.aws/credentials). См. https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html для получения дополнительной информации.

Примеры

- name: Create dynamo table with hash and range primary key
  community.aws.dynamodb_table:
    name: my-table
    region: us-east-1
    hash_key_name: id
    hash_key_type: STRING
    range_key_name: create_time
    range_key_type: NUMBER
    read_capacity: 2
    write_capacity: 2
    tags:
      tag_name: tag_value

- name: Update capacity on existing dynamo table
  community.aws.dynamodb_table:
    name: my-table
    region: us-east-1
    read_capacity: 10
    write_capacity: 10

- name: Create pay-per-request table
  community.aws.dynamodb_table:
    name: my-table
    region: us-east-1
    hash_key_name: id
    hash_key_type: STRING
    billing_mode: PAY_PER_REQUEST

- name: set index on existing dynamo table
  community.aws.dynamodb_table:
    name: my-table
    region: us-east-1
    indexes:
      - name: NamedIndex
        type: global_include
        hash_key_name: id
        range_key_name: create_time
        includes:
          - other_field
          - other_field2
        read_capacity: 10
        write_capacity: 10

- name: Delete dynamo table
  community.aws.dynamodb_table:
    name: my-table
    region: us-east-1
    state: absent

Возвращаемые значения

Общие возвращаемые значения документированы здесь, следующие поля уникальны для данного модуля:

Ключ

Описание

таблица

сложное

Возвращаемые параметры таблицы из вызова API describe.

Возвращается: успех

Пример: {"arn": "arn:aws:dynamodb:us-east-1:721066863947:table/ansible-test-table", "attribute_definitions": [{"attribute_name": "id", "attribute_type": "N"}], "billing_mode": "PROVISIONED", "creation_date_time": "2022-02-04T13:36:01.578000+00:00", "id": "533b45fe-0870-4b66-9b00-d2afcfe96f19", "item_count": 0, "key_schema": [{"attribute_name": "id", "key_type": "HASH"}], "name": "ansible-test-14482047-alinas-mbp", "provisioned_throughput": {"number_of_decreases_today": 0, "read_capacity_units": 1, "write_capacity_units": 1}, "size": 0, "status": "ACTIVE", "table_arn": "arn:aws:dynamodb:us-east-1:721066863947:table/ansible-test-table", "table_id": "533b45fe-0870-4b66-9b00-d2afcfe96f19", "table_name": "ansible-test-table", "table_size_bytes": 0, "table_status": "ACTIVE", "tags": {}}

статус_таблицы

строка

Текущий статус таблицы.

Возвращается: успех

Пример: "ACTIVE"

Авторы

  • Alan Loi (@loia)

Ссылки на коллекцию

  • Отслеживание задач
  • Репозиторий (исходные коды)
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/aws/dynamodb_table_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API