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

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

  • Создать кластер
  • Создать копию кластера
  • Примеры
  • Создание кластера с одним хостом
  • Создание шардированного кластера
  1. Пошаговые инструкции
  2. Кластеры
  3. Создание кластера

Создание кластера MongoDB

Статья создана
Yandex Cloud
Улучшена
Обновлена 21 апреля 2025 г.
  • Создать кластер
  • Создать копию кластера
  • Примеры
    • Создание кластера с одним хостом
    • Создание шардированного кластера

Кластер MongoDB — это один или несколько хостов базы данных, между которыми можно настроить репликацию. Репликация работает по умолчанию в любом кластере из более чем 1 хоста (первичный хост принимает запросы на запись и асинхронно дублирует изменения на вторичных хостах).

Примечание

  • Количество хостов, которые можно создать вместе с кластером MongoDB, зависит от выбранного типа диска и класса хостов.
  • Доступные типы диска зависят от выбранного класса хостов.

Создать кластерСоздать кластер

Для создания кластера Managed Service for MongoDB нужна роль vpc.user и роль managed-mongodb.editor или выше. О том, как назначить роль, см. в документации Identity and Access Management.

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

Чтобы создать кластер Managed Service for MongoDB:

  1. В консоли управления выберите каталог, в котором нужно создать кластер БД.

  2. Выберите сервис Managed Service for MongoDB.

  3. Нажмите кнопку Создать кластер.

  4. В блоке Базовые параметры:

    • Введите название в поле Имя кластера. Имя кластера должно быть уникальным в рамках облака.

    • (Опционально) Введите Описание кластера.

    • Выберите окружение, в котором нужно создать кластер (после создания кластера окружение изменить невозможно):

      • PRODUCTION — для стабильных версий ваших приложений.
      • PRESTABLE — для тестирования. Prestable-окружение аналогично Production-окружению и на него также распространяется SLA, но при этом на нем раньше появляются новые функциональные возможности, улучшения и исправления ошибок. В Prestable-окружении вы можете протестировать совместимость новых версий с вашим приложением.
    • Укажите версию СУБД.

  5. В блоке Класс хоста выберите:

    • Одну из доступных платформ.
    • Тип конфигурации: memory-optimized, cpu-optimized, standard или burstable.
    • Класс хостов — он определяет технические характеристики виртуальных машин, на которых будут развернуты хосты БД. При изменении класса хостов для кластера меняются характеристики всех созданных хостов.
  6. В блоке Размер хранилища:

    • Выберите тип диска.

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

      • Сетевые HDD- и SSD-диски — с шагом 1 ГБ.
      • Локальные SSD-диски:
        • для платформ Intel Broadwell и Intel Cascade Lake — с шагом 100 ГБ;
        • для платформы Intel Ice Lake — с шагом 368 ГБ.
      • Нереплицируемые SSD-диски и cверхбыстрые сетевые SSD-диски с тремя репликами — с шагом 93 ГБ.
    • Выберите размер хранилища, который будет использоваться для данных и резервных копий. Подробнее о том, как занимают пространство резервные копии, см. в разделе Резервные копии.

  7. В блоке База данных укажите атрибуты БД:

    • Имя БД.

      Имя базы может содержать латинские буквы, цифры, нижнее подчеркивание и дефис. Максимальная длина имени — 63 символа. Имена config, local, admin и mdb_internal зарезервированы для собственных нужд Managed Service for MongoDB. Создавать БД с этими именами нельзя.

    • Имя пользователя.

    • Пароль пользователя. Минимум 8 символов.

  8. В блоке Сетевые настройки выберите:

    • Облачную сеть для размещения кластера.
    • Группы безопасности для сетевого трафика кластера. Может потребоваться дополнительная настройка групп безопасности для того, чтобы можно было подключаться к кластеру.
  9. В блоке Хосты добавьте хосты БД, создаваемые вместе с кластером:

    • Нажмите кнопку Добавить хост.
    • Выберите зону доступности.
    • Выберите подсеть в указанной зоне доступности. Если подсети нет, создайте ее.
    • Если хост должен быть доступен снаружи Yandex Cloud, включите опцию Публичный доступ.

    Чтобы обеспечить отказоустойчивость, для типов диска local-ssd и network-ssd-nonreplicated необходимо как минимум 3 хоста. Подробнее см. в разделе Хранилище.

    По умолчанию хосты создаются в разных зонах доступности. См. подробнее об управлении хостами.

  10. При необходимости задайте дополнительные настройки кластера:

    • Начало резервного копирования (UTC) — промежуток времени, в течение которого начинается резервное копирование кластера. Время указывается по UTC в 24-часовом формате. По умолчанию — 22:00 - 23:00 UTC.

    • Срок хранения автоматических резервных копий, дней

      Время, в течение которого нужно хранить созданные автоматически резервные копии. Если для такой копии истекает срок хранения, то она удаляется. Значение по умолчанию — 7 дней. Эта функциональность находится на стадии Preview. Подробнее см. в разделе Резервные копии.

      Изменение срока хранения затрагивает как новые автоматические резервные копии, так и уже существующие. Например, если изначальный срок хранения был 7 дней и оставшееся время жизни отдельной автоматической резервной копии при таком сроке — 1 день, то при увеличении срока хранения до 9 дней, оставшееся время жизни этой резервной копии будет уже 3 дня.

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

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

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

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

    • Сбор статистики — включите эту опцию, чтобы пользоваться встроенным инструментом для диагностики производительности в кластере. Эта функциональность находится на стадии Preview.

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

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

  11. При необходимости задайте настройки СУБД.

    Примечание

    Некоторые настройки MongoDB зависят от выбранного класса хостов.

  12. Нажмите кнопку Создать кластер.

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

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

