Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • AI Studio
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for OpenSearch
  • Начало работы
    • Все инструкции
      • Информация об имеющихся кластерах
      • Создание кластера
        • Изменение настроек кластера
        • Обновление версии OpenSearch
        • Управление плагинами
      • Остановка и запуск кластера
      • Управление резервными копиями
      • Настройка доступа к Object Storage
      • Удаление кластера
    • Управление пользователями
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Вопросы и ответы

В этой статье:

  • Изменить сервисный аккаунт
  • Изменить пароль пользователя admin
  • Изменить настройки OpenSearch
  • Изменить дополнительные настройки кластера
  • Изменить группы безопасности
  1. Пошаговые инструкции
  2. Кластеры
  3. Изменение параметров
  4. Изменение настроек кластера

Изменение настроек кластера OpenSearch

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 24 апреля 2025 г.
  • Изменить сервисный аккаунт
  • Изменить пароль пользователя admin
  • Изменить настройки OpenSearch
  • Изменить дополнительные настройки кластера
  • Изменить группы безопасности

После создания кластера вы можете изменить:

  • сервисный аккаунт;
  • пароль пользователя admin;
  • настройки OpenSearch;
  • дополнительные настройки кластера;
  • группы безопасности.

Помимо этого вы можете:

  • обновить версию OpenSearch;
  • изменить конфигурацию групп хостов;
  • переместить группы хостов в другую зону доступности.

Изменить сервисный аккаунтИзменить сервисный аккаунт

Для привязки сервисного аккаунта к кластеру Managed Service for OpenSearch назначьте вашему аккаунту в Yandex Cloud роль iam.serviceAccounts.user или выше.

Важно

Если для доступа к объектам из Object Storage в кластере уже используется сервисный аккаунт, то его смена может привести к недоступности этих объектов и нарушению работы кластера. Перед изменением настроек сервисного аккаунта убедитесь, что кластер не использует соответствующие объекты.

О настройке сервисного аккаунта читайте в разделе Настройка доступа к Object Storage.

Консоль управления
CLI
Terraform
REST API
gRPC API

Чтобы изменить сервисный аккаунт, привязанный к кластеру Managed Service for OpenSearch:

  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
  2. Выберите кластер и нажмите кнопку Редактировать на панели сверху.
  3. В поле Сервисный аккаунт выберите аккаунт из списка или создайте новый. Подробнее о настройке сервисного аккаунта см. в разделе Настройка доступа к Object Storage.
  4. Нажмите кнопку Сохранить.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы изменить сервисный аккаунт, привязанный к кластеру Managed Service for OpenSearch, выполните команду:

yc managed-opensearch cluster update <имя_или_идентификатор_кластера> \
   --service-account-name <имя_сервисного_аккаунта>

Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.

Подробнее о настройке сервисного аккаунта см. в разделе Настройка доступа к Object Storage.

Чтобы изменить сервисный аккаунт, привязанный к кластеру Managed Service for OpenSearch:

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    Полный список доступных для изменения полей конфигурации кластера Managed Service for OpenSearch см. в документации провайдера Terraform.

  2. Укажите в поле service_account_id идентификатор сервисного аккаунта:

    resource "yandex_mdb_opensearch_cluster" "<имя_кластера>" {
        ...
        service_account_id = "<идентификатор_сервисного_аккаунта>"
    }
    

    Подробнее о настройке сервисного аккаунта см. в разделе Настройка доступа к Object Storage.

  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Воспользуйтесь методом Cluster.Update и выполните запрос, например, с помощью cURL:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask (одной строкой через запятую).

    curl \
        --request PATCH \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --header "Content-Type: application/json" \
        --url 'https://mdb.api.cloud.yandex.net/managed-opensearch/v1/clusters/<идентификатор_кластера>' \
        --data '{
                    "updateMask": "serviceAccountId",
                    "serviceAccountId": "<идентификатор_сервисного_аккаунта>"
                }'
    

    Где:

    • updateMask — перечень изменяемых параметров в одну строку через запятую.

      В данном случае передается только один параметр.

    • serviceAccountId — идентификатор сервисного аккаунта, используемого для работы с кластером.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  3. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом ClusterService.Update и выполните запрос, например, с помощью gRPCurl:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask (в виде массива строк paths[]).

    Формат перечисления настроек
    "update_mask": {
        "paths": [
            "<настройка_1>",
            "<настройка_2>",
            ...
            "<настройка_N>"
        ]
    }
    
    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/opensearch/v1/cluster_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
                "cluster_id": "<идентификатор_кластера>",
                "update_mask": {
                    "paths": [
                        "service_account_id"
                    ]
                },
                "service_account_id": "<идентификатор_сервисного_аккаунта>"
            }' \
    mdb.api.cloud.yandex.net:443 \
    yandex.cloud.mdb.opensearch.v1.ClusterService.Update
    

    Где:

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      В данном случае передается только один параметр.

    • service_account_id — идентификатор сервисного аккаунта, используемого для работы с кластером.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Изменить пароль пользователя adminИзменить пароль пользователя admin

