Spec-Zone.ru › Ansible

Модуль community.aws.msk_cluster — Управление кластерами Amazon MSK

Примечание

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

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

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

Для использования в книге задач укажите: community.aws.msk_cluster.

Новая версия в community.aws 2.0.0

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

Описание

  • Создание, удаление и изменение кластеров Amazon MSK (Managed Streaming for Apache Kafka).
  • До версии 5.0.0 этот модуль назывался community.aws.aws_msk_cluster. Использование не изменилось.

Псевдонимы: aws_msk_cluster

Требования

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

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

Параметры

Параметр

Комментарии

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.

authentication

словарь

Включает всю информацию об аутентификации клиента.

Действует только для новых кластеров и не может быть обновлен.

sasl_iam

булево

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

Включена или выключена аутентификация IAM.

Варианты:

  • false
  • true

sasl_scram

булево

Включена или выключена аутентификация SASL/SCRAM.

Варианты:

  • false
  • true

tls_ca_arn

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

Список ARN центров сертификации ACM.

unauthenticated

булево

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

Параметр для явного включения или выключения аутентификации

Варианты:

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

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.

configuration_arn

строка

ARN используемой конфигурации.

Этот параметр обязателен при state=present.

configuration_revision

целое число

Ревизия используемой конфигурации.

Этот параметр обязателен при state=present.

debug_botocore_endpoint_logs

булево

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

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

Варианты:

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

ebs_volume_size

целое число

Размер диска EBS в GiB для привода данных на каждом узле брокера.

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

encryption

словарь

Включает всю информацию, связанную с шифрованием.

Действует только для нового кластера и не может быть обновлен.

in_transit

словарь

Детали шифрования в процессе передачи.

client_broker

строка

Указывает настройки шифрования данных при передаче между клиентами и брокерами. Возможные значения: TLS — клиент-брокерское взаимодействие разрешено только с TLS. TLS_PLAINTEXT — клиент-брокерское взаимодействие разрешено для данных как с TLS, так и без шифрования. PLAINTEXT — клиент-брокерское взаимодействие разрешено только без шифрования.

Варианты:

  • "TLS" ← (по умолчанию)
  • "TLS_PLAINTEXT"
  • "PLAINTEXT"

in_cluster

булево

При значении true указывается, что данные, передаваемые между узлами брокеров кластера, зашифрованы. При значении false передача осуществляется в открытом виде.

Варианты:

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

kms_key_id

строка

ARN ключа AWS KMS для шифрования данных в состоянии покоя. Если ключ KMS не указан, MSK создает его и использует.

END_OF_DOCUMENT_MARKER

endpoint_url

aliases: ec2_url, aws_endpoint_url, s3_url

string

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

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

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

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

enhanced_monitoring

string

Указывает уровень мониторинга для кластера MSK.

Варианты:

  • "DEFAULT" ← (default)
  • "PER_BROKER"
  • "PER_TOPIC_PER_BROKER"
  • "PER_TOPIC_PER_PARTITION"

instance_type

string

Тип экземпляров Amazon EC2, которые будут использоваться для брокеров Kafka.

Варианты:

  • "kafka.t3.small" ← (default)
  • "kafka.m5.large"
  • "kafka.m5.xlarge"
  • "kafka.m5.2xlarge"
  • "kafka.m5.4xlarge"
  • "kafka.m5.8xlarge"
  • "kafka.m5.12xlarge"
  • "kafka.m5.16xlarge"
  • "kafka.m5.24xlarge"
  • "kafka.m7g.large"
  • "kafka.m7g.xlarge"
  • "kafka.m7g.2xlarge"
  • "kafka.m7g.4xlarge"
  • "kafka.m7g.8xlarge"
  • "kafka.m7g.12xlarge"
  • "kafka.m7g.16xlarge"

logging

dictionary

Конфигурация логирования.

cloudwatch

dictionary

Подробная информация о назначении журналов брокеров в CloudWatch Logs.

enabled

boolean

Указывает, отправляются ли журналы брокеров в указанное назначение CloudWatch Logs.

Варианты:

  • false ← (default)
  • true

log_group

string

Группа журналов CloudWatch, которая является назначением для журналов брокеров.

firehose

dictionary

Подробная информация о потоке доставки Kinesis Data Firehose, который является назначением для журналов брокеров.

delivery_stream

string

Поток доставки Kinesis Data Firehose, который является назначением для журналов брокеров.

enabled

boolean

