Автоматическое масштабирование узлов GKE до 0, если от пользователя в течение некоторого времени не поступало новых запросов - PullRequest
0 голосов
/ 02 ноября 2019

Я создаю приложение с несколькими развертываниями микросервисов в кластере GKE с узлом n1-standard-2.

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

Чтобы сократить расходы.

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

Если это возможно, как я могу сделать это в GKE?

Если это невозможно, какие ещеварианты я могу использовать, чтобы сократить расходы?

Ответы [ 2 ]

0 голосов
/ 04 ноября 2019

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

Поймите, что с Kubernetes версии 1.7 вы можете указать минимальный размер нуля для вашего пула узлов. Это позволяет вашему пулу узлов полностью сокращаться, если экземпляры внутри не обязаны выполнять ваши рабочие нагрузки. (т.е. не взимать плату, когда он не используется)

Все, что вам нужно сделать, это установить минимальное количество узлов в ноль, и вы должны быть установлены.

Надеюсь, это поможет!

0 голосов
/ 02 ноября 2019

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

Из документов о Минимальный и максимальный размер пула узлов :

Примечание. Начиная с Kubernetes версии 1.7, вы можете указать минимальный размер нуля для вашего пула узлов. Это позволяет вашему пулу узлов полностью сокращаться, если экземпляры в нем не требуются для выполнения ваших рабочих нагрузок.

Вы можете использовать следующую команду для настройки автоматического масштабирования в существующем кластере my-cluster:

gcloud container clusters update my-cluster \
    --zone us-central1-a \ # if zonal, region otherwise
    --enable-autoscaling --min-nodes 0 --max-nodes 3
...