Поведение кубе, когда требуется больше памяти? - PullRequest
0 голосов
/ 28 января 2020

Этот вопрос касается поведения Kubernetes, когда запросу требуется больше памяти, чем выделено для Pod, содержащего приложение php. Если G C не может освободить память и запросить больше памяти, из-за чего модули перестают отвечать на запросы или время ожидания запроса истекает, будет ли kube перезапускать модуль самостоятельно?

В случае предоставления памяти подкачки будет ли kube попробуй использовать перед перезапуском модуля.

1 Ответ

1 голос
/ 28 января 2020

Обмен не поддерживается в Kubernetes, и он откажется запускаться, если активен. Значения запроса для ресурсов модуля не могут быть переопределены, поэтому, если модуль запрашивает 1 ГБ и ни один узел не имеет доступного 1 ГБ (по сравнению с общим объемом ОЗУ за вычетом запросов ко всем модулям, запланированным для этого узла), модуль будет оставаться незапланированным, пока что-то не изменится. Ограничения могут быть превышены, но Kubernetes не участвует в этом процессе. Он просто устанавливает предел памяти в cgroup процесса. Обработка нехватки памяти работает так же, как это всегда происходит на Linux, если ядро ​​решит, что ему не хватает памяти, то оно вызывает вещь, называемую oomkiller, которая ранжирует процессы и убивает худший.

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