Консоль управления
CLI
Terraform
REST API
gRPC API
  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
  2. Выберите кластер и нажмите кнопку Редактировать на панели сверху.
  3. В поле Пароль пользователя admin укажите новый пароль.
  4. Нажмите кнопку Сохранить.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы изменить пароль пользователя admin для кластера, укажите новый пароль одним из возможных способов:

  • Ввод пароля открытым текстом (менее безопасный способ).

    yc managed-opensearch cluster update <имя_или_идентификатор_кластера> \
       --admin-password <новый_пароль>
    
  • Автоматическая генерация пароля. Сгенерированный пароль будет выведен в консоль.

    yc managed-opensearch cluster update <имя_или_идентификатор_кластера> \
       --generate-admin-password
    

Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    Полный список доступных для изменения полей конфигурации кластера Managed Service for OpenSearch см. в документации провайдера Terraform.

  2. Измените в описании кластера значение поля admin_password в блоке config:

    resource "yandex_mdb_opensearch_cluster" "<имя_кластера>" {
        ...
        config {
            admin_password = "<новый_пароль_пользователя-администратора>"
        }
    }
    
  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Воспользуйтесь методом Cluster.Update и выполните запрос, например, с помощью cURL:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask (одной строкой через запятую).

    curl \
        --request PATCH \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --header "Content-Type: application/json" \
        --url 'https://mdb.api.cloud.yandex.net/managed-opensearch/v1/clusters/<идентификатор_кластера>' \
        --data '{
                    "updateMask": "configSpec.adminPassword",
                    "configSpec": {
                        "adminPassword": "<новый_пароль>"
                    }
                }'
    

    Где:

    • updateMask — перечень изменяемых параметров в одну строку через запятую.

      В данном случае передается только один параметр.

    • configSpec.adminPassword — новый пароль пользователя admin.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  3. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом ClusterService.Update и выполните запрос, например, с помощью gRPCurl:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask (в виде массива строк paths[]).

    Формат перечисления настроек
    "update_mask": {
        "paths": [
            "<настройка_1>",
            "<настройка_2>",
            ...
            "<настройка_N>"
        ]
    }
    
    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/opensearch/v1/cluster_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
                "cluster_id": "<идентификатор_кластера>",
                "update_mask": {
                    "paths": [
                        "config_spec.admin_password"
                    ]
                },
                "config_spec": {
                    "admin_password": "<новый_пароль>"
                }
            }' \
    mdb.api.cloud.yandex.net:443 \
    yandex.cloud.mdb.opensearch.v1.ClusterService.Update
    

    Где:

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      В данном случае передается только один параметр.

    • config_spec.admin_password — новый пароль пользователя admin.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Изменить настройки OpenSearchИзменить настройки OpenSearch

CLI
REST API
gRPC API

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Выполните команду и передайте в ней список настроек, которые хотите изменить:

yc managed-opensearch cluster update <имя_или_идентификатор_кластера> \
   --max-clause-count <количество_булевых_выражений> \
   --fielddata-cache-size <объем_кучи_JVM> \
   --reindex-remote-whitelist <адрес_хоста>:<порт>

Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.

Настройки в команде:

  • --max-clause-count — максимально допустимое количество булевых выражений (boolean clauses) в запросе. Подробнее см. в документации OpenSearch.
  • --fielddata-cache-size — объем кучи JVM, который выделен для структуры данных fielddata. Можно указать абсолютное значение или проценты, например, 512mb или 50%. Подробнее см. в документации OpenSearch.
  • --reindex-remote-whitelist — список удаленных хостов, из индекса которых нужно скопировать документы для переиндексации. Укажите значение параметра в формате <адрес_хоста>:<порт>. Если нужно указать несколько хостов, перечислите значения через запятую. Подробнее см. в документации OpenSearch.
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Воспользуйтесь методом Cluster.Update и выполните запрос, например, с помощью cURL:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask (одной строкой через запятую).

    curl \
        --request PATCH \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --header "Content-Type: application/json" \
        --url 'https://mdb.api.cloud.yandex.net/managed-opensearch/v1/clusters/<идентификатор_кластера>' \
        --data '{
                    "updateMask": "configSpec.opensearchSpec.opensearchConfig_2.maxClauseCount,configSpec.opensearchSpec.opensearchConfig_2.fielddataCacheSize,configSpec.opensearchSpec.opensearchConfig_2.reindexRemoteWhitelist",
                    "configSpec": {
                        "opensearchSpec": {
                            "opensearchConfig_2": {
                                "maxClauseCount": "<количество_булевых_выражений>",
                                "fielddataCacheSize": "<объем_кучи_JVM>",
                                "reindexRemoteWhitelist": "<адрес_хоста>:9200"
                            }
                        }
                    }
                }'
    

    Где:

    • updateMask — перечень изменяемых параметров в одну строку через запятую.

    • configSpec.opensearchSpec.opensearchConfig_2 — настройки OpenSearch:

      • maxClauseCount — новое максимально допустимое количество булевых выражений. Подробнее см. в документации OpenSearch.

      • fielddataCacheSize — новый объем кучи JVM, выделенный для структуры данных fielddata. Можно указать абсолютное значение или проценты, например, 512mb или 50%. Подробнее см. в документации OpenSearch.

      • reindexRemoteWhitelist — новый список удаленных хостов, из индекса которых нужно скопировать документы для переиндексации. Укажите FQDN хоста и через двоеточие порт 9200. Чтобы указать несколько хостов, перечислите их через запятую, указанную после порта. Подробнее см. в документации OpenSearch.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  3. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом ClusterService.Update и выполните запрос, например, с помощью gRPCurl:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask (в виде массива строк paths[]).

    Формат перечисления настроек
    "update_mask": {
        "paths": [
            "<настройка_1>",
            "<настройка_2>",
            ...
            "<настройка_N>"
        ]
    }
    
    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/opensearch/v1/cluster_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
                "cluster_id": "<идентификатор_кластера>",
                "update_mask": {
                    "paths": [
                        "config_spec.opensearch_spec.opensearch_config_2.max_clause_count",
                        "config_spec.opensearch_spec.opensearch_config_2.fielddata_cache_size",
                        "config_spec.opensearch_spec.opensearch_config_2.reindex_remote_whitelist"
                    ]
                },
                "config_spec": {
                    "opensearch_spec": {
                        "opensearch_config_2": {
                            "max_clause_count": "<количество_булевых_выражений>",
                            "fielddata_cache_size": "<объем_кучи_JVM>",
                            "reindex_remote_whitelist": "<адрес_хоста>:9200"
                        }
                    }
                }
            }' \
    mdb.api.cloud.yandex.net:443 \
    yandex.cloud.mdb.opensearch.v1.ClusterService.Update
    

    Где:

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      В данном случае передается только один параметр.

    • config_spec.opensearch_spec.opensearch_config_2 — настройки OpenSearch:

      • max_clause_count — новое максимально допустимое количество булевых выражений. Подробнее см. в документации OpenSearch.

      • fielddata_cache_size — новый объем кучи JVM, выделенный для структуры данных fielddata. Можно указать абсолютное значение или проценты, например, 512mb или 50%. Подробнее см. в документации OpenSearch.

      • reindex_remote_whitelist — новый список удаленных хостов, из индекса которых нужно скопировать документы для переиндексации. Укажите FQDN хоста и через двоеточие порт 9200. Чтобы указать несколько хостов, перечислите их через запятую, указанную после порта. Подробнее см. в документации OpenSearch.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Изменить дополнительные настройки кластераИзменить дополнительные настройки кластера

Консоль управления
CLI
Terraform
REST API
gRPC API
  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.

  2. Выберите кластер и нажмите кнопку Редактировать на панели сверху.

  3. Измените дополнительные настройки кластера:

    • Окно обслуживания — настройки времени технического обслуживания:

      • Чтобы разрешить проведение технического обслуживания в любое время, выберите пункт произвольное (по умолчанию).
      • Чтобы указать предпочтительное время начала обслуживания, выберите пункт по расписанию и укажите нужные день недели и час дня по UTC. Например, можно выбрать время, когда кластер наименее загружен.

      Операции по техническому обслуживанию проводятся для включенных и выключенных кластеров. Они могут включать в себя: обновление СУБД, применение патчей и так далее.

    • Защита от удаления — управляет защитой кластера от непреднамеренного удаления.

      Включенная защита кластера от удаления не помешает удалить пользователя или подключиться к кластеру вручную и удалить данные.

  4. Нажмите кнопку Сохранить.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Выполните команду и передайте в ней список настроек, которые хотите изменить:

yc managed-opensearch cluster update <имя_или_идентификатор_кластера> \
   --maintenance schedule=<тип_технического_обслуживания>,`
                `weekday=<день_недели>,`
                `hour=<час_дня> \
   --delete-protection \
   --data-transfer-access=<true_или_false> \
   --serverless-access=<true_или_false>

Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.

Настройки в команде:

  • --maintenance — настройки времени технического обслуживания (в т. ч. для выключенных кластеров):

    • Чтобы разрешить проведение технического обслуживания в любое время, укажите --maintenance schedule=anytime.

    • Чтобы указать предпочтительное время начала обслуживания, укажите --maintenance schedule=weekly,weekday=<день_недели>,hour=<час_дня_по_UTC>. Тогда техническое обслуживание будет проходить каждую неделю в обозначенный день и время.

      Возможные значения параметра weekday: mon, tue, wed, thu, fry, sat, sun. В параметре hour укажите, во сколько должно завершиться техническое обслуживание. Например, если указать 14, техническое обслуживание будет проходить с 13:00 до 14:00 по UTC.

  • --deletion-protection — защита кластера от непреднамеренного удаления: true или false.

    Включенная защита кластера от удаления не помешает удалить пользователя или подключиться к кластеру вручную и удалить данные.

  • --serverless-access — доступ из Yandex Serverless Containers: true или false.

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    Полный список доступных для изменения полей конфигурации кластера Managed Service for OpenSearch см. в документации провайдера Terraform.

  2. Чтобы изменить время технического обслуживания (в т. ч. для выключенных кластеров), укажите настройки в параметре maintenance_window:

    resource "yandex_mdb_opensearch_cluster" "<имя_кластера>" {
        ...
        maintenance_window {
            type = "<частота_технического_обслуживания>"
            hour = <час_дня>
            day = "<день_недели>"
        }
    }
    

    Укажите в параметрах:

    • type — значение ANYTIME, чтобы разрешить проведение технического обслуживания в любое время, или WEEKLY, чтобы проводить техническое обслуживание каждую неделю.
    • hour — час дня по UTC, когда завершается техническое обслуживание. Например, если указать 14, техническое обслуживание будет проходить с 13:00 до 14:00 по UTC.
    • day — день недели, когда проводится техническое обслуживание. Доступные значения: MON, TUE, WED, THU, FRI, SAT, SUN.
  3. Чтобы включить защиту кластера от непреднамеренного удаления пользователем вашего облака, добавьте к описанию кластера поле deletion_protection со значением true:

    resource "yandex_mdb_opensearch_cluster" "<имя_кластера>" {
        ...
        deletion_protection = <true_или_false>
    }
    

    Где deletion_protection — защита кластера от непреднамеренного удаления.

    Включенная защита кластера от удаления не помешает удалить пользователя или подключиться к кластеру вручную и удалить данные.

  4. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  5. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Воспользуйтесь методом Cluster.Update и выполните запрос, например, с помощью cURL:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask (одной строкой через запятую).

    curl \
        --request PATCH \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --header "Content-Type: application/json" \
        --url 'https://mdb.api.cloud.yandex.net/managed-opensearch/v1/clusters/<идентификатор_кластера>' \
        --data '{
                    "updateMask": "configSpec.access,deletionProtection,maintenanceWindow",
                    "configSpec": {
                        "access": {
                            "dataTransfer": <доступ_из_Data_Transfer:_true_или_false>,
                            "serverless": <доступ_из_Serverless_Containers:_true_или_false>
                        }
                    },
                    "deletionProtection": <защита_кластера_от_удаления:_true_или_false>,
                    "maintenanceWindow": {
                        "weeklyMaintenanceWindow": {
                            "day": "<день_недели>",
                            "hour": "<час>"
                        }
                    }
                }'
    

    Где:

    • updateMask — перечень изменяемых параметров в одну строку через запятую.

    • access — настройки доступа кластера к следующим сервисам Yandex Cloud:

      • dataTransfer — Yandex Data Transfer;
      • serverless — Yandex Serverless Containers.
    • deletionProtection — защита кластера от непреднамеренного удаления.

      Включенная защита кластера от удаления не помешает удалить пользователя или подключиться к кластеру вручную и удалить данные.

    • maintenanceWindow.weeklyMaintenanceWindow — расписание окна технического обслуживания:

      • day — день недели в формате DDD, когда должно проходить обслуживание.
      • hour — час в формате HH, когда должно проходить обслуживание. Возможные значения: от 1 до 24. Задается в часовом поясе UTC.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  3. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом ClusterService.Update и выполните запрос, например, с помощью gRPCurl:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask (в виде массива строк paths[]).

    Формат перечисления настроек
    "update_mask": {
        "paths": [
            "<настройка_1>",
            "<настройка_2>",
            ...
            "<настройка_N>"
        ]
    }
    
    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/opensearch/v1/cluster_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
                "cluster_id": "<идентификатор_кластера>",
                "update_mask": {
                    "paths": [
                        "config_spec.access",
                        "deletion_protection",
                        "maintenance_window"
                    ]
                },
                "config_spec": {
                    "access": {
                        "data_transfer": <доступ_из_Data_Transfer:_true_или_false>,
                        "serverless": <доступ_из_Serverless_Containers:_true_или_false>
                    }
                },
                "deletion_protection": <защита_кластера_от_удаления:_true_или_false>,
                "maintenance_window": {
                    "weekly_maintenance_window": {
                        "day": "<день_недели>",
                        "hour": "<час>"
                    }
                }
            }' \
    mdb.api.cloud.yandex.net:443 \
    yandex.cloud.mdb.opensearch.v1.ClusterService.Update
    

    Где:

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      В данном случае передается только один параметр.

    • access — настройки доступа кластера к следующим сервисам Yandex Cloud:

      • data_transfer — Yandex Data Transfer;
      • serverless — Yandex Serverless Containers.
    • deletion_protection — защита кластера от непреднамеренного удаления.

      Включенная защита кластера от удаления не помешает удалить пользователя или подключиться к кластеру вручную и удалить данные.

    • maintenance_window.weekly_maintenance_window — расписание окна технического обслуживания:

      • day — день недели в формате DDD, когда должно проходить обслуживание.
      • hour — час в формате HH, когда должно проходить обслуживание. Возможные значения: от 1 до 24. Задается в часовом поясе UTC.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Изменить группы безопасностиИзменить группы безопасности

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

Консоль управления
CLI
Terraform
REST API
gRPC API
  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
  2. Выберите кластер и нажмите кнопку Редактировать на панели сверху.
  3. В блоке Сетевые настройки выберите группы безопасности для сетевого трафика кластера.
  4. Нажмите кнопку Сохранить.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы изменить список групп безопасности для кластера, укажите нужные группы безопасности в команде:

yc managed-opensearch cluster update <имя_или_идентификатор_кластера> \
   --security-group-ids <список_идентификаторов_групп_безопасности>

Если нужно указать несколько групп, перечислите их через запятую.

Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    Полный список доступных для изменения полей конфигурации кластера Managed Service for OpenSearch см. в документации провайдера Terraform.

  2. В поле security_group_ids перечислите через запятую идентификаторы групп безопасности:

    resource "yandex_mdb_opensearch_cluster" "<имя_кластера>" {
        ...
        security_group_ids = [ "<группы_безопасности>" ]
    }
    
  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Воспользуйтесь методом Cluster.Update и выполните запрос, например, с помощью cURL:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask (одной строкой через запятую).

    curl \
        --request PATCH \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --header "Content-Type: application/json" \
        --url 'https://mdb.api.cloud.yandex.net/managed-opensearch/v1/clusters/<идентификатор_кластера>' \
        --data '{
                    "updateMask": "securityGroupIds",
                    "securityGroupIds": [
                        "<идентификатор_группы_безопасности_1>",
                        "<идентификатор_группы_безопасности_2>",
                        ...
                        "<идентификатор_группы_безопасности_N>"
                    ]
                }'
    

    Где:

    • updateMask — перечень изменяемых параметров в одну строку через запятую.

      В данном случае передается только один параметр.

    • securityGroupIds — идентификаторы групп безопасности.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  3. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом ClusterService.Update и выполните запрос, например, с помощью gRPCurl:

    Важно

    Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask (в виде массива строк paths[]).

    Формат перечисления настроек
    "update_mask": {
        "paths": [
            "<настройка_1>",
            "<настройка_2>",
            ...
            "<настройка_N>"
        ]
    }
    
    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/opensearch/v1/cluster_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
                "cluster_id": "<идентификатор_кластера>",
                "update_mask": {
                    "paths": [
                        "security_group_ids"
                    ]
                },
                "security_group_ids": [
                    "<идентификатор_группы_безопасности_1>",
                    "<идентификатор_группы_безопасности_2>",
                    ...
                    "<идентификатор_группы_безопасности_N>"
                ]
            }' \
    mdb.api.cloud.yandex.net:443 \
    yandex.cloud.mdb.opensearch.v1.ClusterService.Update
    

    Где:

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      В данном случае передается только один параметр.

    • security_group_ids — идентификаторы групп безопасности.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Была ли статья полезна?

Предыдущая
Настройка SAML-аутентификации
Следующая
Обновление версии OpenSearch
Проект Яндекса
© 2025 ООО «Яндекс.Облако»