Ищете последовательный способ настройки cgroups в Ubuntu 14.04 Desktop

Ищете последовательный способ настройки cgroups в Ubuntu 14.04 Desktop

Я ищу последовательный способ настройки cgroups в настольной системе Ubuntu 14.04 с ограниченными ресурсами.

Что бы я хотел сделать:

  • создать несколько групп с ограниченной памятью и процессором, выделенными для определенных задач
  • автоматически включить эти группы при перезагрузке
  • назначить определенные команды/программы каждой группе

Я понимаю конфигурацию cgroup и как запускать процессы для определенной группы с помощью cgexec. Проблема в следующем шаге.

Я создал рабочий файл /etc/cgconfig.conf, который я могу успешно разобрать и активировать с помощью cgconfigparser для получения настроенных cgroups. Однако это все, что я могу сделать.

  • Я не нашел сервис для правильного чтения и разбора /etc/cgconfig.conf при загрузке системы. Текущие пакеты cgroup, похоже, не включают такой сервис.
  • Насколько я понимаю, /etc/cgconfig.conf сопровождается файлом /etc/cgrules.conf, который описывает, как процессы запускаются по умолчанию в определенной группе. Я не могу определить службу или механизм, который его анализирует. Без этой функциональности мне нужно запускать все процессы с помощью cgexec, чтобы поместить их в cgroup.

Я пытался использовать cgmanager, но эта служба, похоже, тоже не настраивается из /etc/cgconfig.conf. В целом, я нахожу информацию о том, как настраивать и использовать cgroups в системах Ubuntu Desktop, труднодоступной.

Итак, кто-нибудь может указать мне правильное направление? Какую службу мне нужно установить, и каким файлам конфигурации она подчиняется?

Просто для ясности: я не ищу контейнеры. Я ищу структурирование обработки ресурсов в одной выделенной системе.

Большое спасибо :)

решение1

# vi /etc/cgrules.conf
tomcat7:wkhtmltopdf cpu,cpuset  group1

# cgrulesengd -d -v -f /var/log/cgrulesengd.log &
# cat /var/log/cgrulesengd.log
CGroup Rules Engine Daemon log started
Current time: Thu Jan 15 16:04:20 2015

Opened log file: /var/log/cgrulesengd.log, log facility: 0, log level: 7
Proceeding with PID 28569
Rule: tomcat7:wkhtmltopdf
UID: 500
GID: N/A
DEST: group1
CONTROLLERS:
cpu
cpuset

Started the CGroup Rules Engine Daemon.

Связанный контент