株式会社コーソル

コーソルDatabaseエンジニアのブログ

技術ブログ

Oracle VM 3.1.1を使ってみました

弊社のx86系プラットフォーム検証環境はOracle VMをベースに構築しています。
これまで、弊社の検証環境では Oracle VM 2.xを使用していましたが、以下の点を魅力に感じて、Oracle VM 3.xの導入と移行を検討しているところです。

  • OCFS2 reflinkによるVMのスナップショット取得
  • Oracle VM Managerの洗練化
  • 仮想ネットワークの洗練化(Oracle VM 2.xでの仮想ネットワークの扱いは、ナイーブ過ぎて不満がありました)

実際にOracle VM 3.xを使用して感じるのは、VMを構成するリソースハンドリングの抽象化が進んでいるということです。
ここでの抽象化とは、具体的にはVMを構成するリソース(≒dom-0からファイル等として見える構成要素)がUUIDベースで管理されており、ファイルパスからだけでは、個々ののファイルがどのVMのどのようなリソースであるかがよくわからないことを指しています。

[root@csov3m01 ovmrepo]# find -type f |xargs ls -l -h
-rw------- 1 root root  36  8月 24 17:11 ./.generic_fs_stamp
-rw------- 1 root root 152  8月 24 17:15 ./.ovsrepo
-rw-r--r-- 1 root root 704  8月 24 17:50 ./Templates/0004fb000014000015c12536919d816b/vm.cfg
-rw-r--r-- 1 root root 13G  8月 24 19:24 ./VirtualDisks/0004fb0000120000fc04d4cad1fa40df.img
-rw-r--r-- 1 root root 13G  3月  8  2011 ./VirtualDisks/e30b35ec-82a0-4b82-a25a-467a17d41251.img
-rw------- 1 root root 785  8月 24 18:28 ./VirtualMachines/0004fb0000060000289d70852505781a/vm.cfg
上記はVMテンプレートを1つ、VMを1つ展開した状態における、Dom-0に展開されるファイルパスの例です。ファイルパスに意味不明な16進数表記の文字列があることがわかると思います。16進数表記の文字列が16文字であり、バイト換算で16バイトに相当することから、おそらくこの16進数表記の文字列は、UUID(Universally Unique Identifier)類似の数値であると推測できます。

UUID - Wikipedia

UUID(Universally Unique Identifier)とは、Distributed Computing Environment (DCE)の一部としてOpen Software Foundation (OSF)が標準化した、一意に識別するための識別子である。UUIDは、分散システム上でどこかが統制を取らずとも、一意に特定可能な識別子の作成を目的としており、UUIDは重複や偶然の一致が起こりえないと確信して用いることができる。 (中略) UUIDは16バイトの数値で表され、「550e8400-e29b-41d4-a716-446655440000」のように表現する。

私の理解が正しければ、Oracle VM 2.x では、記憶域リポジトリ(/OVS)のみがUUIDベースで管理されていました。 Oracle VM 3.x では記憶域リポジトリ(/OVS)に加えて、以下のオブジェクトがUUIDベースで管理されているようです。

  • VM構成ファイル (vm.cfg)
  • 仮想ディスク
  • 仮想ネットワーク(仮想ブリッジ)
  • など

Dom-0からVMを構成するリソースをハンドリングすることを考えると、正直いってこの仕様は厄介です。

実は、Oracle VM 3.xからはDom-0からのVM制御は明確にサポート対象外とされています。xmコマンドを使用したVMの起動停止などのVM制御や、UNIXコマンドを用いた仮想ディスクの作成などです。

このため、必然的にすべての操作をOracle VM Manager(GUIベースのWebアプリケーション)から実行しなければならないわけなのですが、バージョン違い、Patchset違いなど多数のVM環境があり、かつ、各種管理作業が頻繁に発生するような検証環境を効率的に運用することを考えると、いちいちGUIベースのWebアプリケーションから操作するのは正直言って面倒すぎます。

また、サポート対象の構成だと以下の点で問題や、制限があるように思います。(認識違いでしたらぜひ教えてください)

  • OCFS のreflinkによるスナップショット機能を利用できない
  • VMのバックアップが容易に取得できない

また、もしかすると認識違いかもしれませんが、Oracle VM 2.xのVM資産を簡単に移行できないようです。(おそらくいったんテンプレート化する必要がある。RAC環境はどうする???)

というわけで、弊社検証環境では非サポート対象外の構成で突き進む予定です。(そもそもサポート買っていないし・・・)

もし、時間が割けたら、弊社検証環境で使用している非サポート対象外の構成についてBlogを書くかもしれません。

プロフィール

On7tWW6m1Ul4

渡部 亮太

・Oracle ACE
・AWS Certified Solutions Architect - Associate
・ORACLE MASTER Platinum Oracle Database 11g, 12c 他多数

カテゴリー

アーカイブ