Spec-Zone.ru › Ansible

модуль community.aws.opensearch — создает домен OpenSearch или ElasticSearch

Примечание

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

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

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

Чтобы использовать модуль в плейбуке, укажите: community.aws.opensearch.

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

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры

Краткое описание

  • Создает или изменяет домен Amazon OpenSearch Service.

Требования

На узле, выполняющем этот модуль, должны быть установлены следующие компоненты.

  • python >= 3.6
  • boto3 >= 1.34.0
  • botocore >= 1.34.0

Параметры

Параметр

Комментарии

access_key

aliases: aws_access_key_id, aws_access_key

string

Идентификатор ключа доступа 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 в порядке убывания приоритета.

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

Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для соответствия AWS SDK botocore.

access_policies

dictionary

Политика доступа IAM в виде строки в формате JSON.

advanced_security_options

dictionary

Задает дополнительные параметры безопасности.

enabled

boolean

True, если расширенная безопасность включена.

Чтобы использовать расширенные параметры безопасности, необходимо включить шифрование между узлами.

Варианты:

  • false
  • true

internal_user_database_enabled

boolean

True, если внутренняя база данных пользователей включена.

Варианты:

  • false
  • true

master_user_options

dictionary

Учетные данные пользователя master: имя пользователя и пароль, ARN или и то и другое.

master_user_arn

string

ARN пользователя master (если IAM включен).

master_user_name

string

Имя пользователя master, которое хранится во внутренней базе данных домена Amazon OpenSearch Service.

master_user_password

string

Пароль пользователя master, который хранится во внутренней базе данных домена Amazon OpenSearch Service.

saml_options

dictionary

Конфигурация приложения SAML для домена.

enabled

boolean

True, если SAML включен.

Чтобы использовать аутентификацию SAML, необходимо включить детальный контроль доступа.

Аутентификацию SAML для OpenSearch Dashboards можно включить только в существующих доменах, но не при создании новых.

Для домена одновременно поддерживается только один метод аутентификации в Dashboards. Если для OpenSearch Dashboards включена аутентификация Amazon Cognito, ее необходимо отключить, прежде чем включать SAML.

Варианты:

  • false
  • true

idp

dictionary

Информация о поставщике удостоверений SAML.

entity_id

string

Уникальный идентификатор сущности приложения у поставщика удостоверений SAML.

metadata_content

string

Метаданные приложения SAML в формате XML.

master_backend_role

string

Роль серверной части, с которой сопоставляется пользователь master SAML.

master_user_name

string

Имя пользователя master SAML, которое хранится во внутренней базе данных домена Amazon OpenSearch Service.

roles_key

string

Элемент утверждения SAML, используемый для ролей серверной части. По умолчанию — roles.

session_timeout_minutes

integer

Продолжительность в минутах, по истечении которой сеанс пользователя становится неактивным. Допустимые значения — от 1 до 1440, значение по умолчанию — 60.

subject_key

string

Элемент утверждения SAML, используемый для имени пользователя. По умолчанию — NameID.

allow_intermediate_upgrades

boolean

Если значение true, разрешить обновление домена OpenSearch через одну или несколько промежуточных версий.

Если значение false, запретить обновление домена OpenSearch через промежуточные версии. Операция обновления завершится ошибкой, если невозможно выполнить обновление непосредственно до engine_version.

Варианты:

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

auto_tune_options

dictionary

Задает параметры Auto-Tune.

desired_state

string

Требуемое состояние Auto-Tune. Допустимые значения: ENABLED и DISABLED.

Варианты:

  • "ENABLED"
  • "DISABLED"

maintenance_schedules

list / elements=dictionary

Список расписаний обслуживания.

cron_expression_for_recurrence

string

Выражение cron для повторяющегося расписания обслуживания.

duration

dictionary

Задает продолжительность обслуживания, ее значение и единицу измерения.

unit

string

Единица измерения продолжительности обслуживания. Допустимое значение — HOURS.

Варианты:

  • "HOURS"

value

integer

Целое число, задающее продолжительность обслуживания.

start_at

string

Метка времени начала обслуживания Auto-Tune.

aws_ca_bundle

path

Путь к пакету CA, используемому для проверки SSL-сертификатов.

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

aws_config

dictionary

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

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

cluster_config

dictionary

Параметры конфигурации кластера домена OpenSearch Service.

