Автоматическое масштабирование GKE: Как я могу сказать автоскейлеру, чтобы он сначала удалил старые модули? (ФИЛО вместо ФИФО)

# #kubernetes #google-kubernetes-engine #autoscaling #horizontal-pod-autoscaling

Вопрос:

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

Вместо того, чтобы отлаживать эту утечку памяти, можно ли было бы изменить профиль автоматического масштабирования движка Google Kubernetes для уменьшения масштаба, сначала удалив старые модули вместо новых? По сути, я ищу метод «Первым в последний раз» для уменьшения размеров модулей вместо метода «Первым в первый раз», который в настоящее время использует GKE (насколько я понимаю) при автоматическом масштабировании.

Возможно ли это? Я ничего не нахожу об этом в документации. Спасибо!

Ответ №1:

Уменьшение масштаба в кластере-автомасштабер на самом деле не является ни тем, ни другим. Он ищет узлы с низкой загрузкой и моделирует, будет ли у кластера достаточно мощностей, если эти модули будут удалены. На практике FIFO или близкое к нему является обычным явлением, потому что новые модули оказываются на более новых узлах, и они имеют меньшую загрузку. Но вы можете использовать такие инструменты, как Дешедулер, чтобы немного сбалансировать ситуацию.

Комментарии:

1. Спасибо! Я попробовал дешедулер, и, похоже, он работает со стратегией подлифтинга. Это действительно помогло мне, ура!