Чтобы создать кластер Managed Service for MongoDB:

  1. Проверьте, есть ли в каталоге подсети для хостов кластера:

    yc vpc subnet list
    

    Если ни одной подсети в каталоге нет, создайте нужные подсети в сервисе VPC.

  2. Посмотрите описание команды CLI для создания кластера:

    yc managed-mongodb cluster create --help
    
  3. Укажите параметры кластера в команде создания (в примере приведены не все параметры):

    yc managed-mongodb cluster create \
      --name <имя_кластера> \
      --environment=<окружение> \
      --network-name <имя_сети> \
      --host zone-id=<зона_доступности>,`
            `subnet-id=<идентификатор_подсети>,`
            `assign-public-ip=<публичный_доступ_к_хосту>,`
            `hidden=<скрытие_хоста>,`
            `secondary-delay-secs=<отставание_реплики_в_секундах>,`
            `priority=<приоритет_хоста> \
      --mongod-resource-preset <класс_хоста> \
      --user name=<имя_пользователя>,password=<пароль_пользователя> \
      --database name=<имя_БД> \
      --mongod-disk-type <network-hdd|network-ssd|network-ssd-nonreplicated|local-ssd> \
      --mongod-disk-size <размер_хранилища_ГБ> \
      --performance-diagnostics=<включить_диагностику> \
      --deletion-protection
    

    Идентификатор подсети subnet-id необходимо указывать, если в выбранной зоне доступности создано 2 и больше подсетей.

    Где:

    • --environment — окружение: prestable или production.

    • --host — параметры хоста:

      • zone-id — зона доступности.
      • subnet-id — идентификатор подсети. Необходимо указывать, если в выбранной зоне доступности создано две или больше подсетей.
      • assign-public-ip — доступность хоста из интернета по публичному IP-адресу: true или false.
      • hidden — скрытие хоста: true или false. Если хост скрыт, он будет доступен для чтения только для прямых подключений (например, чтобы делать с него резервные копии, не добавляя нагрузки на кластер).
      • secondary-delay-secs — отставание реплики от мастера в секундах. Может быть полезно для восстановления данных в случае ошибочных операций.
      • priority — приоритет назначения хоста мастером.
    • --mongod-disk-type — тип диска.

    • --performance-diagnostics — включить диагностику производительности кластера: true или false.

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

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

    Имя базы может содержать латинские буквы, цифры, нижнее подчеркивание и дефис. Максимальная длина имени — 63 символа. Имена config, local, admin и mdb_internal зарезервированы для собственных нужд Managed Service for MongoDB. Создавать БД с этими именами нельзя.

    Примечание

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

Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.

Terraform распространяется под лицензией Business Source License, а провайдер Yandex Cloud для Terraform — под лицензией MPL-2.0.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.

Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