availability_zone_count

integer

Целое число, указывающее количество зон доступности домена при включенной поддержке зон. Если включены конечные точки VPC, это число должно совпадать с количеством подсетей.

cold_storage_options

dictionary

Задает конфигурацию ColdStorageOptions для домена.

enabled

boolean

True, чтобы включить холодное хранилище. Поддерживается в Elasticsearch 7.9 и более поздних версиях.

Варианты:

  • false
  • true

dedicated_master

boolean

Логическое значение, указывающее, включен ли выделенный главный узел.

Варианты:

  • false
  • true

dedicated_master_instance_count

integer

Общее количество выделенных главных узлов домена — активных и резервных.

dedicated_master_instance_type

string

Тип экземпляра для выделенного главного узла.

instance_count

integer

Количество экземпляров домена.

instance_type

string

Тип экземпляров, используемых для домена.

warm_count

integer

Количество узлов UltraWarm в домене.

warm_enabled

boolean

True, чтобы включить хранилище UltraWarm.

Варианты:

  • false
  • true

warm_type

string

Тип экземпляра для теплых узлов домена OpenSearch.

zone_awareness

boolean

Логическое значение, указывающее, включена ли поддержка зон.

Варианты:

  • false
  • true

cognito_options

dictionary

Параметры настройки OpenSearch Service для использования аутентификации Amazon Cognito в OpenSearch Dashboards.

enabled

boolean

Параметр включения Cognito для аутентификации в OpenSearch Dashboards.

Варианты:

  • false
  • true

identity_pool_id

string

Идентификатор пула идентификации Cognito для аутентификации в OpenSearch Dashboards.

role_arn

string

ARN роли, предоставляющей OpenSearch разрешения на доступ к ресурсам Cognito.

user_pool_id

string

Идентификатор пула пользователей Cognito для аутентификации в OpenSearch Dashboards.

debug_botocore_endpoint_logs

boolean

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

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

Варианты:

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

domain_endpoint_options

dictionary

Параметры конфигурации конечной точки домена.

custom_endpoint

string

Полное доменное имя пользовательской конечной точки.

custom_endpoint_certificate_arn

string

ARN сертификата ACM для пользовательской конечной точки.

custom_endpoint_enabled

boolean

Определяет, включена ли пользовательская конечная точка для домена.

Варианты:

  • false
  • true

enforce_https

boolean

Определяет, должна ли для домена быть включена только конечная точка HTTPS.

Варианты:

  • false
  • true

tls_security_policy

string

Задает политику безопасности TLS для конечной точки HTTPS домена.

domain_name

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

Имя домена Amazon OpenSearch/ElasticSearch Service.

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

ebs_options

dictionary

Параметры настройки хранилища на базе EBS для домена OpenSearch Service.

ebs_enabled

boolean

Указывает, включено ли хранилище на базе EBS.

Варианты:

  • false
  • true

iops

integer

Количество операций ввода-вывода для тома EBS с предоставляемыми IOPS (SSD).

volume_size

integer

Целое число, указывающее размер тома EBS.

volume_type

string

Указывает тип тома для хранилища на базе EBS. «standard»|«gp2»|«io1»

encryption_at_rest_options

dictionary

Параметры для включения шифрования данных в состоянии покоя.

enabled

boolean

Следует ли шифровать данные в состоянии покоя.

Варианты:

  • false
  • true

kms_key_id

string

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

Значением должен быть ARN ключа KMS. Также можно указать идентификатор ключа KMS.

endpoint_url

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

string

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

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

engine_version

string

-> Версия движка, которую следует использовать. Например, ‘ElasticSearch_7.10’ или ‘OpenSearch_1.1’. -> Если текущая версия не совпадает с engine_version, запускается обновление кластера. -> Прямое обновление с текущей версии до engine_version может быть невозможно. В этом случае обновление выполняется поэтапно: сначала до самой новой совместимой версии, затем операция повторяется, пока кластер не будет работать на целевой версии. -> Операция обновления завершается ошибкой, если не существует пути от текущей версии до engine_version. -> Информацию о совместимости версий при обновлении см. в документации OpenSearch.

node_to_node_encryption_options

dictionary

Параметры шифрования между узлами.

enabled

boolean

Значение True включает шифрование между узлами.

Варианты:

  • false
  • true

profile

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

