SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

XenServer自動化スクリプティング集

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

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


  • X ポスト
  • このエントリーをはてなブックマークに追加

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

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 サーバー仮想化分野の代表的なプラットフォームの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」です。

次のページ
XenServer SDKとは

修正履歴

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
XenServer自動化スクリプティング集連載記事一覧
この記事の著者

シトリックス・システムズ・ジャパン株式会社(シトリックス・システムズ・ジャパン カブシキガイシャ)

シトリックス・システムズ・ジャパン株式会社

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/5212 2010/06/09 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング