cgroupはネームスペースですか?

cgroupはネームスペースですか?

cgroupはネームスペースですか?

私がこの質問をしたのは、いくつかのブログでcgroupと名前空間が異なると話しているのを見たからです。ただし、他のLinuxコマンドでは、cgroupは一種の名前空間と見なされます。例えば、

% unshare --help | grep cgroup
 -C, --cgroup[=<file>]     unshare cgroup namespace
% lsns --help | grep cgroup
 -t, --type <name>      namespace type (mnt, net, ipc, user, pid, uts, cgroup)

ここで何が起こっているのでしょうか?

答え1

持つさまざまな名前空間タイプ、Cgroupはその一つです。

  • グループC
  • 産業用コンピュータ
  • ネットワーク
  • PID
  • 時間
  • ユーザー
  • UTS(ホスト名とNISドメイン名)

しかし、cgroupとcgroup 名前空間さまざまな操作が可能で、cgroup名前空間はcgroup階層を仮想化します。ほとんどの場合、cgroupを直接使用し、cgroup名前空間については気にしません。

答え2

Stephen Kittの答えが正しいことがわかりました。しかし、それでも問題を解決できない場合は、次のような問題を見ることができます。

おなじみの機能を持つネームスペースを選択してください。おそらくそれはネットです。そして、「ネットワークとネットワークの名前空間は同じですか?」という質問をしてください。いいえ、同じではありませんが、2つの間に関係があります。 Linuxでは、ネットワークはインターフェイス、IPアドレス、ルーティングテーブル、フィルタリングルール(iptables / nftなど)を表すことができます。その後、システムには多くのネットワーク名前空間を持つことができ、各ネットワーク名前空間内に一意のインターフェイス、IPアドレス、ルーティングテーブル、およびフィルタリングルールセットがあります。名前空間は、特定のLinux機能(私の場合はネットワーキング)用の仮想環境を作成します。

cgroupも同様です。 Linuxでは、cgroupはCPU、メモリなどのリソースを制限して追跡する方法を意味します。これにより、システムに多くのcgroup名前空間がある可能性があり、各グループ名前空間内に固有の制限とリソース追跡セットがあります。

関連情報