cgroupfsとは何ですか、Dockerとどのように機能しますか?

cgroupfsとは何ですか、Dockerとどのように機能しますか?

Dockerドキュメントには、デフォルトのexecdriverのオプションが記載されています(https://docs.docker.com/engine/reference/commandline/daemon/)。文書によると

Native.cgroupdriverオプションは、コンテナのcgroup管理を指定します。 cgroupfs または systemd を指定できます。 systemdが指定されているが使用できない場合、システムはcgroupfsを使用します。デフォルトでは、オプションが指定されていない場合、execdriverは最初にsystemdを試してからcgroupfsに置き換えます。この例では、execdriverをcgroupfsに設定します。

私の質問は、この場合、cgroupfsそれが何であり、どのように比較するかです。原因に関する情報をsystemdGoogleで検索してください。cgroupfsTwitter:

--exec-opt Native.cgroupdriver=cgroupfs FTW。真剣に@docker、systemd管理cgroupのサポートを停止するのは災いです

しかし、デフォルトとは異なる設定を使用するように言うよりも、誰かが実際に行うことについてより多くの情報を提供できることを願っています。

答え1

次の情報源のコメントからわかるように: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.

cgroupfslibcontainerコンテナがcgroupsファイルに直接書き込むように設定する独自のdocker()実装のようですcgroups-file-system(たとえば、にインストールされています/sys/fs/cgroup/)。

関連情報