Как установить максимальную заблокированную память в модуле, работающем без полномочий root

Раньше мой модуль kubernetes работал с правами root, и я запускал ulimit -l <MLOCK_AMOUNT> в его сценарии запуска, прежде чем запускать его основную программу на переднем плане. Однако я больше не могу запускать свой модуль от имени пользователя root. Не могли бы вы узнать, как я могу установить это ограничение сейчас?


person Fabrice Jammes    schedule 12.05.2021    source источник


Ответы (2)


Чтобы иметь возможность установить его для конкретного Pod, как вы делали это раньше, к сожалению, вам нужно повысить привилегии, т.е. запустить свой контейнер от имени пользователя root.

Насколько я понимаю, вы хотите установить его только для конкретного Pod, а не глобально, верно? Потому что это можно сделать, изменив конфигурацию докера на конкретном узле kubernetes.

Эта тема уже поднималась в другой теме и как вы можете прочитать в ответе Джеймса Брауна:

Похоже, что в настоящее время вы не можете установить ulimit, но это открытый вопрос: https://github.com/kubernetes/kubernetes/issues/3595

person mario    schedule 12.05.2021

person    schedule
comment
Извините, но я не согласен, я хочу установить не максимальную выделяемую память, а максимальную заблокированную память (т.е. предотвратить использование подкачки для данных в памяти) - person Fabrice Jammes; 13.05.2021
comment
Начиная с Kubernetes v1.8.0, Kubelet не запустится, если на узлах включена подкачка памяти. - person David; 13.05.2021