Чтобы создать кластер Managed Service for MongoDB:

  1. Опишите в конфигурационном файле параметры ресурсов, которые необходимо создать:

    • Кластер базы данных — описание кластера и его хостов.

    • Сеть — описание облачной сети, в которой будет расположен кластер. Если подходящая сеть у вас уже есть, описывать ее повторно не нужно.

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

    Пример структуры конфигурационного файла:

    resource "yandex_mdb_mongodb_cluster" "<имя_кластера>" {
      name                = "<имя_кластера>"
      environment         = "<окружение>"
      network_id          = "<идентификатор_сети>"
      security_group_ids  = [ "<список_идентификаторов_групп_безопасности>" ]
      deletion_protection = <защита_кластера_от_удаления>
    
      cluster_config {
        version = "<версия_MongoDB>"
      }
    
      resources_mongod {
        resource_preset_id = "<класс_хоста>"
        disk_type_id       = "<тип_диска>"
        disk_size          = <размер_хранилища_ГБ>
      }
    
      host {
        zone_id          = "<зона_доступности>"
        subnet_id        = "<идентификатор_подсети>"
        assign_public_ip = <публичный_доступ>
        host_parameters {
          hidden               = <скрытие_хоста>
          secondary_delay_secs = <отставание_реплики_в_секундах>
          priority             = <приоритет_хоста>
        }
      }
    }
    
    resource "yandex_mdb_mongodb_database" "<имя_БД>" {
      cluster_id = "<идентификатор_кластера>"
      name       = "<имя_БД>"
    }
    
    resource "yandex_mdb_mongodb_user" "<имя_пользователя>" {
      cluster_id = <идентификатор_кластера>
      name       = "<имя_пользователя>"
      password   = "<пароль>"
      permission {
        database_name = "<имя_БД>"
        roles         = [ "<список_ролей_пользователя>" ]
      }
      depends_on = [
        yandex_mdb_mongodb_database.<имя_БД>
      ]
    }
    
    resource "yandex_vpc_network" "<имя_сети>" { name = "<имя_сети>" }
    
    resource "yandex_vpc_subnet" "<имя_подсети>" {
      name           = "<имя_подсети>"
      zone           = "<зона_доступности>"
      network_id     = "<идентификатор_сети>"
      v4_cidr_blocks = ["<диапазон>"]
    }
    

    Где:

    • environment — окружение: PRESTABLE или PRODUCTION.

    • host — параметры хоста:

      • zone_id — зона доступности.
      • subnet_id — идентификатор подсети в выбранной зоне доступности.
      • assign_public_ip — публичный доступ к хосту: true или false.
      • host_parameters — дополнительные параметры хоста:
        • hidden — скрытие хоста: true или false. Если хост скрыт, он будет доступен для чтения только для прямых подключений (например, чтобы делать с него резервные копии, не добавляя нагрузки на кластер).
        • secondary_delay_secs — отставание реплики от мастера в секундах. Может быть полезно для восстановления данных в случае ошибочных операций.
        • priority — приоритет назначения хоста мастером.
    • deletion_protection — защита кластера от непреднамеренного удаления: true или false.

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

    • version — версия MongoDB: 6.0 или 7.0.

    Имя базы может содержать латинские буквы, цифры, нижнее подчеркивание и дефис. Максимальная длина имени — 63 символа. Имена config, local, admin и mdb_internal зарезервированы для собственных нужд Managed Service for MongoDB. Создавать БД с этими именами нельзя.

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

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

    Где:

    • type — тип технического обслуживания. Принимает значения:
      • ANYTIME — в любое время.
      • WEEKLY — по расписанию.
    • day — день недели для типа WEEKLY в формате DDD. Например, MON.
    • hour — час дня по UTC для типа WEEKLY в формате HH. Например, 21.

    Более подробную информацию о ресурсах, которые вы можете создать с помощью Terraform, см. в документации провайдера.

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

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

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

      terraform validate
      

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

  3. Создайте кластер.

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

      terraform plan
      

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

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

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

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

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

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

    Ограничения по времени

    Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MongoDB:

    • создание, в т. ч. путем восстановления из резервной копии, — 30 минут;
    • изменение — 60 минут.

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

    Как изменить эти ограничения?

    Добавьте к описанию кластера блок timeouts, например:

    resource "yandex_mdb_mongodb_cluster" "<имя_кластера>" {
      ...
      timeouts {
        create = "1h30m" # Полтора часа
        update = "2h"    # 2 часа
      }
    }
    
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "folderId": "<идентификатор_каталога>",
      "name": "<имя_кластера>",
      "environment": "<окружение>",
      "networkId": "<идентификатор_сети>",
      "securityGroupIds": [
        "<идентификатор_группы_безопасности_1>",
        "<идентификатор_группы_безопасности_2>",
        ...
        "<идентификатор_группы_безопасности_N>"
      ],
      "deletionProtection": <защита_кластера_от_удаления:_true_или_false>,
      "maintenanceWindow": {
        "weeklyMaintenanceWindow": {
          "day": "<день_недели>",
          "hour": "<час>"
        }
      },
      "configSpec": {
        "version": "<версия_MongoDB>",
        "mongodb": {
          "mongod": {
            "resources": {
              "resourcePresetId": "<класс_хоста>",
              "diskSize": "<размер_хранилища_в_байтах>",
              "diskTypeId": "<тип_диска>"
            }
          }
        },
        "backupWindowStart":  {
          "hours": "<часы>",
          "minutes": "<минуты>",
          "seconds": "<секунды>",
          "nanos": "<наносекунды>"
        },  
        "backupRetainPeriodDays": "<время_хранения_резервных_копий_в_днях>",
        "performanceDiagnostics": {
          "profilingEnabled": <включить_профилировщик:_true_или_false>
        }
      },
      "databaseSpecs": [
        {
          "name": "<имя_БД>"
        },
        { <аналогичный_набор_настроек_для_БД_2> },
        { ... },
        { <аналогичный_набор_настроек_для_БД_N> }
      ],
      "userSpecs": [
        {
          "name": "<имя_пользователя>",
          "password": "<пароль_пользователя>",
          "permissions": [
            {
              "databaseName": "<имя_БД>",
              "roles": [
                "<роль_1>", "<роль_2>", ..., "<роль_N>"
              ]
            }
          ]
        },
        { <аналогичный_набор_настроек_для_пользователя_2> },
        { ... },
        { <аналогичный_набор_настроек_для_пользователя_N> }
      ],
      "hostSpecs": [
        {
          "zoneId": "<зона_доступности>",
          "subnetId": "<идентификатор_подсети>",
          "assignPublicIp": <публичный_доступ_к_хосту:_true_или_false>,
          "type": "<тип_хоста>",
          "shardName": "<имя_шарда>",
          "hidden": <скрытие_хоста:_true_или_false>,
          "secondaryDelaySecs": "<отставание_реплики_в_секундах>",
          "priority": "<приоритет_хоста>",
          "tags": "<метки_хоста>"
        },
        { <аналогичный_набор_настроек_для_хоста_2> },
        { ... },
        { <аналогичный_набор_настроек_для_хоста_N> }
      ],
    }
    

    Где:

    • folderId — идентификатор каталога. Его можно запросить со списком каталогов в облаке.

    • name — имя кластера.

    • environment — окружение кластера: PRODUCTION или PRESTABLE.

    • networkId — идентификатор сети, в которой будет размещен кластер.

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

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

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

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

      • anytime — техническое обслуживание происходит в любое время.

      • weeklyMaintenanceWindow — техническое обслуживание происходит раз в неделю, в указанное время:

        • day — день недели в формате DDD.
        • hour — час в формате HH. Возможные значения: от 1 до 24 часов.
    • configSpec — настройки кластера:

      • version — версия MongoDB: 5.0, 6.0 или 7.0.

      • mongod — тип хоста.

        • resources — ресурсы кластера:

          • resourcePresetId — класс хостов.
          • diskSize — размер диска в байтах.
          • diskTypeId — тип диска.
      • backupWindowStart — настройки окна резервного копирования.

        В параметре укажите время, когда начинать резервное копирование:

        • hours — от 0 до 23 часов.
        • minutes — от 0 до 59 минут.
        • seconds — от 0 до 59 секунд.
        • nanos — от 0 до 999999999 наносекунд.
      • backupRetainPeriodDays — время хранения резервных копий в днях.

      • performanceDiagnostics — настройки для сбора статистики:

        • profilingEnabled — включение профилировщика.
    • databaseSpecs — настройки баз данных в виде массива элементов. Каждый элемент соответствует отдельной БД и содержит параметр name — имя БД.

      Имя базы может содержать латинские буквы, цифры, нижнее подчеркивание и дефис. Максимальная длина имени — 63 символа. Имена config, local, admin и mdb_internal зарезервированы для собственных нужд Managed Service for MongoDB. Создавать БД с этими именами нельзя.

    • userSpecs — настройки пользователей в виде массива элементов. Каждый элемент соответствует отдельному пользователю и имеет следующую структуру:

      • name — имя пользователя.

      • password — пароль пользователя.

      • permissions — настройки разрешений пользователя:

        • databaseName — имя базы данных, к которой пользователь получает доступ.
        • roles — массив ролей пользователя. Каждая роль представлена в виде отдельной строки в массиве. Список доступных значений см. в разделе Пользователи и роли.

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

    • hostSpecs — настройки хостов кластера в виде массива элементов. Каждый элемент соответствует отдельному хосту и имеет следующую структуру:

      • zoneId — зона доступности.
      • subnetId — идентификатор подсети.
      • assignPublicIp — доступность хоста из интернета по публичному IP-адресу.
      • type— тип хоста в шардированном кластере: MONGOD, MONGOINFRA, MONGOS или MONGOCFG.
      • shardName — имя шарда в шардированном кластере.
      • hidden — скрытие хоста: true или false. Если хост скрыт, он будет доступен для чтения только для прямых подключений (например, чтобы делать с него резервные копии, не добавляя нагрузки на кластер).
      • secondaryDelaySecs — отставание реплики от мастера в секундах. Может быть полезно для восстановления данных в случае ошибочных операций.
      • priority — приоритет назначения хоста мастером.
      • tags— метки хоста.
  3. Воспользуйтесь методом Cluster.Create и выполните запрос, например, с помощью cURL:

    curl \
        --request POST \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --header "Content-Type: application/json" \
        --url 'https://mdb.api.cloud.yandex.net/managed-mongodb/v1/clusters' \
        --data "@body.json"
    
  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

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

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

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

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

  3. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "folder_id": "<идентификатор_каталога>",
      "name": "<имя_кластера>",
      "environment": "<окружение>",
      "network_id": "<идентификатор_сети>",
      "security_group_ids": [
        "<идентификатор_группы_безопасности_1>",
        "<идентификатор_группы_безопасности_2>",
        ...
        "<идентификатор_группы_безопасности_N>"
      ],
      "deletion_protection": <защита_кластера_от_удаления:_true_или_false>,
      "maintenance_window": {
        "weekly_maintenance_window": {
          "day": "<день_недели>",
          "hour": "<час>"
        }
      },
      "config_spec": {
        "version": "<версия_MongoDB>",
        "mongodb": {
          "mongod": {
            "resources": {
              "resource_preset_id": "<класс_хоста>",
              "disk_size": "<размер_хранилища_в_байтах>",
              "disk_type_id": "<тип_диска>"
            }
          }
        },
        "backup_window_start": {
          "hours": "<часы>",
          "minutes": "<минуты>",
          "seconds": "<секунды>",
          "nanos": "<наносекунды>"
        },
        "backup_retain_period_days": "<время_хранения_резервных_копий_в_днях>",
        "performance_diagnostics": {
          "profiling_enabled": <включить_профилировщик:_true_или_false>
        }
      },
      "database_specs": [
        {
          "name": "<имя_БД>"
        },
        { <аналогичный_набор_настроек_для_БД_2> },
        { ... },
        { <аналогичный_набор_настроек_для_БД_N> }
      ],
      "user_specs": [
        {
          "name": "<имя_пользователя>",
          "password": "<пароль_пользователя>",
          "permissions": [
            {
              "database_name": "<имя_БД>",
              "roles": [
                "<роль_1>", "<роль_2>", ..., "<роль_N>"
              ]
            }
          ]
        },
        { <аналогичный_набор_настроек_для_пользователя_2> },
        { ... },
        { <аналогичный_набор_настроек_для_пользователя_N> }
      ],
      "host_specs": [
        {
          "zone_id": "<зона_доступности>",
          "subnet_id": "<идентификатор_подсети>",
          "assign_public_ip": <публичный_доступ_к_хосту:_true_или_false>,
          "type": "<тип_хоста>",
          "shard_name": "<имя_шарда>",
          "hidden": <скрытие_хоста:_true_или_false>,
          "secondary_delay_secs": "<отставание_реплики_в_секундах>",
          "priority": "<приоритет_хоста>",
          "tags": "<метки_хоста>"
        },
        { <аналогичный_набор_настроек_для_хоста_2> },
        { ... },
        { <аналогичный_набор_настроек_для_хоста_N> }
      ]
    }
    

    Где:

    • folder_id — идентификатор каталога. Его можно запросить со списком каталогов в облаке.

    • name — имя кластера.

    • environment — окружение кластера: PRODUCTION или PRESTABLE.

    • network_id — идентификатор сети, в которой будет размещен кластер.

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

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

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

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

      • anytime — техническое обслуживание происходит в любое время.

      • weekly_maintenance_window — техническое обслуживание происходит раз в неделю, в указанное время:

        • day — день недели в формате DDD.
        • hour — час в формате HH. Возможные значения: от 1 до 24 часов.
    • config_spec — настройки кластера:

      • version — версия MongoDB: 5.0, 6.0 или 7.0.
        • mongod — тип хоста.

          • resources — ресурсы кластера:

            • resource_preset_id — класс хостов.
            • disk_size — размер диска в байтах.
            • disk_type_id — тип диска.
        • backup_window_start — настройки окна резервного копирования.

          В параметре укажите время, когда начинать резервное копирование:

          • hours — от 0 до 23 часов.
          • minutes — от 0 до 59 минут.
          • seconds — от 0 до 59 секунд.
          • nanos — от 0 до 999999999 наносекунд.
        • backup_retain_period_days — время хранения резервных копий в днях.

        • performance_diagnostics — настройки для сбора статистики:

          • profiling_enabled — включение профилировщика.
    • database_specs — настройки баз данных в виде массива элементов. Каждый элемент соответствует отдельной БД и содержит параметр name — имя БД.

      Имя базы может содержать латинские буквы, цифры, нижнее подчеркивание и дефис. Максимальная длина имени — 63 символа. Имена config, local, admin и mdb_internal зарезервированы для собственных нужд Managed Service for MongoDB. Создавать БД с этими именами нельзя.

    • user_specs — настройки пользователей в виде массива элементов. Каждый элемент соответствует отдельному пользователю и имеет следующую структуру:

      • name — имя пользователя.

      • password — пароль пользователя.

      • permissions — настройки разрешений пользователя:

        • database_name — имя базы данных, к которой пользователь получает доступ.
        • roles — массив ролей пользователя. Каждая роль представлена в виде отдельной строки в массиве. Список доступных значений см. в разделе Пользователи и роли.

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

    • host_specs — настройки хостов кластера в виде массива элементов. Каждый элемент соответствует отдельному хосту и имеет следующую структуру:

      • zone_id — зона доступности.
      • subnet_id — идентификатор подсети.
      • assign_public_ip — доступность хоста из интернета по публичному IP-адресу.
      • type— тип хоста в шардированном кластере: MONGOD, MONGOINFRA, MONGOS или MONGOCFG.
      • shard_name — имя шарда в шардированном кластере.
      • hidden — скрытие хоста: true или false. Если хост скрыт, он будет доступен для чтения только для прямых подключений (например, чтобы делать с него резервные копии, не добавляя нагрузки на кластер).
      • secondaryDelaySecs — отставание реплики от мастера в секундах. Может быть полезно для восстановления данных в случае ошибочных операций.
      • priority — приоритет назначения хоста мастером.
      • tags— метки хоста.
  4. Воспользуйтесь вызовом ClusterService.Create и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/mongodb/v1/cluster_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d @ \
        mdb.api.cloud.yandex.net:443 \
        yandex.cloud.mdb.mongodb.v1.ClusterService.Create \
        < body.json
    
  5. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Важно

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

Создать копию кластераСоздать копию кластера

Вы можете создать кластер MongoDB, который будет обладать настройками созданного ранее кластера. Для этого конфигурация исходного кластера MongoDB импортируется в Terraform. В результате вы можете либо создать идентичную копию, либо взять за основу импортированную конфигурацию и внести в нее изменения. Использовать импорт удобно, если исходный кластер MongoDB обладает множеством настроек и нужно создать похожий на него кластер.

Чтобы создать копию кластера MongoDB:

Terraform
  1. Если у вас еще нет Terraform, установите его.

  2. Получите данные для аутентификации. Вы можете добавить их в переменные окружения или указать далее в файле с настройками провайдера.

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

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

  5. В той же рабочей директории разместите файл с расширением .tf и содержимым:

    resource "yandex_mdb_mongodb_cluster" "old" { }
    
  6. Запишите идентификатор первоначального кластера MongoDB в переменную окружения:

    export MONGODB_CLUSTER_ID=<идентификатор_кластера>
    

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

  7. Импортируйте настройки первоначального кластера MongoDB в конфигурацию Terraform:

    terraform import yandex_mdb_mongodb_cluster.old ${MONGODB_CLUSTER_ID}
    
  8. Получите импортированную конфигурацию:

    terraform show
    
  9. Скопируйте ее из терминала и вставьте в файл с расширением .tf.

  10. Расположите файл в новой директории imported-cluster.

  11. Измените скопированную конфигурацию так, чтобы из нее можно было создать новый кластер:

    • Укажите новое имя кластера в строке resource и параметре name.
    • Удалите параметры created_at, health, id, sharded и status.
    • В блоках host удалите параметры health и name.
    • Если в блоке maintenance_window указано значение параметра type = "ANYTIME", удалите параметр hour.
    • Если есть блоки user, удалите их. Пользователи БД добавляются с помощью отдельного ресурса yandex_mdb_mongodb_user.
    • (Опционально) Внесите дополнительные изменения, если вам нужна не идентичная, а кастомизированная копия.
  12. В директории imported-cluster получите данные для аутентификации.

  13. В этой же директории настройте и инициализируйте провайдер. Чтобы не создавать конфигурационный файл с настройками провайдера вручную, скачайте его.

  14. Поместите конфигурационный файл в директорию imported-cluster и укажите значения параметров. Если данные для аутентификации не были добавлены в переменные окружения, укажите их в конфигурационном файле.

  15. Проверьте корректность файлов конфигурации Terraform:

    terraform validate
    

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

  16. Создайте необходимую инфраструктуру:

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

      terraform plan
      

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

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

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

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

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

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

Ограничения по времени

Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MongoDB:

  • создание, в т. ч. путем восстановления из резервной копии, — 30 минут;
  • изменение — 60 минут.

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

Как изменить эти ограничения?

Добавьте к описанию кластера блок timeouts, например:

resource "yandex_mdb_mongodb_cluster" "<имя_кластера>" {
  ...
  timeouts {
    create = "1h30m" # Полтора часа
    update = "2h"    # 2 часа
  }
}

ПримерыПримеры

Создание кластера с одним хостомСоздание кластера с одним хостом

CLI
Terraform

Чтобы создать кластер с одним хостом, передайте один параметр --host.

Создайте кластер Managed Service for MongoDB с тестовыми характеристиками:

  • С именем mymg.
  • В окружении production.
  • В сети default.
  • В группе безопасности с идентификатором enp6saqnq4ie********.
  • С одним хостом класса s2.micro в подсети b0rcctk2rvtr********, в зоне доступности ru-central1-a.
  • С хранилищем на сетевых SSD-дисках (network-ssd) размером 20 ГБ.
  • С одним пользователем, user1, с паролем user1user1.
  • С одной базой данных, db1.
  • С защитой от непреднамеренного удаления.

Выполните следующую команду:

yc managed-mongodb cluster create \
  --name mymg \
  --environment production \
  --network-name default \
  --security-group-ids enp6saqnq4ie******** \
  --mongod-resource-preset s2.micro \
  --host zone-id=ru-central1-a,subnet-id=b0rcctk2rvtr******** \
  --mongod-disk-size 20 \
  --mongod-disk-type network-ssd \
  --user name=user1,password=user1user1 \
  --database name=db1 \
  --deletion-protection

Создайте кластер Managed Service for MongoDB и сеть для него с тестовыми характеристиками:

  • Название — mymg.

  • Версия — 7.0.

  • Окружение — PRODUCTION.

  • Идентификатор облака — b1gq90dgh25********.

  • Идентификатор каталога — b1gia87mbaom********.

  • Сеть — mynet.

  • Класс хоста — s2.micro.

  • Количество блоков host — один.

  • Подсеть — mysubnet. Сетевые настройки:

    • Зона доступности — ru-central1-a.
    • Диапазон — 10.5.0.0/24.
  • Группа безопасности — mymg-sg. Правила группы разрешают TCP-подключения к кластеру из интернета через порт 27018.

  • Хранилище на сетевых SSD-дисках — network-ssd.

  • Размер хранилища — 20 ГБ.

  • Пользователь — user1.

  • Пароль — user1user1.

  • База данных — db1.

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

Конфигурационный файл для кластера с одним хостом:

resource "yandex_mdb_mongodb_cluster" "mymg" {
  name                = "mymg"
  environment         = "PRODUCTION"
  network_id          = yandex_vpc_network.mynet.id
  security_group_ids  = [ yandex_vpc_security_group.mymg-sg.id ]
  deletion_protection = true

  cluster_config {
    version = "7.0"
  }

  resources_mongod {
    resource_preset_id = "s2.micro"
    disk_type_id       = "network-ssd"
    disk_size          = 20
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
  }
}

