Метод create
Создает кластер Kubernetes в указанном каталоге.
HTTP-запрос
POST https://mks.api.cloud.yandex.net/managed-kubernetes/v1/clusters
Параметры в теле запроса
{
"folderId": "string",
"name": "string",
"description": "string",
"labels": "object",
"networkId": "string",
"masterSpec": {
"version": "string",
"maintenancePolicy": {
"autoUpgrade": true,
"maintenanceWindow": {
// `masterSpec.maintenancePolicy.maintenanceWindow` включает только одно из полей `anytime`, `dailyMaintenanceWindow`, `weeklyMaintenanceWindow`
"anytime": {},
"dailyMaintenanceWindow": {
"startTime": {
"hours": "integer",
"minutes": "integer",
"seconds": "integer",
"nanos": "integer"
},
"duration": "string"
},
"weeklyMaintenanceWindow": {
"daysOfWeek": [
{
"days": [
"string"
],
"startTime": {
"hours": "integer",
"minutes": "integer",
"seconds": "integer",
"nanos": "integer"
},
"duration": "string"
}
]
},
// конец списка возможных полей`masterSpec.maintenancePolicy.maintenanceWindow`
}
},
// `masterSpec` включает только одно из полей `zonalMasterSpec`, `regionalMasterSpec`
"zonalMasterSpec": {
"zoneId": "string",
"internalV4AddressSpec": {
"subnetId": "string"
},
"externalV4AddressSpec": {}
},
"regionalMasterSpec": {
"regionId": "string",
"locations": [
{
"zoneId": "string",
"internalV4AddressSpec": {
"subnetId": "string"
}
}
],
"externalV4AddressSpec": {}
},
// конец списка возможных полей`masterSpec`
},
"ipAllocationPolicy": {
"clusterIpv4CidrBlock": "string",
"serviceIpv4CidrBlock": "string"
},
"serviceAccountId": "string",
"nodeServiceAccountId": "string",
"releaseChannel": "string",
"networkPolicy": {
"provider": "string"
},
"gatewayIpv4Address": "string"
}
Поле | Описание |
---|---|
folderId | string Обязательное поле. Идентификатор каталога, в котором нужно создать кластер Kubernetes. Чтобы получить идентификатор каталога, используйте запрос list. |
name | string Имя кластера Kubernetes. Имя должно быть уникальным в каталоге. Значение должно соответствовать регулярному выражению |
description | string Описание кластера Kubernetes. Максимальная длина строки в символах — 256. |
labels | object Метки ресурса в формате Не более 64 на ресурс. Длина строки в символах для каждого ключа должна быть от 1 до 63. Каждый ключ должен соответствовать регулярному выражению |
networkId | string Обязательное поле. Идентификатор облачной сети. |
masterSpec | object Обязательное поле. Политика распределения кластера Kubernetes. |
masterSpec. version |
string Версия компонентов Kubernetes, которая запущена на мастере. |
masterSpec. maintenancePolicy |
object Политика обновления мастера. |
masterSpec. maintenancePolicy. autoUpgrade |
boolean (boolean) Если установлено значение |
masterSpec. maintenancePolicy. maintenanceWindow |
object Настройки окна обновления. Обновление начнется в указанное время и продлится не более указанного времени. Время устанавливается в формате UTC. |
masterSpec. maintenancePolicy. maintenanceWindow. anytime |
object Обновление мастера в любое время. masterSpec.maintenancePolicy.maintenanceWindow включает только одно из полей anytime , dailyMaintenanceWindow , weeklyMaintenanceWindow |
masterSpec. maintenancePolicy. maintenanceWindow. dailyMaintenanceWindow |
object Обновление мастера в любой день в течение указанного временного окна. masterSpec.maintenancePolicy.maintenanceWindow включает только одно из полей anytime , dailyMaintenanceWindow , weeklyMaintenanceWindow |
masterSpec. maintenancePolicy. maintenanceWindow. dailyMaintenanceWindow. startTime |
object Обязательное поле. Время начала окна обновлений, указывается в часовом поясе UTC. Время суток. Дата и часовой пояс либо не учитываются, либо задаются в других местах. API может разрешить использование високосной секунды. Связанные типы: google.type.Date и google.protobuf.Timestamp. |
masterSpec. maintenancePolicy. maintenanceWindow. dailyMaintenanceWindow. startTime. hours |
integer (int32) Часы. Допустимые значения: от 0 до 23. API может разрешить использовать значение в формате "24:00:00" в требующих этого сценариях (например, для указания времени закрытия учреждения). |
masterSpec. maintenancePolicy. maintenanceWindow. dailyMaintenanceWindow. startTime. minutes |
integer (int32) Минуты. Допустимые значения: от 0 до 59. |
masterSpec. maintenancePolicy. maintenanceWindow. dailyMaintenanceWindow. startTime. seconds |
integer (int32) Секунды. Стандартные допустимые значения: от 0 до 59. API может разрешить использовать значение 60, если также разрешено использование високосной секунды. |
masterSpec. maintenancePolicy. maintenanceWindow. dailyMaintenanceWindow. startTime. nanos |
integer (int32) Доли секунды (в наносекундах). Допустимые значения: от 0 до 999999999. |
masterSpec. maintenancePolicy. maintenanceWindow. dailyMaintenanceWindow. duration |
string Длительность окна обновлений. Допустимые значения — от 3600 seconds до 86400 seconds включительно. |
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow |
object Обновление мастера в выбранные дни в течение указанного временного окна. masterSpec.maintenancePolicy.maintenanceWindow включает только одно из полей anytime , dailyMaintenanceWindow , weeklyMaintenanceWindow |
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow. daysOfWeek[] |
object Обязательное поле. Дни недели и окно обновлений для этих дней, когда разрешены автоматические обновления. Количество элементов должно находиться в диапазоне от 1 до 7. |
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow. daysOfWeek[]. days[] |
string Represents a day of week.
|
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow. daysOfWeek[]. startTime |
object Обязательное поле. Время начала окна обновлений, указывается в часовом поясе UTC. Время суток. Дата и часовой пояс либо не учитываются, либо задаются в других местах. API может разрешить использование високосной секунды. Связанные типы: google.type.Date и google.protobuf.Timestamp. |
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow. daysOfWeek[]. startTime. hours |
integer (int32) Часы. Допустимые значения: от 0 до 23. API может разрешить использовать значение в формате "24:00:00" в требующих этого сценариях (например, для указания времени закрытия учреждения). |
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow. daysOfWeek[]. startTime. minutes |
integer (int32) Минуты. Допустимые значения: от 0 до 59. |
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow. daysOfWeek[]. startTime. seconds |
integer (int32) Секунды. Стандартные допустимые значения: от 0 до 59. API может разрешить использовать значение 60, если также разрешено использование високосной секунды. |
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow. daysOfWeek[]. startTime. nanos |
integer (int32) Доли секунды (в наносекундах). Допустимые значения: от 0 до 999999999. |
masterSpec. maintenancePolicy. maintenanceWindow. weeklyMaintenanceWindow. daysOfWeek[]. duration |
string Длительность окна обновлений. Допустимые значения — от 3600 seconds до 86400 seconds включительно. |
masterSpec. zonalMasterSpec |
object Спецификация зонального мастера. masterSpec включает только одно из полей zonalMasterSpec , regionalMasterSpec |
masterSpec. zonalMasterSpec. zoneId |
string Обязательное поле. Идентификатор зоны доступности. |
masterSpec. zonalMasterSpec. internalV4AddressSpec |
object Спецификация параметров для внутренней IPv4 сети. |
masterSpec. zonalMasterSpec. internalV4AddressSpec. subnetId |
string Идентификатор подсети. Если идентификатор не указан, а в указанной зоне имеется только одна подсеть, адрес будет выделен в этой подсети. |
masterSpec. zonalMasterSpec. externalV4AddressSpec |
object Спецификация параметров для внешней IPv4 сети. |
masterSpec. regionalMasterSpec |
object Спецификация регионального мастера. masterSpec включает только одно из полей zonalMasterSpec , regionalMasterSpec |
masterSpec. regionalMasterSpec. regionId |
string Обязательное поле. Идентификатор зоны доступности, в которой находится мастер. |
masterSpec. regionalMasterSpec. locations[] |
object Список местоположений (зон доступности и подсетей), в которых будут выделены ресурсы для мастера. |
masterSpec. regionalMasterSpec. locations[]. zoneId |
string Обязательное поле. Идентификатор зоны доступности. |
masterSpec. regionalMasterSpec. locations[]. internalV4AddressSpec |
object Если параметр не указан и в указанной зоне доступности только одна подсеть, то адрес будет выделен в этой подсети. |
masterSpec. regionalMasterSpec. locations[]. internalV4AddressSpec. subnetId |
string Идентификатор подсети. Если идентификатор не указан, а в указанной зоне имеется только одна подсеть, адрес будет выделен в этой подсети. |
masterSpec. regionalMasterSpec. externalV4AddressSpec |
object Указывается для выделения статического публичного IP-адреса для мастера. |
ipAllocationPolicy | object Политика распределения кластера Kubernetes. |
ipAllocationPolicy. clusterIpv4CidrBlock |
string CIDR. Диапазон IP-адресов для подов. Диапазон не должен пересекаться ни с одной подсетью в облачной сети, в которой находится кластер Kubernetes. Статические маршруты будут настроены для этих блоков CIDR в подсетях узлов. |
ipAllocationPolicy. serviceIpv4CidrBlock |
string CIDR. Диапазон IP-адресов для сервисов. Диапазон не должен пересекаться ни с одной подсетью в облачной сети, в которой находится кластер Kubernetes. |
serviceAccountId | string Обязательное поле. Сервисный аккаунт, используемый для выделения Compute Cloud и VPC ресурсов для кластера Kubernetes. Выбранный сервисный аккаунт должна иметь |
nodeServiceAccountId | string Обязательное поле. Сервисный аккаунт, используемый узлами кластера Kubernetes для доступа к Container Registry или для загрузки логов и метрик узла. |
releaseChannel | string Релизный канал для мастера.
|
networkPolicy | object |
networkPolicy. provider |
string |
gatewayIpv4Address | string Адрес шлюза IPv4. |
Ответ
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) Если значение равно |
metadata | object Метаданные операции. Обычно в поле содержится идентификатор ресурса, над которым выполняется операция. Если метод возвращает ресурс Operation, в описании метода приведена структура соответствующего ему поля |
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, в описании метода приведена структура соответствующего ему поля |