Как изменить расписание моих модулей после уменьшения масштаба узла в службе Azure Kubernetes (AKS)?

Я начну с примера. Скажем, у меня есть кластер AKS с тремя узлами. На каждом из этих узлов работает набор модулей, скажем, 5 модулей. Всего в моем кластере работает 15 модулей, 5 модулей на узел, 3 узла.

Теперь предположим, что мои узлы используются не полностью, и я решил уменьшить масштаб до 2 узлов вместо 3.

Когда я решу сделать это в Azure и изменю количество узлов с 3 на 2, Azure закроет 3-й узел. Однако он также удалит все модули, работавшие на 3-м узле. Как мне заставить мой кластер перепланировать поды с 3-го узла на 1-й или 2-й узел, чтобы я не потерял их и их содержимое?

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


person Rodi    schedule 15.01.2019    source источник


Ответы (1)


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

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

Однако имейте в виду, что вы создаете новые модули, а не перемещаете ранее запущенные модули. Любое состояние, которое у вас было в предыдущих модулях, которое не сохраняется, исчезнет. Вот как он должен работать.

person Sam Cogan    schedule 15.01.2019