CodeZine(コードジン)

特集ページ一覧

XenServer SDK for PowerShellを使ったXenServer仮想環境の自動化

XenServerスクリプティング(1)

  • LINEで送る
  • このエントリーをはてなブックマークに追加

 サーバー仮想化分野の代表的なプラットフォームの1つであるCitrix XenServerでは、他のサーバー仮想化製品同様に、スクリプティングを使った仮想環境の管理や運用の自動化が可能です。本連載ではXenServer環境をスクリプティングによって自動化するための基礎知識を紹介します。

目次

はじめに

 サーバー仮想化分野の代表的なプラットフォームの1つであるCitrix XenServerでは、他のサーバー仮想化製品同様に、スクリプティングを使った仮想環境の管理や運用の自動化が可能です。本連載ではXenServer環境をスクリプティングによって自動化するために必要とされる基礎知識について紹介します。

対象読者

  • Citrix XenServer バージョン5.xをインストールしてホスト構築できる方
  • 管理ツールXenCenterを使ったGUIベースの基本操作を知っている方
  • Microsoft PowerShellの構文について初歩知識を持っている方

Citrix XenServerの特長

 Citrix XenServerの特長は、無償で使用できるだけでなく、無償版そのままで大規模な環境を構築できる機能がすべて提供されているということです。無償版だからという理由で、プール構成やライブモーションなどの複数サーバーを前提とした機能が限定されるわけではありません。さらに、XenServerの運用管理に使えるAPIについても、範囲が限定されることなく提供されます。このため、無償版を入手すれば、スクリプティングによる自動化も可能になります。

オブジェクト指向アプリケーションとしてのXenServer

 「Citrix XenServerと言えばXenハイパーバイザー」ですが、XenServer仮想環境の管理機能もやはりXenハイパーバイザーによって制御されているのでしょうか。

 実は、XenServer管理機能の中核部分は、ハイパーバイザーとは別のオブジェクト指向アプリケーションによって制御されています。それは、マシン、ネットワークカード、ディスクなどのPC部品をオブジェクトとしてモデル化した、純粋な応用アプリケーションです。

 XenServerでは、PC部品別にオブジェクト・モデル(クラス)を保有しています。各クラスには、個々の部品に性格を与えてインスタンス化するための属性や操作が事前定義されています。詳細は、「Class Relation Diagram」で確認(※注1)できます。

※注1

 リンク先の画面右側に、PC部品に相当するさまざまなクラスが定義されており、各クラスのサブページを表示すると、プロパティ(フィールド)やメソッド(メッセージ)が用意されていることが分かります。

 XenServerで仮想マシンを作成したり運用したりするのは、オブジェクト指向アプリケーションを通して部品イメージのオブジェクトをオンデマンドで組み立て、PCのリアルタイムBTOを仮想で実現しているようなものです。

XenServerが動作する仕組み

 以上のように、XenServer実行中はオブジェクト・クラスのインスタンスが生成され、処理されます。それらの処理は、XenServer固有の命令によって制御されています。

 このXenServer固有の命令体系のことを、XenServer APIまたはXenAPI(ゼンエーピーアイ)と呼びます。また、XenAPIの命令を受け取って解釈し、適切な機能へと仲介しているのは、XenServerの管理用ドメイン(Dom0)で動作しているXAPI(ザピ)と呼ばれるデーモン(サービス)です(別名Toolstack(ツールスタック)とも呼ばれます)。

XenServerが動作する仕組み
XenServerが動作する仕組み

 XenServer環境のすべての動作がXenAPI命令をXAPIデーモンに渡すことによって制御されているということは、独自に開発したスクリプトやアプリケーションからXenAPI命令を呼び出してXAPIデーモンに渡すことさえできれば、XenServerの管理や運用を自動化できるのではないでしょうか。

 そのような要望を満たすためのツールが、XenServer製品リリースとともに公開されている「XenServer SDK」です。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

修正履歴

  • 2010/06/09 11:00 誤字を2か所修正

あなたにオススメ

著者プロフィール

バックナンバー

連載:XenServer自動化スクリプティング集
All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5