LinuCレベル3 304試験の例題と解説
330.4その他の仮想化ソリューション
■トピックの概要
このトピックの内容は以下の通りです。
<330.4 その他の仮想化ソリューション>
重要度 3
<説明>
XenおよびKVM以外の仮想化技術についての基本的知識と経験。
<主要な知識範囲>
・OpenVZ と LXCの基本知識
・その他の仮想化技術についての認知
・その他の仮想化技術に関する基本的な技術的知識
<重要なファイル、用語、ユーティリティ>
・OpenVZ
・VirtualBox
・LXC
・docker
・packer
・vagrant
■例題
様々な仮想化技術の説明として間違っているものを選びなさい。
1. コンテナ技術は高速でメモリ使用量が少ないのがメリットである
2. VirtualBoxはGPLで公開されているホストOS型の仮想マシンソフトウェアである
3. Dockerは高速なハイパーバイザー型の仮想マシン実行環境である
4. Vagrantを利用することで仮想マシンの構成を自動化できる
※この例題は実際のLinuC試験とは異なります。
解答と解説
答えは3. dockerは高速なハイパーバイザー型の仮想マシン実行環境である です。
VirtualBoxは、GPLでライセンスされたオープンソースの仮想マシンソフトウェアです。ホストOS型のため、Linux上にインストールすることで仮想マシンを実行できます。Linux上の通常のアプリケーションとして使用できるので、扱いやすい点がメリットです。また、WindowsやMac OS Xなどでも動作するクロスプラットフォームなソフトウェアである点も特徴でしょう。
Vagrantは、VirtualBoxをはじめとした仮想マシン実行環境と連携して動く自動化ソフトウェアです。仮想マシンを自動的にインストール、設定してくれる仕組みを提供してくれます。たとえば、プログラムの開発環境のように、開発者の間で同じ仮想マシンを共通で利用したいような場合に使用することが考えられます。
コンテナ技術は、Linuxカーネル上で動作しているプロセスをそれぞれ「コンテナ」という単位で処理することで、あたかも別々のシステムが動作しているように扱える仮想化技術です。カーネルが1つなのでメモリ消費量が他の仮想化技術に比べて抑えられること、プロセスとして動作しているだけなので高速に動作するのがコンテナ技術のメリットです。ファイルシステムはchrootのように、別々のルート(/)ディレクトリを持ちます。LinuxではLXCやDockerといったコンテナ技術が利用できます。
最近ではシステムの目的に応じて適切な仮想化技術を選択するようになってきているので、XenやKVMと合わせて各仮想化技術の特徴を把握しておきましょう。
■例題作成者 株式会社びぎねっと 代表取締役社長 宮原徹氏 ※上記の解説とその内容については、例題作成者の監修です。