minikube で 2 つの k8s 環境をセットアップしました。旗のある--container-runtime=dockerものと--container-runtime=containerd旗のあるもの。ここに私が見る違いがあります。
を設定するcontainer-runtime=dockerと、これらのことが起こります
- 実行中の
dockerdサービスがあります dockerdサービスはcontainerd独自の子として生成されます/usr/bin/containerd-shim-runc-v2実際のコンテナーを実行するプロセスがあり、これらのそれぞれの親はcontainerd-shim-runc-v2システム上の PID 1 です。
を設定するcontainer-runtime=containerdと、これらのことが起こります
- そこには
dockerdサービスも曖昧さもありません。 - PID 1が所有する
containerdプロセスがあります。ここでも、当然のことです。 containerd-shim実際のコンテナを実行するプロセスがあり、これらの各プロセスの親はcontainerd-shimcontainerd
だからここに私の質問があります
containerd-shimとはどう違いcontainerd-shim-runc-v2ますか?彼らはほとんど似たようなフラグなどを取っているようです.- シナリオ 1 ではシムが PID 1 の子であるのに、シナリオ 2 ではシムが containerd の子であるのはなぜですか?
編集:編集を考えただけです。ubuntu 20 ボックスに docker をインストールすると、dockerd は親が PID 1 の別のプロセスになり、containerd は親が PID 1 の別のプロセスになり、すべてのコンテナーは PID が 1 の container-shim-runc-v2 の子になります。 ?!?! containerdの子ではないのはなぜdockerdですか? これはどこで構成されていますか?