<Anterior | Conteúdo | Próxima>
6.10. Grupos de controle
Os grupos de controle (cgroups) são um recurso do kernel que fornece agrupamento hierárquico de tarefas e contabilidade e limites de recursos por cgroup. Eles são usados em contêineres para limitar o acesso a dispositivos de bloqueio e caractere e para congelar (suspender) contêineres. Eles podem ser usados posteriormente para limitar o uso de memória e bloquear E / S, garantir compartilhamentos de CPU mínimos e para bloquear contêineres para CPUs específicas.
Por padrão, um contêiner CN privilegiado será atribuído a um cgroup chamado / lxc / CN. No caso de conflitos de nome (que podem ocorrer ao usar lxcpaths personalizados), um sufixo "-n", onde n é um inteiro começando em 0, será anexado ao nome do cgroup.
Por padrão, um contêiner CN privilegiado será atribuído a um cgroup chamado CN sob o cgroup da tarefa que iniciou o contêiner, por exemplo /usr/1000.user/1.session/CN. A raiz do contêiner terá a propriedade de grupo do diretório (mas não de todos os arquivos) para que seja permitido criar novos cgroups filhos.
A partir do Ubuntu 14.04, o LXC usa o gerenciador cgroup (cgmanager) para administrar cgroups. O gerenciador cgroup recebe solicitações D-Bus através do soquete Unix / sys / fs / cgroup / cgmanager / sock. Para facilitar contêineres aninhados seguros, a linha
lxc.mount.auto = cgrupo
pode ser adicionado à configuração do contêiner, causando o / sys / fs / cgroup / cgmanager diretório a ser montado por bind no contêiner. O contêiner, por sua vez, deve iniciar o proxy de gerenciamento cgroup (feito por padrão se o pacote cgmanager estiver instalado no contêiner) que moverá o / sys / fs / cgroup / cgmanager diretório para /sys/fs/cgroup/cgmanager.lower, em seguida, comece a escutar as solicitações de proxy em seu próprio soquete / sys / fs / cgroup / cgmanager / sock. O host cgmanager garantirá que os containers aninhados não possam escapar de seus cgroups atribuídos ou fazer solicitações para as quais eles não estão autorizados.
Documentação