Пул узлов gcloud kubernetes: возможен высокий приоритет для вытесняемых узлов ВМ
Мне нужно решение для этого:
у меня есть 2 пула узлов в gcloud kubernetes, во-первых, автоматическое масштабирование, а во-вторых, только автоматическое масштабирование.
Задания следует запускать на первом (с вытесняемыми виртуальными машинами), но когда ресурсы в первом пуле недоступны, задания должны запускаться на втором.
Как я могу понять это, может быть, с Taints и Tolerations?
1 ответ
Я не думаю, что вы можете получить именно то, что вы хотите с Cluster Autoscaler, но я надеюсь, что я дам вам несколько вариантов и указатели для дальнейшего изучения.
- В Cluster Autoscaler есть понятие Expanders, которое может помочь определить, какую группу узлов масштабировать в случае события масштабирования.
price
Кажется, что экспандер близок к тому, что вы хотите, но, исходя из его описания, он не выглядит так, как будто у него есть поддержка виртуальных машин с вытесняющей способностью. Вы можете изучить это подробнее и, возможно, отправить запрос на добавление функции для поддержки вытесняемых пулов узлов. При выборе комбинации выгружаемых и не выгружаемых узлов, когда в GCP есть запас, а выгружаемые узлы недоступны, весьма вероятно, что недоступные узлы также будут недоступны. В этом случае вы можете оказаться в кластере с небольшим количеством не выгружаемых узлов и не иметь возможности создавать новые.
Лучше было бы иметь фиксированный минимальный размер не выгружаемых узлов и автоматически масштабировать пул вытесняемых узлов поверх этого с помощью Cluster Autoscaler.