Há cerca de 5 anos eu quero limitar a cpu de um usuário no CentOS (6) - sem usar o cloudlinux.
Até agora, ainda não conseguimos obter uma resposta para isso. cgroups parece ser uma solução. No entanto, não sei como configurar o arquivo de configuração.
Aqui está uma pergunta que começa a responder, MAS NÃO RESPONDE A ESTA PERGUNTA. Eu procuro novamente a cada poucos meses, mas sem sucesso.
Eu realmente preciso de ajuda para configurar isso, pois é realmente necessário.
Aqui está o que eu tenho até agora.
Eu instalei o serviço libcgroup yum install libcgroup
.
Eu verifiquei com ls /cgroup
e verifiquei se ele está instalado. Eu recebo esta saída:
blkio cpu cpuacct cpuset devices freezer memory net_cls
Agora, fui ao arquivo cgconfig.conf
. Está localizado em /etc/cgconfig.conf
Abaixo da seção mount { ... }
no arquivo cgconfig.conf
, adicionei o seguinte. Eu não sei se isso está certo (não sei se isso faz 10% de cpu).
Eu preciso de alguma ajuda para terminar isso para que eu possa finalmente restringir um usuário à porcentagem desejada de CPU (e, idealmente, memória, se possível!)
Isto é para criar o grupo chamado limitcpu
(embora eu realmente queira chamá-lo de grupo limitado ou algo assim porque eu também quero restringir a memória também, mas por enquanto vamos chamá-lo de limitcpu
group). / p>
group limitcpu {
cpu {
cpu.shares = 200;
# cpu.cfs_period_us
# cpu.cfs_quota_us
}
memory {
}
}
Então devo usar este modelo:
template users/%g/%u {
cpuacct{
}
cpu {
cpu.shares = "1000";
}
}
%g
deve ser o nome do grupo.
%u
é suposto ser nome de usuário.
Ok, então diga que meu usuário que eu quero limitar é chamado de resourcehoggeruser
. Como faço para completar a configuração acima para limitar a CPU e o emory alocados para este usuário?
Deve parecer algo assim?
template users/limitcpu/resourcehoggeruser {
cpuacct{
}
cpu {
cpu.shares = "1000";
}
}
O que é um "compartilhamento"? Digamos que eu tenha 16 CPUs e 24GB de RAM.
cpu.shares
se eu quiser ter 10% de cpu? Como sobre a memória?
mem.shares
, quais seriam os "compartilhamentos" de 10% da memória? Como cerca de 20% da memória? Eu realmente aprecio sua ajuda! Muito obrigado. Eu realmente preciso fazer isso funcionar. Eu procurei muito e muito e ainda não consegui encontrar uma resposta clara, então eu realmente preciso da sua ajuda.