#highload #производительность #limits #linux
Есть linux, пользователи пользуются ресурсами данной машины. Но делают это, не понимая, что сервер один на всех )) и грузят его максимально тем самым мешая друг другу.Дано: Виртуалка CentOS6.3 x64, 4GB RAMВот имею примерно такой вывод atop по самым пожирателям.NPROCS SYSCPU USRCPU VSIZE RSIZE RDDSK WRDSK RNET SNET CPU RUID 1/155 0.05s 1.88s 14.6G 877.6M 0K 0K ? ? 39% user156 0.06s 0.45s 12.8G 603.1M 0K 32K ? ? 19% user257 0.01s 0.04s 12.0G 594.8M 0K 24K ? ? 11% user3 3 0.00s 0.00s 401.9M 6632K 0K 0K ? ? 0% user4Хочу в /etc/sucurity/limits.conf зарезать немного их аппетиты, но пока выходит не очень.хочу кол-во процессов на юзера сделать soft/hard - 50/65, уменьшить значение VSIZE (virtual memory?), RSIZE (real memory?), и чтобы не жрали USRCPU (значение задается в минутах, т.е. как я понимаю сейчас значение 1.88s = это 1 минута 88сек??? а почему не 2.28s в любом случае процессор надо лимитировать)Все пользователи входят в группу @domainusers, при попытке дать лимиты этой группе понял что это неверно т.к. все лимиты делятся пропорционально на зашедших в систему юзеров и в итоге хватает ресурсов только на одного.. ))Остается только пологинно перечислять всех в limits.confuser1 soft nproc 50user1 hard nproc 65user1 soft cpu 1user1 hard cpu 2user1 soft as 1500000user1 hard as 2000000user1 soft rss 400000user1 hard rss 500000....user2 ....p.s. "as" как говорит (гугл) это и есть виртуальная памятьВсе ли я верно делаю?P.S. эксперименты с limits.conf не внушают мне надежды. Когда лимиты подходят к своему пределу система становиться нестабильна и доходит до выпадания в корку. К примеру тупо не хватает свободных процессов, чтобы открыть вкладку и, к примеру, браузер рушиться в этот момент какая-нибудь дебаг-тулуза хочет отправить отчет и тоже валится и все крайне нестабильно начинает существовать.P.P.S. Начал разбирать тему с cgroups/cgrules - этот механизм вроде более жизнеспособен.
Ответы
Ответ 1
Вариант: PAM и его limits.confОтвет 2
cgroup самый правильный и скорее всего единственный инструмент в linux-e для этого
Комментариев нет:
Отправить комментарий