string

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

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

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

Параметр profile нельзя использовать одновременно с параметрами aws_access_key, aws_secret_key и session_token.

purge_tags

boolean

Если задано значение 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

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

string

Регион AWS, который следует использовать.

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

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

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

secret_key

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

string

Секретный ключ доступа 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 в порядке убывания приоритета.

Параметры secret_key и profile нельзя использовать одновременно.

Псевдоним aws_secret_access_key добавлен в выпуске 5.1.0 для согласованности с AWS botocore SDK.

session_token

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

string

Токен сеанса 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.

Параметры session_token и profile нельзя использовать одновременно.

snapshot_options

dictionary

Параметр для задания времени ежедневного автоматического создания снимка в формате UTC.

automated_snapshot_start_hour

integer

Целое число от 0 до 23, указывающее время, в которое сервис ежедневно создает автоматический снимок указанного домена Elasticsearch.

state

string

Создает или изменяет существующий домен OpenSearch.

Удаляет домен OpenSearch.

Варианты:

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

tags

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

dictionary

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

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

validate_certs

boolean

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

Настоятельно не рекомендуется устанавливать validate_certs=false; вместо этого рассмотрите возможность задать параметр aws_ca_bundle.

Варианты:

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

vpc_options

dictionary

Параметры для указания подсетей и групп безопасности конечной точки VPC.

security_groups

list / elements=string

Указывает идентификаторы групп безопасности для конечной точки VPC.

subnets

list / elements=string

Указывает идентификаторы подсетей для конечной точки VPC.

wait

boolean

Ожидать ли завершения создания, изменения или удаления OpenSearch.

Варианты:

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

wait_timeout

integer

время ожидания до прекращения ожидания, в секундах.

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

Примечания

Примечание

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

Примеры

- name: Create OpenSearch domain for dev environment, no zone awareness, no dedicated masters
  community.aws.opensearch:
    domain_name: "dev-cluster"
    engine_version: Elasticsearch_1.1
    cluster_config:
      instance_type: "t2.small.search"
      instance_count: 2
      zone_awareness: false
      dedicated_master: false
    ebs_options:
      ebs_enabled: true
      volume_type: "gp2"
      volume_size: 10
    access_policies: "{{ lookup('file', 'policy.json') | from_json }}"

- name: Create OpenSearch domain with dedicated masters
  community.aws.opensearch:
    domain_name: "my-domain"
    engine_version: OpenSearch_1.1
    cluster_config:
      instance_type: "t2.small.search"
      instance_count: 12
      dedicated_master: true
      zone_awareness: true
      availability_zone_count: 2
      dedicated_master_instance_type: "t2.small.search"
      dedicated_master_instance_count: 3
      warm_enabled: true
      warm_type: "ultrawarm1.medium.search"
      warm_count: 1
      cold_storage_options:
        enabled: false
    ebs_options:
      ebs_enabled: true
      volume_type: "io1"
      volume_size: 10
      iops: 1000
    vpc_options:
      subnets:
        - "subnet-e537d64a"
        - "subnet-e537d64b"
      security_groups:
        - "sg-dd2f13cb"
        - "sg-dd2f13cc"
    snapshot_options:
      automated_snapshot_start_hour: 13
    access_policies: "{{ lookup('file', 'policy.json') | from_json }}"
    encryption_at_rest_options:
      enabled: false
    node_to_node_encryption_options:
      enabled: false
    auto_tune_options:
      enabled: true
      maintenance_schedules:
        - start_at: "2025-01-12"
          duration:
            value: 1
            unit: "HOURS"
          cron_expression_for_recurrence: "cron(0 12 * * ? *)"
        - start_at: "2032-01-12"
          duration:
            value: 2
            unit: "HOURS"
          cron_expression_for_recurrence: "cron(0 12 * * ? *)"
    tags:
      Environment: Development
      Application: Search
    wait: true

- name: Increase size of EBS volumes for existing cluster
  community.aws.opensearch:
    domain_name: "my-domain"
    ebs_options:
      volume_size: 5
    wait: true

- name: Increase instance count for existing cluster
  community.aws.opensearch:
    domain_name: "my-domain"
    cluster_config:
      instance_count: 40
    wait: true

Авторы

  • Sebastien Rosset (@sebastien-rosset)

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

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

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

Spec-Zone.ru

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