Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
Os cgroups, ou grupos de controle, são uma funcionalidade poderosa do kernel do Linux que permite limitar, contabilizar e isolar o uso de recursos (como CPU, memória, disco e rede) de coleções de processos. Eles são essenciais para gerenciar recursos em ambientes de contêineres, como Docker e Kubernetes, mas também podem ser usados em sistemas Linux para otimizar o uso de recursos.
Cgroups permitem que você:
Primeiro, verifique se o cgroups está habilitado no seu sistema:
mount | grep cgroup
Se o cgroups estiver habilitado, você verá várias entradas relacionadas a diferentes subsistemas (como cpu
, memory
, etc.).
Vamos criar um novo cgroup para limitar o uso de CPU de um processo.
sudo mkdir /sys/fs/cgroup/cpu/my_cgroup
Por exemplo, para limitar o uso de CPU a 20%, edite o arquivo cpu.cfs_quota_us
:
echo 20000 | sudo tee /sys/fs/cgroup/cpu/my_cgroup/cpu.cfs_quota_us
E defina o período para 100000 microsegundos (100ms):
echo 100000 | sudo tee /sys/fs/cgroup/cpu/my_cgroup/cpu.cfs_period_us
Para adicionar um processo ao cgroup, você precisa do PID do processo. Suponha que o PID seja 1234:
echo 1234 | sudo tee /sys/fs/cgroup/cpu/my_cgroup/cgroup.procs
Agora, o processo com PID 1234 está limitado a usar apenas 20% da CPU.
Você pode monitorar o uso de CPU do cgroup usando:
cat /sys/fs/cgroup/cpu/my_cgroup/cpu.stat
Os cgroups são uma ferramenta essencial para gerenciar recursos em sistemas Linux, especialmente em ambientes de virtualização e contêineres. Eles oferecem um controle granular sobre como os recursos são alocados e utilizados, permitindo otimizações e isolamento eficazes.