Указывает, отправляются ли журналы брокеров в указанный поток доставки Kinesis Data Firehose.

Варианты:

  • false ← (default)
  • true

s3

dictionary

Подробная информация о назначении Amazon S3 для журналов брокеров.

bucket

string

Имя корзины S3, которая является назначением для журналов брокеров.

enabled

boolean

Указывает, отправляются ли журналы брокеров в указанное назначение Amazon S3.

Варианты:

  • false ← (default)
  • true

prefix

string

Префикс S3, который является назначением для журналов брокеров.

name

string / required

Имя кластера.

nodes

integer

Количество узлов брокеров в кластере. Должно быть больше или равно двум.

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

open_monitoring

dictionary

Настройки открытого мониторинга.

jmx_exporter

boolean

Указывает, хотите ли вы включить или отключить JMX Exporter.

Варианты:

  • false ← (default)
  • true

node_exporter

boolean

Указывает, хотите ли вы включить или отключить Node Exporter.

Варианты:

  • false ← (default)
  • true

profile

aliases: 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 ← (по умолчанию)

region

aliases: 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

aliases: 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.

security_groups

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

AWS группы безопасности для ассоциации с интерфейсами эластичной сети, чтобы указать, кто может подключаться к кластеру Amazon MSK и взаимодействовать с ним. Если вы не укажете группу безопасности, Amazon MSK использует группу безопасности по умолчанию, связанную с VPC.

session_token

aliases: 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) кластера.

Варианты:

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

subnets

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

Список подсетей для подключения в виртуальной частной сети клиента (VPC). AWS создаёт интерфейсы эластичной сети внутри этих подсетей. Приложения клиента используют интерфейсы эластичной сети для получения и обработки данных.

Подсети клиента не могут находиться в зоне доступности us-east-1e.

Этот параметр обязателен, когда state=present.

tags

aliases: resource_tags

словарь

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

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

validate_certs

логическое

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

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

Варианты:

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

version

строка

Версия Apache Kafka.

Эта версия должна существовать в данной конфигурации.

Этот параметр обязателен, когда state=present.

wait

boolean

Нужно ли ожидать, пока кластер будет доступен или удален.

Варианты:

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

wait_timeout

integer

Сколько секунд ждать. Создание кластера может занять до 20-30 минут.

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

Примечания

Примечание

  • Все операции требуют много времени, например, создание занимает 20-30 минут, обновление версии Kafka – более одного часа, обновление конфигурации – 10-15 минут;
  • Брокеры кластера равномерно распределяются по нескольким зонам доступности, количество которых равно количеству подсетей.
  • Внимание: Для модулей переменные среды и файлы конфигурации считываются из контекста хоста Ansible, а не из контекста контроллера. Поэтому файлы, возможно, нужно будет явно скопировать на хост. Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются из контекста контроллера Ansible, а не из контекста хоста.
  • AWS SDK (boto3), который использует Ansible, также может считывать значения по умолчанию для учетных данных и других настроек, таких как регион, из своих файлов конфигурации в контексте хоста Ansible (обычно ~/.aws/credentials). Дополнительную информацию см. в https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

- community.aws.msk_cluster:
    name: kafka-cluster
    state: present
    version: 2.6.1
    nodes: 6
    ebs_volume_size: "{{ aws_msk_options.ebs_volume_size }}"
    subnets:
      - subnet-e3b48ce7c25861eeb
      - subnet-2990c8b25b07ddd43
      - subnet-d9fbeaf46c54bfab6
    wait: true
    wait_timeout: 1800
    configuration_arn: arn:aws:kafka:us-east-1:123456789012:configuration/kafka-cluster-configuration/aaaaaaaa-bbbb-4444-3333-ccccccccc-1
    configuration_revision: 1

- community.aws.msk_cluster:
    name: kafka-cluster
    state: absent

Значения возврата

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

Ключ

Описание

bootstrap_broker_string

complex

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

Возвращается: state=present и состояние кластера ACTIVE

plain

string

Строка, содержащая одну или несколько пар имя_хоста:порт.

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

tls

string

Строка, содержащая одну или несколько пар DNS-имен (или IP) и портов TLS.

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

cluster_info

dictionary

Описание кластера MSK.

Возвращается: state=present

response

dictionary

Ответ от фактического вызова API.

Возвращается: всегда

Пример: {}

Авторы

  • Даниил Купченко (@oukooveu)

Ссылки на сборку

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

© 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/msk_cluster_module.html

Spec-Zone.ru

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