Я перехожу с Xen на KVM и буду использовать Fedora 14. Я планирую использовать cgroups для назначения приоритетов виртуальным машинам.
У меня следующий вопрос: если я помещаю виртуальные машины в разные контрольные группы, следует ли мне также поместить все другие процессы домена 0 (физического хоста) в одну контрольную группу, которой я бы затем назначил более низкий приоритет? Аналогия с Xen заключается в том, что все процессы Dom0 планируются пакетно, когда запланирована «VM» Dom0, поэтому, поместив их все в одну контрольную группу, я бы эмулировал это поведение. Однако, поскольку KVM не страдает от тех же зависимостей ввода-вывода Dom0, что и Xen, я мог бы назначить контрольной группе Dom0 низкий приоритет.
Другими словами, есть ли какое-либо потенциальное снижение производительности из-за всех фоновых процессов Dom0, таких как ntpd, yum и т. Д., Конкурирующих с виртуальными машинами, распределение ресурсов которых явно контролируется через cgroups? Какая здесь лучшая практика?
Я думаю, вам следует учитывать это в каждом конкретном случае (в зависимости от служб, которые вы используете на своем сервере). Например, я бы не поместил ntpd в группу с низким приоритетом, потому что вы полагаетесь на него, чтобы установить правильное время, поэтому любая задержка в выполнении кода ntpd приведет к неточности времени. Также у ntpd мало ресурсов, так зачем об этом беспокоиться?
Но имеет смысл ограничить другие процессы, такие как yum и другие системные некритические процессы, которые вы можете запускать, например, среду графического интерфейса, браузер и т. Д. Обычно они довольно требовательны к ресурсам.