LinuCレベル3 プラットフォームスペシャリスト コンテナ技術の利用 問1
コンテナ技術の利用/コンテナの基本原理と内部構造Linuxコンテナに関する説明として、正しいものをすべて選べ。
当サイトのオリジナル問題(LinuCレベル3 プラットフォームスペシャリストの出題範囲「コンテナ技術の利用」に対応。実際の試験問題ではありません)
- AコンテナはホストOSのカーネルを共有し、その上でプロセスとして動作する
- Bコンテナは仮想マシンと比べて起動が遅く、実行時のオーバーヘッドも大きい
- Cコンテナはホストとは独立した専用のカーネルを内部に持ち、異なるOSのカーネルも動作させられる
- Dコンテナの分離は、名前空間(namespace)とcgroupsというカーネルの機能によって実現される
正解:A、D
解説
Linuxコンテナは、ホストOSのカーネルを共有しつつ、名前空間(namespace)でプロセスやネットワーク等の見え方を分離し、cgroupsでリソース使用量を制限することで、独立した実行環境を実現する軽量な仮想化技術です。仮想マシンのように独立したカーネルを持つわけではなく、一般的に起動が速くオーバーヘッドも小さいという特徴があります。
選択肢ごとの解説
- A正しい。コンテナはホストOSのカーネルを共有し、その上のプロセスとして動作します。
- B誤り。コンテナはホストのカーネルを共有するため、仮想マシンより起動が速くオーバーヘッドも小さいのが特徴です。
- C誤り。独立したカーネルを持つのは仮想マシンで、コンテナはホストと同じカーネルの上でしか動作できません。
- D正しい。プロセスやネットワークの見え方の分離は名前空間、リソースの制限はcgroupsが担います。