Состояние узла "не готово", когда сумма всех запущенных модулей превышает емкость узла - PullRequest
0 голосов
/ 28 сентября 2019

У меня 5 узлов, работающих в кластере k8s и около 30 модулей.Некоторые из стручков обычно занимают много памяти.На одном этапе мы обнаружили, что узел перешел в состояние «не готово», когда сумма памяти всех запущенных модулей превысила память узла.

Так или иначе, я увеличил память запросов ресурсов до высокого значения для модулей с большим объемом памяти, но не должен ли контроллер узла уничтожить все модули и перезапустить все вместо того, чтобы переводить узел в состояние «не готово»?

Предположим, что 4 узла уже работали в узле, и планировщик позволил добавить в него еще один модуль, так как память запроса ресурсов находится в пределах оставшейся памяти узла.Теперь, по какой-то причине, по какой-то причине память всех модулей начала увеличиваться, и хотя каждая память модулей все еще находится под предельным значением памяти отдельных ресурсов, но сумма памяти всех модулей превышает память узла, и это приводит к тому, что узел находится в состоянии «не готов».

Есть ли способ преодолеть эту ситуацию?

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

Информация о кластере: версия Kubernetes: 1.10.6 Используемое облако: AWS

1 Ответ

0 голосов
/ 30 сентября 2019

Вы можете установить правильный порог выселения для памяти и restartPolicy в PodSpec.

Подробнее см. https://kubernetes.io/docs/tasks/administer-cluster/out-of-resource/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...