2015-09-12 2 views
7

Я докционировал компонент, следующий за моделью процесса. Мастер-процесс разворачивается много раз. Я хочу установить иерархию cgroup внутри контейнера докера, чтобы варьировать предел ЦП и памяти на основе каждого процесса.Монтажные группы внутри контейнера докера

Есть ли способ, которым я могу это сделать, не используя '--privileged' или 'CAP_SYTEM_ADMIN'?

Есть ли способ, которым я могу сделать группу, к которой принадлежит контейнер, как корень подтипа cgroup, который я реализую для процессов? (Разделите ресурсы, выделенные контейнеру между процессами).

ответ

4

Вывод, к которому я пришел, заключался в том, что для этого не существует текущего решения, поскольку Docker не поддерживает виртуализацию cgroup и не делает ядро ​​Linux. Нам нужна форма виртуализации cgroup для реализации групп внутри контейнера.

LXC делает это с помощью FUSE решения называется lxcfs на основе: https://linuxcontainers.org/lxcfs/introduction/

Кроме того, есть патч для ядра, который поддерживает контрольную группу пространства имен, которые, насколько я могу видеть, не был утвержден: https://lwn.net/Articles/605903/.

Смежные вопросы