2012年12月8日土曜日

ユーティリティサーバの話。

Oracle VM には、
ユーティリティサーバという役割を持つOVSサーバが存在します。

まず、
ユーティリティサーバの特徴を簡単にまとめてみます。 
  • 高IO処理(VMクローンなど)を担当するOVS
  • 通常のOVS同様、ユーティリティサーバ上でVMを起動することが可能
  • サーバプールごとに指定しておく必要がある

OVS側(Dom0側)でのIOは、仮想環境に対して影響を出しやすいため
別途、ユーティリティサーバという
IO処理専用OVSサーバ を用意するわけです。

OVSを1台だけで運用しているときは、
そのサーバ自体がユーティリティサーバになります。
OVSを複数台稼働させる環境では、
ユーティリティサーバ専用のOVSを稼働させることもできます。

ユーティリティサーバが存在する意味


従来の物理サーバのみを使用している環境でも、
「サービス影響(性能ダウン)を出さないようにバッチ処理は別のサーバからしよう」
「DBに対するバッチ処理は、別のバックアップ処理サーバから実行しよう」
といった、処理を外のサーバに出すことが多いと思います。

たとえば、下の図のように
ほかのサーバからDBのデータをコピーして、
DBサーバ側のリソースを使うことを避けたりするといった感じです。
(OracleのDBFをなにも考えずにコピーするとひどいことになりますが)
 

それと同じ感覚で、
「他のVMに影響を出しやすい、OVSでのIO処理は専用のOVSにやらせよう」
というのが、OVSのユーティリティサーバです。

ユーティリティサーバがについて考えること


OracleVMでユーティリティサーバを指定するときは、
サーバプール単位で指定します。
また、サーバプールに対して、複数台のユーティリティサーバを
配置することも可能です。
 
そのため、OVSの配置台数などを考えるときは、
  • サーバプールに追加するOVSのうち、
    どのOVSにユーティリティサーバの役割をもたせるか
  • ユーティリティサーバは何台必要か
    (どういったVM作成、クローンをするかによる)
といったことを考慮しておく必要があります。


サーバプール内でユーティリティサーバに依頼できる処理を
実行するときは、自動的にユーティリティサーバに働いてもらえます。
そのため、普段は(一度 環境構築が終わってしまったら)
ユーティリティサーバの存在はほとんど意識しないかもしれません。

 
以上、ユーティリティサーバの話でした。
  

0 件のコメント:

コメントを投稿