resource "yandex_mdb_mongodb_database" "db1" {
  cluster_id = yandex_mdb_mongodb_cluster.mymg.id
  name       = "db1"
}

resource "yandex_mdb_mongodb_user" "user1" {
  cluster_id = yandex_mdb_mongodb_cluster.mymg.id
  name       = "user1"
  password   = "user1user1"
  permission {
    database_name = "db1"
  }
  depends_on = [
    yandex_mdb_mongodb_database.db1
  ]
}

resource "yandex_vpc_network" "mynet" {
  name = "mynet"
}

resource "yandex_vpc_security_group" "mymg-sg" {
  name       = "mymg-sg"
  network_id = yandex_vpc_network.mynet.id

  ingress {
    description    = "MongoDB"
    port           = 27018
    protocol       = "TCP"
    v4_cidr_blocks = [ "0.0.0.0/0" ]
  }
}

resource "yandex_vpc_subnet" "mysubnet" {
  name           = "mysubnet"
  zone           = "ru-central1-a"
  network_id     = yandex_vpc_network.mynet.id
  v4_cidr_blocks = ["10.5.0.0/24"]
}

Создание шардированного кластераСоздание шардированного кластера

Кластер Managed Service for MongoDB можно создать со стандартным или расширенным шардированием. Подробнее о видах шардирования см. в разделе Особенности управления шардированием.

Стандартное шардированиеСтандартное шардирование

Создайте кластер Managed Service for MongoDB и сеть для него с несколькими хостами:

  • один хост MONGOD;
  • три хоста MONGOINFRA.

Тестовые характеристики кластера:

  • Название — mymg.
  • Окружение — PRODUCTION.
  • Защита от непреднамеренного удаления — включена.
  • Версия — 7.0.
  • База данных — db1.
  • Пользователь — user1.
  • Пароль — user1user1.
  • Класс хоста MONGOD — s2.micro.
  • Класс хостов MONGOINFRA — c3-c2-m4.
  • Хранилище на сетевых SSD-дисках — network-ssd.
  • Размер хранилища — 10 ГБ.

Сетевые характеристики:

  • Сеть — mynet.

  • Группа безопасности — mymg-sg с идентификатором enp6saqnq4ie********. В Terraform группа создается с правилом, которое разрешает TCP-подключения к кластеру из интернета через порт 27018.

  • Подсеть — mysubnet.

  • Зона доступности — ru-central1-a.

  • Диапазон — 10.5.0.0/24 (только для Terraform).

CLI
Terraform

Выполните команду, чтобы создать кластер Managed Service for MongoDB со стандартным шардированием:

yc managed-mongodb cluster create \
   --name mymg \
   --environment production \
   --deletion-protection \
   --mongodb-version 7.0 \
   --database name=db1 \
   --user name=user1,password=user1user1 \
   --mongod-resource-preset s2.micro \
   --mongod-disk-type network-ssd \
   --mongod-disk-size 10 \
   --host type=mongod,`
     `zone-id=ru-central1-a,`
     `subnet-name=mysubnet \
   --mongoinfra-resource-preset c3-c2-m4 \
   --mongoinfra-disk-type network-ssd \
   --mongoinfra-disk-size 10 \
   --host type=mongoinfra,`
     `zone-id=ru-central1-a,`
     `subnet-name=mysubnet \
   --host type=mongoinfra,`
     `zone-id=ru-central1-a,`
     `subnet-name=mysubnet \
   --host type=mongoinfra,`
     `zone-id=ru-central1-a,`
     `subnet-name=mysubnet \
   --network-name mynet \
   --security-group-ids enp6saqnq4ie********

Конфигурационный файл для кластера со стандартным шардированием:

