view paper/ievirshcomp.tex @ 18:81cd898c04d4

fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 22 Apr 2014 15:50:29 +0900
parents 9fe7c82f0a9c
children
line wrap: on
line source

\section{ie-virsh と他のツールとの比較}
ie-virsh を実装し実際に授業 Operating System で使用した。情報工学科では ie-virsh や KVM だけでなく他の管理ツールやハイパーバイザを使用している。また使用を検討したものもいくつかある。それらと ie-virsh を比較する。

\subsection{OCFS2 と NASの比較}
ie-virsh の動作するサーバの構成では、SAN へ複数の PC が接続し同時にアクセスする。ext3・ext4 の様なファイルシステムでフォーマットを行うと、複数の PC から同時にアクセスした際に整合性が取れずファイルが破損してしまう。OCFS2 はSAN上の複数の PC から書き込まれてもファイルの整合性を保つ。
KVMからNFSでNASに接続する、あるいは、NFS経由で自身のfile system にアクセスすることでも同様のことが実現できるが、余計なネットワークトラフィックが出てしまう。

\subsection{KVM と VMWare ESXI の比較}

ie-virsh のハイパーバイザとして KVM を利用した。情報工学科では VMWare ESXI を利用しているが、VMWare を使用するためにはライセンス等でコストがかかる。KVM であれば Linux ベースの OS で利用できるため、無償で利用可能である。性能的にもほぼ同等であるが、現状ではVMWareの方が若干高速である。

\subsection{管理ツールの比較}
ie-virsh は virsh をラップするという形で実装が行われているが、VM を管理するツールは virsh だけではない。情報工学科では、授業や学科のシステムの管理として他のツールも使用している。ここでは他のツールを使用した場合と比較する。

\subsubsection{vSphere Client}
vSphere Client は仮想環境の統合管理をするプラットフォーム vCenter Server と接続し、管理するために使用される。vSphere Client は権限の詳細な設定が可能となっており、複数の学生に対して VM を配布し権限を管理するツールとしては適している。必要な権限を持つテンプレートを作り、それを学生のアカウントに割り当てることで学生がVMを使った実習をすることが可能になる。
自動で、これを行うことも可能だと思われるが、今回は、そこまでは用意していない。
手動で権限を委譲する場合は管理者側の操作も多く、60 名の受講者がいる授業 Operating System で学生への権限の配布に手間と時間が必要である。

ie-virsh はそういった権限を委譲するという操作が必要なく、また機能も学生が VM を操作するのに十分なように作られている。

\subsubsection{Vagrant}
Vagrant は KVM をプロバイダとするプラグインを持っている。よって KVM を VirtualBox の様にプロバイダとして Vagrant を動かすことが可能である。Vagrant をマルチユーザに対応させ、学生が使用可能に設定できるか試した。Vagrant を使うことができれば、KVM 用に VM イメージを変換することは必要だがノート PC の Vagrant と同様に操作することができる。

しかし Vagrant の KVM プラグイン vagrant-kvm はネットワークの実装が複数人で使用できるように実装されておらず、virsh のように使用するには向かなかった。
virsh の様に使用するためには、vagrant-kvm の実装に手を入れネットワーク部分を改良する必要がある。
Vagrant でできることは、ほぼ ie-virsh と同等であり、既存のBoxを使えること以上の利点はなかった。

\subsubsection{Web サービス実装}

VM を操作するインターフェイスとして、Web サービスを使用することも可能である。ie-virsh はコマンドラインでの操作になるが、Web サービスとして実装する場合は GUI 操作になる。別のサービスとして、vSphere の API を使用した Web サービスが情報工学科では使用されている。情報工学科の VMWare ESXi へ VM を作成し、起動・停止することができる。

Web サービスでは、GUI を操作するためにブラウザを起動しなければならない。また新しく GUI の操作に慣れる必要がある。ie-virsh は CLI であり、また virsh に近いため virsh の操作として覚えられる。しかし Web サービスは情報工学科のサービスであり IP アドレスの配布と連携しているため、IP 登録を自動で行う。ie-virsh は IP アドレスの登録は情報工学科のサービスを利用して行うため、新規に VM を作成する際は複数のサービスにまたがって操作しなければならない。

webvirt\cite[p.6]{shoshi:2011soft} が複数の VM を管理するために実装されていた。仮想環境の Web 管理ツールである。シングルノードのみを管理する目的で開発されているため、複数の学生が使用するには対応させる必要がある。

\subsubsection{OpenStack}

OpenStack はクラウド基盤ソフトウエアである。仮想サーバやブロックストレージ、仮想ネットワーク等のリソースを提供する。物理層に依存することなく標準化された IT インフラストラクチャである。しかし OpenStack はマルチユーザではないため、複数の学生の権限を管理することには向かなかった。