Como configurar limites de CPU e memória por aplicação no VPS usando cgroups
Olá, querido(a) cliente da GeHost! Seja bem-vindo(a) ao seu guia de bordo para dominar o poder do seu servidor com sabedoria. Aqui, você vai aprender, de forma simples e clara, como usar cgroups para controlar recursos — como CPU e memória — por aplicação no seu VPS. Não se preocupe: não é difícil, e eu, seu Sensei, vou te guiar passo a passo, com paciência e carinho.
Antes de tudo, um lembrete importante: os planos GeHost são baseados em hospedagem cPanel, com recursos compartilhados ou dedicados, dependendo do seu plano. Se você tem um VPS, isso significa que você tem mais controle — e com controle vem responsabilidade. E é justamente isso que vamos explorar hoje.
💡 Dica do Sensei: cgroups (control groups) são uma ferramenta do Linux que permite limitar, isolar e monitorar o uso de recursos por processos ou grupos de processos. É como dar uma "carteira de limites" para cada aplicação no seu servidor.
Passo 1: Acesse o painel do seu VPS
Se você está no VPS, provavelmente tem acesso via SSH. Abra seu terminal ou cliente SSH favorito (como PuTTY ou Termius) e conecte-se ao seu servidor.
Se não souber como fazer isso, acesse seu painel do cliente em painel.gehost.com.br e verifique as informações de acesso fornecidas no seu plano.
Passo 2: Verifique se o sistema suporta cgroups
Antes de tudo, vamos confirmar que seu sistema tem suporte a cgroups. Abra o terminal e execute:
ls /sys/fs/cgroup
Se aparecerem pastas como cpu, memory, cpuacct, etc., então você está pronto para seguir. Caso contrário, seu sistema pode não ter suporte ou não estar configurado corretamente.
Passo 3: Crie um grupo de controle (cgroup) para sua aplicação
Suponha que você tenha uma aplicação chamada minha-app que está consumindo muita memória. Vamos criar um cgroup para ela:
- Crie um novo grupo de controle:
- Defina o limite de memória (ex: 512 MB):
- Ative o cgroup:
sudo mkdir /sys/fs/cgroup/memory/minha-app
echo 536870912 | sudo tee /sys/fs/cgroup/memory/minha-app/memory.limit_in_bytes
echo 1 | sudo tee /sys/fs/cgroup/memory/minha-app/memory.use_hierarchy
Pronto! Agora, qualquer processo que você execute dentro desse grupo será limitado a 512 MB de memória.
Passo 4: Atribua seu processo ao cgroup
Suponha que você esteja executando uma aplicação com o comando:
python app.py
Para colocar esse processo no cgroup criado, execute:
echo $$ | sudo tee /sys/fs/cgroup/memory/minha-app/cgroup.procs
Isso atribui o processo atual (o que está rodando) ao grupo minha-app. Se quiser, pode usar um PID específico em vez de $$.
Passo 5: Configure limites de CPU (opcional)
Para limitar a CPU, siga um processo semelhante:
- Crie o grupo de CPU:
- Defina a porcentagem de CPU (ex: 50%):
- Defina o período (em microssegundos):
- Adicione o processo:
sudo mkdir /sys/fs/cgroup/cpu/minha-app
echo 50000 | sudo tee /sys/fs/cgroup/cpu/minha-app/cpu.cfs_quota_us
echo 100000 | sudo tee /sys/fs/cgroup/cpu/minha-app/cpu.cfs_period_us
echo $$ | sudo tee /sys/fs/cgroup/cpu/minha-app/cgroup.procs
Pronto! Agora sua aplicação não pode usar mais que 50% da CPU.
Passo 6: Verifique os limites em tempo real
Para ver como a aplicação está se comportando, use:
cat /sys/fs/cgroup/memory/minha-app/memory.stat
ou
cat /sys/fs/cgroup/cpu/minha-app/cpu.stat
Isso mostra informações como uso atual, limites e se o processo ultrapassou o limite.
Passo 7: Automatize (opcional, mas recomendado)
Para não precisar configurar tudo toda vez que reiniciar o servidor, você pode criar um script de inicialização ou usar um serviço systemd. Se precisar de ajuda com isso, basta entrar em contato com nosso suporte técnico — estamos aqui para te ajudar!
❤️ Dica do Sensei: Se você não tem certeza sobre os comandos ou está com medo de errar, não se preocupe. A GeHost oferece 30 dias grátis de suporte após a entrega. Use esse tempo para testar, aprender e se sentir seguro.
Conclusão: Você está no controle!
Configurar limites de CPU e memória com cgroups pode parecer assustador no início, mas agora você já sabe que é só uma questão de paciência, prática e um pouco de amor pelo servidor. Cada limite que você define é um passo para manter seu sistema saudável, estável e pronto para crescer com você.
Se precisar de ajuda com scripts, automação ou entender melhor como seu VPS está funcionando, nosso suporte está à disposição. Lembre-se: você não está sozinho nessa jornada.
Com carinho,
Seu Sensei da GeHost
Quer saber mais? Acesse nosso site oficial ou entre em contato no painel do cliente.
Dados da empresa: G e Soluções e Eventos LTDA (CNPJ: 46.647.904/0001-04). Dono: Raphael Neves Koga (desde 2015).