Облачная платформаEvolution

Настройка автомасштабирования группы узлов


С помощью этого руководства вы узнаете, как настраивать и управлять автомасштабированием через API в кластере Managed Kubernetes облака Cloud.ru Evolution.

Вы будете использовать следующие сервисы:

  • Managed Kubernetes — сервис управления кластерами Kubernetes на вычислительных ресурсах облака.

  • Postman — инструмент для разработки, тестирования, документирования и управления API.

Шаги:

Перед началом работы

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

1. Создайте группу узлов с поддержкой автомасштабирования

Выполните HTTP-запрос:

POST https://mk8s.api.cloud.ru/v3/nodePools

В теле запроса передайте параметры:

{
"clusterId": "<your-cluster-id>",
"name": "cloudru-node-pool-scale",
"scalePolicy": {
"autoScale": {
"minCount": 2,
"maxCount": 5,
"initialCount": 3
}
},
"machineConfiguration": {
"disk": {
"typeName": "SSD",
"size": 30
},
"flavorId": "1f38e57c-0004-4f44-badf-1a0f3c09a128"
},
"networkConfiguration": {
"nodesSubnetId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx"
},
"updateConfiguration": {
"strategy": "NODE_POOL_UPDATE_STRATEGY_ROLLING_UPDATE"
}
}

Где <your-cluster-id>идентификатор кластера, для которого нужно создать группу узлов.

В примере вы можете использовать указанные значения параметров name и disk.size или заменить их на свои.

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

2. Отредактируйте параметры автомасштабирования

Выполните HTTP-запрос:

PATCH https://mk8s.api.cloud.ru/v3/nodePools/{nodePoolId}

Где nodePoolId — идентификатор созданной группы узлов.

В теле запроса передайте параметры:

{
"data": {
"scalePolicy": {
"autoScale": {
"minCount": 1,
"maxCount": 6
}
}
}
}

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

3. Измените политику масштабирования на фиксированную

Выполните HTTP-запрос:

PATCH https://mk8s.api.cloud.ru/v3/nodePools/{nodePoolId}

Где nodePoolId — идентификатор группы узлов.

В теле запроса передайте следующие параметры:

{
"data": {
"scalePolicy": {
"fixedScale": {
"count": 4
}
}
}
}

В результате размер группы узлов будет постоянным.

4. Измените политику масштабирования на автоматическую

Выполните HTTP-запрос:

PATCH https://mk8s.api.cloud.ru/v3/nodePools/{nodePoolId}

В теле запроса передайте параметры:

{
"data": {
"scalePolicy": {
"autoScale": {
"minCount": 0,
"maxCount": 6
}
}
}
}

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

Результат

Вы научились:

  • Создавать группу узлов с поддержкой автомасштабирования.

  • Редактировать минимальное и максимальное количество узлов.

  • Менять политику масштабирования на фиксированную и с фиксированной на автоматическую.