Метод create

Создает кластер Redis в указанном каталоге.

HTTP-запрос

POST https://mdb.api.cloud.yandex.net/managed-redis/v1/clusters

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

{
  "folderId": "string",
  "name": "string",
  "description": "string",
  "labels": "object",
  "environment": "string",
  "configSpec": {
    "version": "string",
    "resources": {
      "resourcePresetId": "string",
      "diskSize": "string"
    },
    "backupWindowStart": {
      "hours": "integer",
      "minutes": "integer",
      "seconds": "integer",
      "nanos": "integer"
    },
    "access": {
      "dataLens": true
    },
    "redisConfig_5_0": {
      "maxmemoryPolicy": "string",
      "timeout": "integer",
      "password": "string"
    }
  },
  "hostSpecs": [
    {
      "zoneId": "string",
      "subnetId": "string",
      "shardName": "string"
    }
  ],
  "networkId": "string",
  "sharded": true
}
Поле Описание
folderId string

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

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

name string

Обязательное поле. Имя кластера Redis. Имя должно быть уникальным в каталоге.

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

description string

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

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

labels object

Пользовательские метки для кластера Redis в виде пар key:value. Максимум 64 на кластер. Например, "project": "mvp" или "source": "dictionary".

Не более 64 на ресурс. Максимальная длина строки в символах для каждого ключа — 63. Каждый ключ должен соответствовать регулярному выражению [a-z][-_0-9a-z]. Максимальная длина строки в символах для каждого значения — 63. Каждое значение должно соответствовать регулярному выражению [-_0-9a-z].

environment string

Обязательное поле. Среда развертывания кластера Redis.

  • PRODUCTION: Стабильная среда с осторожной политикой обновления: во время регулярного обслуживания применяются только срочные исправления.
  • PRESTABLE: Среда с более агрессивной политикой обновления: новые версии развертываются независимо от обратной совместимости.
configSpec object

Обязательное поле. Конфигурация и ресурсы для хостов, которые должны быть созданы для кластера Redis.

configSpec.
version
string

Версия Redis, используемая в кластере. Единственное возможное значение — 5.0.

configSpec.
resources
object
Ресурсы, выделенные хостам Redis.
configSpec.
resources.
resourcePresetId
string

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

configSpec.
resources.
diskSize
string (int64)

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

configSpec.
backupWindowStart
object
Время запуска ежедневного резервного копирования, в часовом поясе UTC.

Описывает время суток. Дата и часовой пояс либо не имеют значения, либо указаны другим образом. API может разрешить високосные секунды. Связанные типы: [google.type.Date][google.type.Date] и google.protobuf.Timestamp.

configSpec.
backupWindowStart.
hours
integer (int32)

Час в 24-часовом формате. Допустимые значения — от 0 до 23. API может разрешить значение "24:00:00" для таких сценариев, как время закрытия заведения.

configSpec.
backupWindowStart.
minutes
integer (int32)

Минута часа. Допустимые значения — от 0 до 59.

configSpec.
backupWindowStart.
seconds
integer (int32)

Секунда минуты. Обычно допустимые значения — от 0 до 59. API может разрешить значение 60, если поддерживаются високосные секунды.

configSpec.
backupWindowStart.
nanos
integer (int32)

Доли секунды, в наносекундах. Допустимые значения — от 0 до 999 999 999.

configSpec.
access
object
Политика доступа к БД
configSpec.
access.
dataLens
boolean (boolean)

Разрешить доступ для DataLens

configSpec.
redisConfig_5_0
object

Поля и структура RedisConfig отражает параметры файла конфигурации Redis.

configSpec.
redisConfig_5_0.
maxmemoryPolicy
string

Политика Redis для отбрасывания ключей из набора данных, который достиг максимального объема памяти, доступного на хосте. Параметр maxmemory зависит от host class Managed Service for Redis.

Все политики подробно описаны в документации Redis.

  • VOLATILE_LRU: Пытаться удалять менее востребованные (LRU) ключи с expire set.
  • ALLKEYS_LRU: Удалять менее востребованные (LRU) ключи.
  • VOLATILE_LFU: Пытаться удалять наименее часто используемые (LFU) ключи с expire set.
  • ALLKEYS_LFU: Удалять наименее часто используемые (LFU) ключи.
  • VOLATILE_RANDOM: Пытаться удалять ключи с expire set в случайном порядке.
  • ALLKEYS_RANDOM: Удалять ключи случайным образом.
  • VOLATILE_TTL: Пытаться сначала удалять менее востребованные (LRU) ключи с expire set и более коротким сроком жизни (TTL).
  • NOEVICTION: Возвращать ошибки, когда память заполнена, и заданные команды могут потребовать больше памяти.
configSpec.
redisConfig_5_0.
timeout
integer (int64)

Время, в течение которого Redis сохраняет подключение открытым, пока клиент бездействует. Если в течение этого времени не получена команда, соединение закрывается.

configSpec.
redisConfig_5_0.
password
string

Пароль для аутентификации.

Значение должно соответствовать регулярному выражению [a-zA-Z0-9@=+?*.,!&#$^<>_-]{8,128}.

hostSpecs[] object

Обязательное поле. Конфигурации для отдельных хостов, которые должны быть созданы для кластера Redis.

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

hostSpecs[].
zoneId
string

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

hostSpecs[].
subnetId
string

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

hostSpecs[].
shardName
string

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

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

networkId string

Обязательное поле. Идентификатор сети, в которой нужно создать кластер.

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

sharded boolean (boolean)

Включение/выключение режима Redis Cluster.

Ответ

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.