O que é cgroupfs e como é usado com o Docker?

9

Na documentação do Docker, há uma discussão sobre as opções do execdriver nativo ( link ). A documentação diz

The native.cgroupdriver option specifies the management of the container’s cgroups. You can specify cgroupfs or systemd. If you specify systemd and it is not available, the system uses cgroupfs. By default, if no option is specified, the execdriver first tries systemd and falls back to cgroupfs. This example sets the execdriver to cgroupfs:

A minha pergunta é o que é cgroupfs e como se compara a systemd neste caso? Pesquisando informações sobre cgroupfs levou a um tweet :

--exec-opt native.cgroupdriver=cgroupfs FTW. seriously @docker, drop support for cgroups managed by systemd, it's a disaster

Mas espero que alguém possa fornecer mais detalhes sobre o que isso realmente faz, em vez de apenas usar uma configuração diferente da padrão.

    
por Gabriel Southern 02.12.2015 / 22:13

1 resposta

1

Como posso ver no comentário em fontes em: vendor/src/github.com/opencontainers/runc/libcontainer/factory_linux.go

// Cgroupfs is an options func to configure a LinuxFactory to return
// containers that use the native cgroups filesystem implementation to
// create and manage cgroups.

cgroupfs parece ser uma implementação própria da janela de encaixe ( libcontainer ) que configura os contêineres cgroups gravando diretamente em arquivos em cgroups-file-system (por exemplo, montado em /sys/fs/cgroup/ ).

    
por 21.01.2016 / 13:48

Tags