resource "yandex_mdb_mongodb_cluster" "mymg" {
  name                = "mymg"
  environment         = "PRODUCTION"
  network_id          = yandex_vpc_network.mynet.id
  security_group_ids  = [ yandex_vpc_security_group.mymg-sg.id ]
  deletion_protection = true

  cluster_config {
    version = "7.0"
  }

  resources_mongod {
    resource_preset_id = "s2.micro"
    disk_type_id       = "network-ssd"
    disk_size          = 10
  }

  resources_mongoinfra {
    resource_preset_id = "c3-c2-m4"
    disk_type_id       = "network-ssd"
    disk_size          = 10
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongod"
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongoinfra"
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongoinfra"
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongoinfra"
  }

resource "yandex_mdb_mongodb_database" "db1" {
  cluster_id = yandex_mdb_mongodb_cluster.mymg.id
  name       = "db1"
}

resource "yandex_mdb_mongodb_user" "user1" {
  cluster_id = yandex_mdb_mongodb_cluster.mymg.id
  name       = "user1"
  password   = "user1user1"
  permission {
    database_name = "db1"
  }
  depends_on = [
    yandex_mdb_mongodb_database.db1
  ]
}

resource "yandex_vpc_network" "mynet" {
  name = "mynet"
}

resource "yandex_vpc_security_group" "mymg-sg" {
  name       = "mymg-sg"
  network_id = yandex_vpc_network.mynet.id

  ingress {
    description    = "MongoDB"
    port           = 27018
    protocol       = "TCP"
    v4_cidr_blocks = [ "0.0.0.0/0" ]
  }
}

resource "yandex_vpc_subnet" "mysubnet" {
  name           = "mysubnet"
  zone           = "ru-central1-a"
  network_id     = yandex_vpc_network.mynet.id
  v4_cidr_blocks = ["10.5.0.0/24"]
}

Расширенное шардированиеРасширенное шардирование

Создайте кластер Managed Service for MongoDB и сеть для него с несколькими хостами:

  • один хост MONGOD;
  • два хоста MONGOS;
  • три хоста MONGOCFG.

Тестовые характеристики кластера:

  • Название — mymg.
  • Окружение — PRODUCTION.
  • Защита от непреднамеренного удаления — включена.
  • Версия — 7.0.
  • База данных — db1.
  • Пользователь — user1.
  • Пароль — user1user1.
  • Класс хостов — s2.micro.
  • Хранилище на сетевых SSD-дисках — network-ssd.
  • Размер хранилища — 10 ГБ.

Сетевые характеристики:

  • Сеть — mynet.
  • Группа безопасности — mymg-sg с идентификатором enp6saqnq4ie********. В Terraform группа создается с правилом, которое разрешает TCP-подключения к кластеру из интернета через порт 27018.
  • Подсеть — mysubnet.
  • Зона доступности — ru-central1-a.
  • Диапазон — 10.5.0.0/24 (только для Terraform).
CLI
Terraform

Выполните команду, чтобы создать кластер Managed Service for MongoDB с расширенным шардированием:

yc managed-mongodb cluster create \
  --name mymg \
  --environment production \
  --deletion-protection \
  --mongodb-version 7.0 \
  --database name=db1 \
  --user name=user1,password=user1user1 \
  --mongod-resource-preset s2.micro \
  --mongod-disk-type network-ssd \
  --mongod-disk-size 10 \
  --host type=mongod,`
    `zone-id=ru-central1-a,`
    `subnet-name=mysubnet \
  --mongos-resource-preset s2.micro \
  --mongos-disk-type network-ssd \
  --mongos-disk-size 10 \
  --host type=mongos,`
    `zone-id=ru-central1-a,`
    `subnet-name=mysubnet \
  --host type=mongos,`
    `zone-id=ru-central1-a,`
    `subnet-name=mysubnet \
  --mongocfg-resource-preset s2.micro \
  --mongocfg-disk-type network-ssd \
  --mongocfg-disk-size 10 \
  --host type=mongocfg,`
    `zone-id=ru-central1-a,`
    `subnet-name=mysubnet \
  --host type=mongocfg,`
    `zone-id=ru-central1-a,`
    `subnet-name=mysubnet \
  --host type=mongocfg,`
    `zone-id=ru-central1-a,`
    `subnet-name=mysubnet \
  --network-name mynet \
  --security-group-ids enp6saqnq4ie********

Конфигурационный файл для кластера с расширенным шардированием:

resource "yandex_mdb_mongodb_cluster" "mymg" {
  name                = "mymg"
  environment         = "PRODUCTION"
  network_id          = yandex_vpc_network.mynet.id
  security_group_ids  = [ yandex_vpc_security_group.mymg-sg.id ]
  deletion_protection = true

  cluster_config {
    version = "7.0"
  }

  resources_mongod {
    resource_preset_id = "s2.micro"
    disk_type_id       = "network-ssd"
    disk_size          = 10
  }

  resources_mongos {
    resource_preset_id = "s2.micro"
    disk_type_id       = "network-ssd"
    disk_size          = 10
  }

  resources_mongocfg {
    resource_preset_id = "s2.micro"
    disk_type_id       = "network-ssd"
    disk_size          = 10
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongod"
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongos"
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongos"
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongocfg"
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongocfg"
  }

  host {
    zone_id   = "ru-central1-a"
    subnet_id = yandex_vpc_subnet.mysubnet.id
    type      = "mongocfg"
  }
}

resource "yandex_mdb_mongodb_database" "db1" {
  cluster_id = yandex_mdb_mongodb_cluster.mymg.id
  name       = "db1"
}

resource "yandex_mdb_mongodb_user" "user1" {
  cluster_id = yandex_mdb_mongodb_cluster.mymg.id
  name       = "user1"
  password   = "user1user1"
  permission {
    database_name = "db1"
  }
  depends_on = [
    yandex_mdb_mongodb_database.db1
  ]
}

resource "yandex_vpc_network" "mynet" {
  name = "mynet"
}

resource "yandex_vpc_security_group" "mymg-sg" {
  name       = "mymg-sg"
  network_id = yandex_vpc_network.mynet.id

  ingress {
    description    = "MongoDB"
    port           = 27018
    protocol       = "TCP"
    v4_cidr_blocks = [ "0.0.0.0/0" ]
  }
}

resource "yandex_vpc_subnet" "mysubnet" {
  name           = "mysubnet"
  zone           = "ru-central1-a"
  network_id     = yandex_vpc_network.mynet.id
  v4_cidr_blocks = ["10.5.0.0/24"]
}

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

Предыдущая
Информация об имеющихся кластерах
Следующая
Изменение настроек кластера
Проект Яндекса
© 2025 ООО «Яндекс.Облако»