スポンサーリンク

問題の解答・解説ページ

このページは解説の閲覧モードです。
実力試しをしたい方は、下のボタンからクイズに挑戦してください!

この問題をクイズ形式で解く
問題 No.2834
企業の情報システム部門において、開発環境の構築を迅速化するため、OSレベルの仮想化技術を用いてアプリケーションの実行に必要なライブラリや設定ファイルなどをまとめて軽量に独立稼働させる仕組みを導入することにした。この技術に関する記述として、適切なものはどれか。

【正解の解説】

ホストOSのカーネルを共有しつつ独立した空間でアプリケーションを実行するため、仮想マシンと比較して起動が速くリソース消費を抑えられる。

これはよく「マンションの部屋の共有」に例えられます。従来の仮想マシンが一部屋ずつ一軒家をまるごと建てるような重さだったのに対し、コンテナは一つの大きな建物の基礎(カーネル)をみんなで共有し、壁で区切った自分専用の部屋(独立空間)で暮らすようなものです。そのため、荷物の運び込み(起動)が圧倒的に速く、無駄なスペースを消費しません。

スポンサーリンク

【その他の選択肢の解説】

ハードウェア全体を完全に仮想化して独立したOSを稼働させるため、物理サーバーと同様にあらゆる環境を完全に分離して実行できる。

問題文にある「OSレベルの仮想化(コンテナ)」ではなく、完全な仮想マシン(VM)の特徴を述べています。仮想マシンはハードウェアレベルからエミュレートするため、中に重たいゲストOSを丸ごとインストールする必要があります。そのため、起動に時間がかかりメモリも大量消費するというコンテナとの決定的な違いを狙ったひっかけ問題です。

ハイパーバイザー型と呼ばれる方式で専用の制御プログラムを介してハードウェアを直接制御するため、オーバーヘッドが最も少なく動作する。

ハイパーバイザー型はハードウェアを直接効率よく制御できますが、各仮想マシンに重いゲストOSを背負わせるため、実はOSレベルの仮想化(コンテナ)に比べるとオーバーヘッド(追加の負担)は大きくなります。「オーバーヘッドが最も少ない」という部分はコンテナの特徴であるため、ここを見抜くのが正解への鍵となります。

アプリケーションの実行ごとに専用のゲストOSを起動して処理するため、セキュリティ上の隔離性が高く既存システムからの移行が容易である。

コンテナ技術の最大の特徴は「ゲストOSを持たない」という点にあります。アプリケーションを動かすためにわざわざ重たいOSを毎回起動していたのでは、開発環境の迅速化という本来の目的が達成できません。重いOSを省いてアプリの実行に必要な最小限のセットだけを素早く立ち上げるのがコンテナの強みであるため、この記述は誤りとなります。