仮想化環境KVMのシステム管理、監視

2010年12月15日(水)
古賀 政純

仮想化環境の運用管理

仮想化は、もはやx86サーバー・システムでは当たり前の技術となっています。物理サーバーのリソースを有効利用できるのはもちろんのこと、運用管理の簡素化や調達コストの削減など、さまざまなメリットをもたらします。

サーバー仮想化ソフトとしては、VMware、Hyper-V、XenServerなどが有名です。Linuxにおいては、XenとKVMがよく使われています。最初に、XenがLinuxカーネルに取り込まれ、OS付属の仮想化ソフトとして着目されました。現在では、Fedoraプロジェクトや米Red Hatの方針により、KVMが主流になりつつあります。

ただし、KVMは、Xenと同様に、運用管理に関して独特のノウハウが必要です。仮想化によるメリットを享受するまでに、敷居があるのも否めません。

そこで、本連載では、LinuxのKVM環境のための運用管理ツールとして広く使われているvirt-managerとVNCを取り上げ、(2010年12月時点で最新の)Red Hat Enterprise Linux 6とUbuntu 10.10向けに、KVM環境の構築・運用管理手法を紹介します。

KVM仮想マシン管理ツール「virt-manager」を使いこなす

KVMは、Red Hat Enterprise Linux 6.0やUbuntu 10.xに搭載されている仮想化技術です。OS付属の仮想化機能であるため、仮想マシンの構築や基本的な運用を、OSの機能だけで行うことが可能です。KVMそのものは、標準のLinuxカーネルにマージされています。このため、カーネルのビルドなども不要です。

KVMの仮想マシンを構築する方法はさまざまです。GUIを使って構築するやり方や、コマンド・ラインで構築するやり方があります。Red Hat Enterprise Linux 6の場合は、GUIベースのvirt-managerを使うやり方が一般的です。Virt-managerは、Red Hat Enterprise Linux 6に標準で付属しているGUIツールであり、対話形式によって仮想マシンを構築・管理できるので、初心者向きといえます。

まずは、virt-managerを使った仮想マシンの作成手順を説明します。virt-managerはGUIツールですが、起動時にはコマンド・ラインからvirt-managerコマンドで起動させます。

# virt-manager

ストレージ・プールの初期設定

Red Hat Enterprise Linux 6のコマンド・ラインからvirt-managerを起動すると、virt-managerのGUIウインドウが現れます。初期設定として、まずは仮想マシンのイメージ・ファイルを保管するディレクトリを指定します。一般的には、仮想マシンのライブ・マイグレーションを行うことを考慮し、外部ストレージにマウントしたディレクトリ・パスを指定します。

外部ストレージは、Red Hat Enterprise Linux 6が正式にサポートしているFC(Fibre Channel)ストレージやiSCSIストレージでなければなりません。ここでは、iSCSIストレージ上の/workを仮想マシンのイメージ・ファイルの保存先として設定します。

仮想マシンを保存するディレクトリを指定するためには、virt-managerの「編集」から「ホストの詳細」を選択します。ホストOSに関する設定ウインドウが現れるので、「ストレージ」タブをクリックすると、仮想マシンのイメージ・ファイルを保存するディレクトリなどを決めるためのプール設定があります。

デフォルトのプール「default」では、イメージの保存先が「/var/lib/libvirt/images」になっています。この「default」プールは通常、ローカル・ディスク用のストレージ・プールとして利用するものです。ライブ・マイグレーションなどの運用を行う場合には、別途、共有ストレージ用のストレージ・プールを作成することを勧めます。

図1: Red Hat Enterprise Linux 6に付属するvirt-managerを使って仮想マシンのイメージ・ファイルを保管するストレージ・プールを設定している様子。デフォルトではプール「default」が存在する。

図1: Red Hat Enterprise Linux 6に付属するvirt-managerを使って仮想マシンのイメージ・ファイルを保管するストレージ・プールを設定している様子。デフォルトではプール「default」が存在する。(クリックで拡大)


新たなプールとして、iSCSIストレージ上にマウントされた/workを作成する場合には、「ストレージ」タブ中の左下にある、プラス印のボタンをクリックします。「新規ストレージプールを追加」というウインドウが新たに現れるので、名前を付けます。

今回は、workにします。ストレージ・タイプは「dir: Filesystem Directory」を指定します。「進む」をクリックすると、「ターゲットパス」を入力する個所があるので、仮想マシンのイメージ・ファイルを格納するディレクトリ・パス「/work」を入力し、「完了」をクリックします。これでストレージ・プールの準備ができました。

図2: 新規ストレージ・プール「work」を追加する。

図2: ストレージ・プール「work」のターゲット・パスを/workに設定する。仮想マシンのイメージ・ファイルは/workに格納される。

図2: 新規ストレージ・プール「work」を追加する(左)。ストレージ・プール「work」のターゲット・パスを/workに設定する。仮想マシンのイメージ・ファイルは/workに格納される(右)。(クリックで拡大)


作成したストレージ・プールに、仮想マシンのイメージ・ファイルを作成します。ストレージ・タブ中のウインドウ中央下あたりにある「新規ボリューム」をクリックします。「新規ストレージボリュームを追加」というウインドウが現れるので、仮想マシンのイメージ・ファイルとなる名前を入力します。

ここでは、イメージ・ファイル名を「rhel60vm01.img」にするので、名前として「rhel60vm01」を入力し、フォーマットには「raw」を選択します。ストレージ・ボリュームに割り当てる容量は、今回は9000Mバイトとしました。

図3: ストレージ・プール「work」に、ストレージ・ボリュームを割り当てる。仮想マシンの名前と最大容量を指定する。上図では、イメージ・ファイルの最大サイズとして、9000Mバイトを指定している。

図3: ストレージ・プール「work」に、ストレージ・ボリュームを割り当てる。仮想マシンの名前と最大容量を指定する。上図では、イメージ・ファイルの最大サイズとして、9000Mバイトを指定している。(クリックで拡大)


以上で、KVMのストレージ・プールとストレージ・ボリュームの割り当てが完了し、仮想マシンを作成する準備が整いました。共有ストレージ用の/workをストレージ・プールとして利用し、そこに保管されるrhel60vm01.imgファイルを仮想マシンのイメージ・ファイルとして利用することになります。

日本ヒューレット・パッカード株式会社 プリセールス統括本部 ソリューションセンター OSS・Linux担当 シニアITスペシャリスト

兵庫県伊丹市出身。1996年頃からオープンソースに携わる。2000年よりUNIXサーバーのSE及びスーパーコンピューターの並列計算プログラミング講師を担当。科学技術計算サーバーのSI経験も持つ。2005年、大手製造業向けLinuxサーバー提案で日本HP社長賞受賞。2006年、米国HPからLinux技術の伝道師に与えられる「OpenSource and Linux Ambassador Hall of Fame」を2年連続受賞。日本HPプリセールスMVPを4度受賞。現在は、Linux、FreeBSD、Hadoop等のOSSを駆使したスケールアウト型サーバー基盤のプリセールスSE、技術検証、技術文書執筆を担当。日本HPのオープンソース・Linuxテクノロジーエバンジェリストとして講演活動も行っている。Red Hat Certified Engineer、Red Hat Certified Virtualization Administrator、Novell Certified Linux Professional、EXIN Cloud Computing Foundation Certificate、HP Accredited Systems Engineer Cloud Architect、Red Hat Certified System Administrator in Red Hat OpenStack、Cloudera Certified Administrator for Apache Hadoop認定技術者。HP公式ブログ執筆者。趣味はレーシングカートとビリヤード

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています