オリジナル問題 LinuCレベル2試験 問題 問1
コンテナ/コンテナの仕組み物理マシン・仮想マシン・コンテナの違いに関する説明として適切なものはどれか。
出典:オリジナル問題 LinuCレベル2試験 問題 問1
- Aコンテナは仮想マシンと同様に、それぞれが独立したカーネルを持つ
- B物理マシン・仮想マシン・コンテナはすべて同じ抽象化レベルの技術であり、本質的な違いはない
- CコンテナはホストOSのカーネルを共有しつつ、名前空間(namespace)やcgroupsによってプロセスやリソースを分離する、仮想マシンより軽量な仮想化技術である
- D仮想マシンはホストOSのカーネルを共有し、コンテナは独立したカーネルを持つ
正解:C
解説
物理マシンはハードウェアそのもの、仮想マシンはハイパーバイザーによってハードウェアごとエミュレートしゲストOS(独立したカーネル)を稼働させます。一方コンテナは、ホストOSのカーネルを共有しつつ、名前空間(namespace)でプロセスやネットワーク等の見え方を分離し、cgroupsでリソース使用量を制限することで、独立した実行環境を実現する、仮想マシンより軽量な仮想化技術です。
選択肢ごとの解説
- A誤り。コンテナはホストOSのカーネルを共有する技術であり、仮想マシンのように独立したカーネルを持つわけではありません。
- B誤り。物理マシン・仮想マシン・コンテナは抽象化のレベル(ハードウェア・OS・プロセス)が異なる技術であり、本質的な違いがあります。
- C正しい。コンテナはホストOSのカーネルを共有しつつ、namespaceとcgroupsで分離を実現する軽量な仮想化技術です。
- D誤り。ホストOSのカーネルを共有するのはコンテナで、仮想マシンは独立したゲストOS(カーネル)を持つため、説明が逆です。