Метод enableSharding

Включает шардирование для кластера: создает 3 хоста mongocfg и 2 хоста mongos, которые необходимы чтобы добавлять и использовать шарды в кластере.

HTTP-запрос

POST https://mdb.api.cloud.yandex.net/managed-mongodb/v1/clusters/{clusterId}:enableSharding

Path-параметры

Параметр Описание
clusterId Обязательное поле. Идентификатор кластера MongoDB, для которого нужно включить шардирование. Максимальная длина строки в символах — 50.

Параметры в теле запроса

{
  "mongocfg": {
    "resources": {
      "resourcePresetId": "string",
      "diskSize": "string",
      "diskTypeId": "string"
    }
  },
  "mongos": {
    "resources": {
      "resourcePresetId": "string",
      "diskSize": "string",
      "diskTypeId": "string"
    }
  },
  "hostSpecs": [
    {
      "zoneId": "string",
      "subnetId": "string",
      "assignPublicIp": true,
      "type": "string",
      "shardName": "string"
    }
  ]
}
Поле Описание
mongocfg object

Обязательное поле. Спецификация mongocfg для шардирования.

mongocfg.
resources
object

Обязательное поле. Ресурсы для хостов mongocfg.

mongocfg.
resources.
resourcePresetId
string

Идентификатор набора вычислительных ресурсов, доступных хосту (процессор, память и т. д.). Все доступные наборы ресурсов перечислены в documentation.

mongocfg.
resources.
diskSize
string (int64)

Объем хранилища, доступного хосту, в байтах.

mongocfg.
resources.
diskTypeId
string

Тип хранилища для хоста. Возможные значения:

  • network-hdd — сетевой HDD-диск;
  • network-nvme — сетевой SSD-диск;
  • local-nvme — локальное SSD-хранилище.
mongos object

Обязательное поле. Спецификация mongos для шардирования.

mongos.
resources
object

Обязательное поле. Ресурсы для хостов mongos.

mongos.
resources.
resourcePresetId
string

Идентификатор набора вычислительных ресурсов, доступных хосту (процессор, память и т. д.). Все доступные наборы ресурсов перечислены в documentation.

mongos.
resources.
diskSize
string (int64)

Объем хранилища, доступного хосту, в байтах.

mongos.
resources.
diskTypeId
string

Тип хранилища для хоста. Возможные значения:

  • network-hdd — сетевой HDD-диск;
  • network-nvme — сетевой SSD-диск;
  • local-nvme — локальное SSD-хранилище.
hostSpecs[] object

Обязательное поле. Конфигурации для хостов mongos и mongocfg.

Должен содержать хотя бы один элемент.

hostSpecs[].
zoneId
string

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

Максимальная длина строки в символах — 50.

hostSpecs[].
subnetId
string

Идентификатор подсети, к которой должен принадлежать хост. Эта подсеть должна быть частью сети, к которой принадлежит кластер. Идентификатор сети устанавливается в поле Cluster.networkId.

Максимальная длина строки в символах — 50.

hostSpecs[].
assignPublicIp
boolean (boolean)

Должен ли хост получить публичный IP-адрес при создании.

После создания узла этот параметр изменить нельзя. Чтобы удалить назначенный публичный IP-адрес или назначить публичный IP уже созданному хосту, пересоздайте хост с нужным значением поля assignPublicIp.

Возможные значения:

  • false — не назначать хосту публичный IP-адрес.
  • true — у хоста должен быть публичный IP-адрес.
hostSpecs[].
type
string

Тип развертываемого хоста.

  • MONGOD: Хост mongod.
  • MONGOS: Хост mongos.
  • MONGOCFG: Хост mongocfg.
hostSpecs[].
shardName
string

Имя шарда, которому принадлежит хост.

Максимальная длина строки в символах — 63. Значение должно соответствовать регулярному выражению [a-zA-Z0-9_-]*.

Ответ

HTTP Code: 200 - OK

{
  "id": "string",
  "description": "string",
  "createdAt": "string",
  "createdBy": "string",
  "modifiedAt": "string",
  "done": true,
  "metadata": "object",

  //  включает только одно из полей `error`, `response`
  "error": {
    "code": "integer",
    "message": "string",
    "details": [
      "object"
    ]
  },
  "response": "object",
  // конец списка возможных полей

}

Ресурс Operation. Дополнительные сведения см. в разделе Объект Operation.

Поле Описание
id string

Идентификатор операции.

description string

Описание операции. Длина описания должна быть от 0 до 256 символов.

createdAt string (date-time)

Время создания ресурса в формате в RFC3339.

Строка в формате RFC3339.

createdBy string

Идентификатор пользователя или сервисного аккаунта, инициировавшего операцию.

modifiedAt string (date-time)

Время, когда ресурс Operation последний раз обновлялся. Значение в формате RFC3339.

Строка в формате RFC3339.

done boolean (boolean)

Если значение равно false — операция еще выполняется. Если true — операция завершена, и задано значение одного из полей error или response.

metadata object

Метаданные операции. Обычно в поле содержится идентификатор ресурса, над которым выполняется операция. Если метод возвращает ресурс Operation, в описании метода приведена структура соответствующего ему поля metadata.

error object
Описание ошибки в случае сбоя или отмены операции.
включает только одно из полей error, response

Описание ошибки в случае сбоя или отмены операции.

error.
code
integer (int32)

Код ошибки. Значение из списка google.rpc.Code.

error.
message
string

Текст ошибки.

error.
details[]
object

Список сообщений с подробными сведениями об ошибке.

response object
включает только одно из полей error, response

Результат операции в случае успешного завершения. Если исходный метод не возвращает никаких данных при успешном завершении, например метод Delete, поле содержит объект google.protobuf.Empty. Если исходный метод — это стандартный метод Create / Update, поле содержит целевой ресурс операции. Если метод возвращает ресурс Operation, в описании метода приведена структура соответствующего ему поля response.