(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-07
(45)【発行日】2023-11-15
(54)【発明の名称】構築管理装置、情報処理システム及び構築管理プログラム
(51)【国際特許分類】
G06F 13/14 20060101AFI20231108BHJP
G06F 9/455 20180101ALI20231108BHJP
G06F 13/10 20060101ALI20231108BHJP
【FI】
G06F13/14 310H
G06F9/455 150
G06F13/10 340A
G06F13/14 330B
(21)【出願番号】P 2020048700
(22)【出願日】2020-03-19
【審査請求日】2022-12-08
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】堂下 晃広
(72)【発明者】
【氏名】宮内 啓次
(72)【発明者】
【氏名】松浦 努
(72)【発明者】
【氏名】松田 純一
【審査官】松平 英
(56)【参考文献】
【文献】国際公開第2015/114745(WO,A1)
【文献】特開2011-76582(JP,A)
【文献】特開2018-195161(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/06-3/08
9/455-9/54
13/10-13/14
(57)【特許請求の範囲】
【請求項1】
物理サーバが物理ストレージとのデータ転送に用いる物理ポートに複数の仮想ポートを対応付けるとともに各仮想ポートに前記物理サーバで動作する仮想サーバが実行するミドルウェアが要求する応答仕様を対応付ける仮想ポート構築データと、前記仮想ポートと前記物理ストレージとを対応付ける接続定義データとを取得する接続取得部と、
前記接続取得部により取得された仮想ポート構築データに基づいて、前記複数の仮想ポートを前記物理ポートに構築する命令を生成して、前記物理サーバに送信し、前記接続取得部により取得された接続定義データに基づいて、前記仮想ポートを介して前記物理サーバと前記物理ストレージを接続する命令を生成して、前記物理ストレージに送信する接続生成部と
を有することを特徴とする構築管理装置。
【請求項2】
前記物理サーバと前記仮想サーバと前記物理ストレージが提供する論理ユニットとを対応付ける構成定義データを取得する構成取得部と、
前記構成取得部により取得された構成定義データに基づいて、前記物理ストレージに前記論理ユニットを作成する命令と前記論理ユニットを前記仮想ポートに接続する命令を生成して、前記物理ストレージに送信し、前記論理ユニットと前記仮想サーバを組み込む命令と前記仮想サーバを構築する命令とを生成して、前記物理サーバで動作し前記仮想サーバを制御するハイパーバイザに送信する構成生成部と
をさらに有することを特徴とする請求項1に記載の構築管理装置。
【請求項3】
前記論理ユニットは、複数の物理サーバでそれぞれ動作する複数の仮想サーバで共有されることを特徴とする請求項2に記載の構築管理装置。
【請求項4】
前記構成取得部は、更新された構成定義データを取得し、
前記構成生成部は、更新された構成定義データと更新前の構成定義データに基づいて、削除対象の仮想ストレージを特定し、特定した仮想ストレージを切り離す命令を生成して、前記ハイパーバイザに送信し、特定した仮想ストレージを実現する論理ユニットの仮想ポートとの接続を解除する命令と該論理ユニットを削除する命令を生成して、前記物理ストレージに送信することを特徴とする請求項2又は3に記載の構築管理装置。
【請求項5】
前記接続生成部は、前記物理サーバに異常が発生した場合に、前記仮想ポートを介した前記物理サーバと前記物理ストレージの接続を解除する命令と、前記仮想ポートを介した予備の物理サーバと前記物理ストレージの接続を構築する命令を生成し、前記物理ストレージに送信し、
前記構成生成部は、前記物理サーバに異常が発生した場合に、前記物理サーバの仮想ポートと前記論理ユニットの接続を解除する命令と、前記予備の物理サーバの仮想ポートと前記論理ユニットの接続を構築する命令を生成し、前記物理ストレージに送信することを特徴とする請求項2、3又は4に記載の構築管理装置。
【請求項6】
前記構成生成部は、前記仮想サーバが他の物理サーバに移動された場合に、前記仮想サーバが接続する仮想ポートと前記論理ユニットとの接続を解除する命令と、前記他の物理サーバの物理ポートに構築された仮想ポートに前記論理ユニットを接続する命令を生成して、前記物理ストレージに送信し、前記論理ユニットで実現される仮想ストレージと前記仮想サーバを組み込む命令と前記仮想サーバを構築する命令とを生成して、移動先の物理サーバで動作するハイパーバイザに送信することを特徴とする請求項2~5のいずれか1つに記載の構築管理装置。
【請求項7】
前記仮想ポート構築データは、各仮想ポートに前記物理サーバで動作する仮想サーバで構築されるコンテナで実行されるミドルウェアが要求する応答仕様を対応付け、
前記構成定義データは、前記物理サーバと前記仮想サーバと前記コンテナと前記論理ユニットとを対応付け、
前記構成生成部は、前記論理ユニットで実現される仮想ストレージと前記仮想サーバを組み込む命令と前記仮想サーバ及び前記コンテナを構築する命令とを生成して、前記ハイパーバイザに送信することを特徴とする請求項2~6のいずれか1つに記載の構築管理装置。
【請求項8】
前記論理ユニットは、SDSコントローラを介して前記物理ストレージから提供されることを特徴とする請求項2~7のいずれか1つに記載の構築管理装置。
【請求項9】
物理サーバと物理ストレージと構築装置とを有する情報処理システムにおいて、
前記構築装置は、
前記物理サーバが物理ストレージとのデータ転送に用いる物理ポートに複数の仮想ポートを対応付けるとともに各仮想ポートに前記物理サーバで動作する仮想サーバが実行するミドルウェアが要求する応答仕様を対応付ける仮想ポート構築データと、前記仮想ポートと前記物理ストレージとを対応付ける接続定義データとを取得する接続取得部と、
前記接続取得部により取得された仮想ポート構築データに基づいて、前記複数の仮想ポートを前記物理ポートに構築する命令を生成して、前記物理サーバに送信し、前記接続取得部により取得された接続定義データに基づいて、前記仮想ポートを介して前記物理サーバと前記物理ストレージを接続する命令を生成して、前記物理ストレージに送信する接続生成部と
を有することを特徴とする情報処理システム。
【請求項10】
コンピュータに、
物理サーバが物理ストレージとのデータ転送に用いる物理ポートに複数の仮想ポートを対応付けるとともに各仮想ポートに前記物理サーバで動作する仮想サーバが実行するミドルウェアが要求する応答仕様を対応付ける仮想ポート構築データと、前記仮想ポートと前記物理ストレージとを対応付ける接続定義データとを取得し、
取得した仮想ポート構築データに基づいて、前記複数の仮想ポートを前記物理ポートに構築する命令を生成して、前記物理サーバに送信し、取得した接続定義データに基づいて、前記仮想ポートを介して前記物理サーバと前記物理ストレージを接続する命令を生成して、前記物理ストレージに送信する
処理を実行させることを特徴とする構築管理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、構築管理装置、情報処理システム及び構築管理プログラムに関する。
【背景技術】
【0002】
クラウドコンピューティング基盤を用いて構築される情報通信システムは、仮想化機能により物理装置から生成された仮想装置により構築される。
図19は、クラウドコンピューティング基盤を用いて構築される情報通信システムの例を示す図である。
図19に示すように、クラウドコンピューティング基盤97を用いる場合、仮想化機能により基盤物理装置91から基盤仮想装置92が生成され、基盤仮想装置92からユーザが利用する情報通信システム93が構築される。
【0003】
基盤物理装置91には、複数の物理サーバ91a、複数のネットワークスイッチ91g、複数の物理ストレージ91cが含まれる。基盤仮想装置92には、複数の仮想サーバ92a、複数の仮想スイッチ92b、複数の仮想ストレージ92cが含まれる。仮想サーバ92a、仮想スイッチ92b、仮想ストレージ92cは仮想化制御ソフト92dにより制御される。基盤物理装置91、基盤仮想装置92、基盤物理装置91と基盤仮想装置92の対応付け、装置間の接続などは管理装置90によって管理される。
【0004】
ユーザが利用する情報通信システム93は、基盤仮想装置92に含まれる仮想サーバ92a、仮想スイッチ92b、仮想ストレージ92cから構築される。仮想サーバ92aは、CPU(Central Processing Unit)とメモリとミドルウェアを有し、ミドルウェアを実行する。仮想サーバ92aは、仮想ストレージ92cが記憶するデータを使用し、仮想スイッチ92bで構築された仮想ネットワークを用いて通信を行う。
【0005】
クラウドコンピューティング基盤97を用いて構築された情報通信システム93で可用性を確保する方法には、2つの方法がある。
図20は、クラウドコンピューティング基盤97を用いて構築された情報通信システム93で可用性を確保する2つの方法を説明するための図である。
図20(a)は、仮想サーバ92aを別の物理サーバ91aで再稼働する第1の方法を示し、
図20(b)は、2台の仮想サーバ92aを稼働させる第2の方法を示す。
【0006】
図20において、仮想サーバ#1及び仮想サーバ#2は仮想サーバ92aであり、物理サーバ#1及び物理サーバ#2は物理サーバ91aである。仮想サーバ92aではアプリ92eが動作し、アプリ92eは、仮想ストレージ92cを使用する。
【0007】
図20(a)に示すように、第1の方法では、物理サーバ#1に異常が発生する(u81)と、物理ストレージ91cの接続は、物理サーバ#1から物理サーバ#2への切替え(u82)が行われ、仮想サーバ#1は、物理サーバ#2で再起動(u83)される。一方、
図20(b)に示すように、第2の方法では、2台の仮想サーバ92aを稼働させ、仮想ストレージ92cのミラーリングが行われる。そして、物理サーバ#1に異常が発生する(u91)と、仮想サーバ#1から仮想サーバ#2への切替え(u92)が行われ、IP(Internet Protocol)アドレスの切替え(u93)が行われる。
【0008】
ただし、
図19及び
図20に示すクラウドコンピューティング環境では、仮想サーバ92aで動作するミドルウェアに対する物理ストレージ91cの応答仕様に指定がない。ここで、物理ストレージ91cの応答仕様とは、例えば、複数の仮想サーバ92aから書き込みが行われる場合のデータ保護のための排他制御に関するミドルウェアに対する応答の仕様である。
【0009】
これに対して、オンプレミスベースのクラスタシステムでは、可用性を確保するために、複数の物理サーバ91aと共有物理ストレージ91cが用いられ、ミドルウェアに対する物理ストレージ91cの応答仕様に指定がある。ここで、オンプレミスとは、ユーザが自分の物理装置を用いて情報通信システムを構築することである。また、クラスタシステムとは、複数の物理サーバ91aを連携して1つのシステムとする情報通信システムである。
【0010】
図21は、オンプレミスベースのクラスタシステムの構成を示す図である。
図21において、クラスタウェア91fは、クラスタシステムの構築に用いられるミドルウェアである。
図21に示すように、オンプレミスベースのクラスタシステムでは、物理ストレージ91cは、物理サーバ#1と物理サーバ#2で共有され、クラスタウェア91fの要件に合わせた応答仕様の設定が共有された物理ストレージ91cに必要となる。
【0011】
図21に示すオンプレミスベースのクラスタシステムをクラウドコンピューティング基盤を用いて実現する場合、
図19に示したクラウドコンピューティング基盤97とは異なり、物理装置構成に近い形態で仮想サーバを構成できるクラウドコンピューティング基盤が必要となる。
【0012】
図22は、物理装置構成に近い形態で仮想サーバを構成できるクラウドコンピューティング基盤97aを用いて構築される情報通信システム93aの例を示す図である。
図22に示すように、情報通信システム93aには、ユーザAのクラスタシステムとユーザBのクラスタシステムが含まれる。
【0013】
ユーザAのクラスタシステムは、仮想サーバ#a1及び仮想サーバ#a2で表される仮想サーバ92aと、仮想ストレージ#1で表される仮想ストレージ92cと、s#1及びs#2で表される仮想スイッチ92bを含む仮想ネットワークとを有する。仮想サーバ#a1及び仮想サーバ#a2ではミドルウェア#1で表されるミドルウェア92fが動作する。仮想ストレージ#1は、仮想サーバ#a1と仮想サーバ#a2で共有される。仮想ストレージ#1にはミドルウェア#1が要求する応答仕様#1が設定される。
【0014】
ユーザBのクラスタシステムは、仮想サーバ#b1及び仮想サーバ#b2で表される仮想サーバ92aと、仮想ストレージ#2で表される仮想ストレージ92cと、s#3及びs#4で表される仮想スイッチ92bを含む仮想ネットワークとを有する。仮想サーバ#b1及び仮想サーバ#b2ではミドルウェア#2で表されるミドルウェア92fが動作する。仮想ストレージ#2は、仮想サーバ#b1と仮想サーバ#b2で共有される。仮想ストレージ#2にはミドルウェア#2が要求する応答仕様#2が設定される。
【0015】
仮想サーバ92aは、CPUとメモリを有する。仮想サーバ92aの間は、仮想スイッチ92bを含む仮想ネットワークで接続される。仮想スイッチ92bは、インターコネクトネットワークスイッチ91bと標準ネットワークスイッチ91dの仮想化により実現される。
【0016】
仮想サーバ#a1は物理サーバ#1で動作し、仮想サーバ#a2は物理サーバ#2で動作する。仮想サーバ#b1は物理サーバ#3で動作し、仮想サーバ#b2は物理サーバ#4で動作する。物理サーバ#1~物理サーバ#4は、FCスイッチ94を介して物理ストレージ91cと接続する。物理ストレージ91cは、LUN(Logical Unit Number)#1a及びLUN#1bで識別される論理ユニット95を提供する。LUNは、論理ユニット95を識別する番号である。LUN#1aは、ユーザAが使用する仮想ストレージ#1を実現する論理ユニット95であり、LUN#1bは、ユーザBが使用する仮想ストレージ#2を実現する論理ユニット95である。LUN#1aは、仮想サーバ#a1及び仮想サーバ#a2によって共有される。LUN#1bは、仮想サーバ#b1及び仮想サーバ#b2によって共有される。
【0017】
応答仕様#1は、物理サーバ#1、物理サーバ#2、物理サーバ#1の物理ポート96、物理サーバ#2の物理ポート96、LUN#1aに関係付けられる。応答仕様#2は、物理サーバ#3、物理サーバ#4、物理サーバ#3の物理ポート96、物理サーバ#4の物理ポート96、LUN#1bに関係付けられる。
【0018】
なお、従来技術として、ホスト計算機のアクセス特性に応じた記憶領域の割当を実現する構成案を生成する管理計算機がある。この管理計算機は、ホスト計算機及びストレージ装置が備える、性能の異なる複数の記憶媒体の情報を含み、記憶媒体より提供される記憶領域と、ホスト計算機とを関連付けて示す、構成情報を記憶する。そして、管理計算機は、ホスト計算機によるアクセスの特性及び割当てる記憶領域の容量の情報を含む、ホスト計算機への記憶領域の割当て要求を受け付けると、構成情報を参照する。そして、管理計算機は、ストレージ装置及びホスト計算機が備える記憶媒体の中から、要求に含まれるアクセス特性に基づいて、要求された容量の記憶領域を提供可能な記憶媒体を選択する。そして、管理計算機は、選択した記憶媒体より記憶領域をホスト計算機に割り当てる構成案を生成し、出力する。
【0019】
また、従来技術として、アプリケーション要求に応えるときにストレージが必要であることが多いため、VM(Virtual Machine)配置を、ストレージアレイの性能特性ならびにネットワーク層メトリックに基づかせることで、VM性能を改善する技術がある。
【先行技術文献】
【特許文献】
【0020】
【文献】国際公開第2016/157274号
【文献】特表2015-504224号公報
【発明の概要】
【発明が解決しようとする課題】
【0021】
図22に示したクラウドコンピューティング基盤97aでは、物理サーバ毎に物理ストレージ91cの応答仕様が関係付けられる。例えば、物理サーバ#1及び物理サーバ#2は、応答仕様#1に関係付けられ、物理サーバ#3及び物理サーバ#4は、応答仕様#2に関係付けられる。このため、仮想サーバ92aを物理サーバ91aに配備する場合、物理サーバ91aに関係付けられた応答仕様に基づいて配備する必要がある。例えば、応答仕様#1のミドルウェア92fが動作する仮想サーバ92aは、物理サーバ#1又は物理サーバ#2に配備される必要がある。
【0022】
このため、
図22に示したクラウドコンピューティング基盤97aには、物理サーバ91aを効率よく使用することができないという問題がある。例えば、応答仕様#1のミドルウェア92fを使用するユーザが多い場合には、物理サーバ#1及び物理サーバ#2は多く使用され、物理サーバ#3及び物理サーバ#4は使用されることが少ない。
【0023】
本発明は、1つの側面では、オンプレミスベースの情報通信システムを実現するクラウドコンピューティング基盤において、物理サーバを効率よく使用することを目的とする。
【課題を解決するための手段】
【0024】
1つの態様では、構築管理装置は、接続取得部と接続生成部とを有する。前記接続取得部は、仮想ポート構築データと接続定義データとを取得する。前記仮想ポート構築データは、物理サーバが物理ストレージとのデータ転送に用いる物理ポートに複数の仮想ポートを対応付けるとともに各仮想ポートに前記物理サーバで動作する仮想サーバが実行するミドルウェアが要求する応答仕様を対応付ける。前記接続定義データは、前記仮想ポートと前記物理ストレージとを対応付ける。前記接続生成部は、前記接続取得部により取得された仮想ポート構築データに基づいて、前記複数の仮想ポートを前記物理ポートに構築する命令を生成して、前記物理サーバに送信する。また、前記接続生成部は、前記接続取得部により取得された接続定義データに基づいて、前記仮想ポートを介して前記物理サーバと前記物理ストレージを接続する命令を生成して、前記物理ストレージに送信する。
【発明の効果】
【0025】
1つの側面では、本発明は、オンプレミスベースの情報通信システムを実現するクラウドコンピューティング基盤において、物理サーバを効率よく使用することができる。
【図面の簡単な説明】
【0026】
【
図1】
図1は、実施例に係る仮想ポートを説明するための図である。
【
図2】
図2は、実施例に係る情報処理システムの構成を示す図である。
【
図3】
図3は、仮想ポート構築データの一例を示す図である。
【
図4】
図4は、接続定義データの一例を示す図である。
【
図5】
図5は、構成定義データの一例を示す図である。
【
図6】
図6は、構築装置の命令生成と処理の仕組みを説明するための図である。
【
図7】
図7は、管理装置の命令生成と処理の仕組みを説明するための図である。
【
図8】
図8は、仮想リソースと物理リソースの構成を示す図である。
【
図9】
図9は、構築装置による処理のシーケンスを示す図である。
【
図10】
図10は、管理装置による構成制御処理のシーケンスを示す図である。
【
図11】
図11は、管理装置による仮想ストレージ削除処理のシーケンスを示す図である。
【
図12】
図12は、実施例に係る構築管理プログラムを実行するコンピュータのハードウェア構成を示す図である。
【
図16】
図16は、異なる応答仕様の仮想ストレージを1台の仮想サーバが利用する場合を示す図である。
【
図17】
図17は、ホスティング型仮想サーバ環境の構成定義データを示す図である。
【
図18】
図18は、SDSを用いたクラウドコンピューティング基盤の例を示す図である。
【
図19】
図19は、クラウドコンピューティング基盤を用いて構築される情報通信システムの例を示す図である。
【
図20】
図20は、クラウドコンピューティング基盤を用いて構築された情報通信システムで可用性を確保する2つの方法を説明するための図である。
【
図21】
図21は、オンプレミスベースのクラスタシステムの構成を示す図である。
【
図22】
図22は、物理装置構成に近い形態で仮想サーバを構成できるクラウドコンピューティング基盤を用いて構築される情報通信システムの例を示す図である。
【発明を実施するための形態】
【0027】
以下に、本願の開示する構築管理装置、情報処理システム及び構築管理プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
【実施例】
【0028】
まず、実施例に係る仮想ポートについて説明する。
図1は、実施例に係る仮想ポートを説明するための図である。
図1(a)は、物理ポート96を用いた仮想サーバ92aと論理ユニット95の従来の接続を示し、
図1(b)は、仮想ポート6aを用いた仮想サーバ2aと論理ユニット5の実施例の接続を示す。
図1(a)では、仮想サーバ#1及び仮想サーバ#2は、仮想サーバ92aであり、LUN#1及びLUN#2は、論理ユニット95である。
図1(b)では、仮想サーバ#1及び仮想サーバ#2は、仮想サーバ2aであり、LUN#1及びLUN#2は、論理ユニット5である。なお、
図1では、仮想サーバ#1は応答仕様#1のLUN#1を使用し、仮想サーバ#2は応答仕様#2のLUN#2を使用する。また、
図1(b)において、vP#1及びvP#2は物理ポートP#1に構築された仮想ポート6aである。
【0029】
図1(a)に示すように、従来は、仮想サーバ92aは、物理ポート96を用いて論理ユニット95と接続する。このため、応答仕様#1の接続関係は、仮想サーバ#1-P#1-LUN#1であり、応答仕様#2の接続関係は、仮想サーバ#2-P#2-LUN#2である。すなわち、仮想サーバ#1と仮想サーバ#2は、論理ユニット95に対する応答仕様が異なるため、同じ物理サーバ91aで動作することはできない。
【0030】
一方、実施例では、
図1(b)に示すように、仮想サーバ2aは、物理ポート6に構築された複数の仮想ポート6aの1つを用いて論理ユニット5と接続する。このため、応答仕様#1の接続関係は、仮想サーバ#1-vP#1-P#1-LUN#1であり、応答仕様#2の接続関係は、仮想サーバ#2-vP#2-P#1-LUN#2である。すなわち、仮想サーバ#1と仮想サーバ#2は、論理ユニット5の応答仕様が異なっていても、同じ物理サーバ1aで動作することができる。
【0031】
このように、実施例では、仮想サーバ2aは、仮想ポート6aを用いて論理ユニット5と接続するので、論理ユニット5の応答仕様が異なる複数の仮想サーバ2aを1つの物理サーバ1aに配備することができる。
【0032】
次に、実施例に係る情報処理システムの構成について説明する。
図2は、実施例に係る情報処理システムの構成を示す図である。
図2に示すように、クラウドコンピューティング基盤を用いて構築された情報通信システム3には、ユーザAのクラスタシステムとユーザBのクラスタシステムが含まれる。
【0033】
ユーザAのクラスタシステムは、仮想サーバ#a1及び仮想サーバ#a2で表される仮想サーバ2aと、仮想ストレージ#1で表される仮想ストレージ2cと、s#1及びs#2で表される仮想スイッチ2bを含む仮想ネットワークとを有する。仮想サーバ#a1及び仮想サーバ#a2ではミドルウェア#1で表されるミドルウェア2fが動作する。仮想ストレージ#1は、仮想サーバ#a1と仮想サーバ#a2により共有される。仮想ストレージ#1にはミドルウェア#1が要求する応答仕様#1が設定される。
【0034】
ユーザBのクラスタシステムは、仮想サーバ#b1及び仮想サーバ#b2で表される仮想サーバ2aと、仮想ストレージ#2で表される仮想ストレージ2cと、s#3及びs#4で表される仮想スイッチ2bを含む仮想ネットワークとを有する。仮想サーバ#b1及び仮想サーバ#b2ではミドルウェア#2で表されるミドルウェア2fが動作する。仮想ストレージ#2は、仮想サーバ#b1と仮想サーバ#b2により共有される。仮想ストレージ#2にはミドルウェア#2が要求する応答仕様#2が設定される。
【0035】
仮想サーバ2aは、CPUとメモリを有する。仮想サーバ2aの間は、仮想スイッチ2bを含む仮想ネットワークで接続される。ここでは、仮想サーバ2a、仮想ネットワーク、仮想ストレージ2cを総称して仮想リソースと呼ぶ。
【0036】
実施例に係る情報処理システム1は、物理サーバ#1、物理サーバ#2、・・・で表される複数の物理サーバ1aと、インターコネクトネットワークスイッチ1bと、複数の標準ネットワークスイッチ1dと、複数のFCスイッチ4とを有する。また、情報処理システム1は、物理ストレージ#1、・・・で表される複数の物理ストレージ1cと、DB装置10と、構築装置20と、管理装置30とを有する。
【0037】
物理サーバ1aは、Pで表される物理ポート6と、SVP(SerVice Processer)6cとを有する。物理ポート6は、物理ストレージ1cとの間のデータ転送に用いられる。SVP6cは、物理サーバ1aを監視制御する。
【0038】
物理サーバ1aでは、複数の仮想サーバ2aとハイパーバイザ6bが動作する。物理サーバ#1では、仮想サーバ#a1、仮想サーバ#b1、・・・が動作し、物理サーバ#2では、仮想サーバ#a2、仮想サーバ#b2、・・・が動作する。ハイパーバイザ6bは、仮想化機能を有し、仮想リソースの管理及び制御を行う。
【0039】
物理サーバ1aには、仮想ポート6aが構築される。物理サーバ#1には、仮想ポートvP#1、vP#2が構築され、物理サーバ#2には、仮想ポートvP#3、vP#4が構築される。
【0040】
インターコネクトネットワークスイッチ1bは、物理サーバ1aの間を接続するスイッチである。インターコネクトネットワークスイッチ1bは、管理装置30と接続する。インターコネクトネットワークスイッチ1bは、SVP8aを有する。SVP8aは、インターコネクトネットワークスイッチ1bを監視制御する。
【0041】
標準ネットワークスイッチ1dは、情報処理システム1をインターネットなどの外部ネットワークに接続するスイッチである。標準ネットワークスイッチ1dは、物理サーバ#1、物理サーバ#2、・・・と、管理装置30とに接続する。標準ネットワークスイッチ1dは、SVP9aを有する。SVP9aは、標準ネットワークスイッチ1dを監視制御する。
【0042】
FCスイッチ4は、複数の物理サーバ1aと複数の物理ストレージ1cを接続するスイッチである。FCスイッチ4は、SVP4aを有する。SVP4aは、FCスイッチ4を監視制御する。
【0043】
物理ストレージ1cは、仮想サーバ2aが使用するデータを記憶する不揮発性記憶装置である。物理ストレージ1cは、LUN#1a、LUN#1bで表される論理ユニット5を提供する。LUN#1aは、ユーザAが使用する仮想ストレージ#1を実現する論理ユニット5であり、LUN#1bは、ユーザBが使用する仮想ストレージ#2を実現する論理ユニット5である。LUN#1aは、仮想サーバ#a1及び仮想サーバ#a2によって共有される。LUN#1aには、応答仕様#1が設定される。LUN#1bは、仮想サーバ#b1及び仮想サーバ#b2によって共有される。LUN#1bには、応答仕様#2が設定される。
【0044】
応答仕様#1は、物理サーバ#1の仮想ポートvP#1、物理サーバ#2の仮想ポートvP#3、LUN#1aに関係付けられる。応答仕様#2は、物理サーバ#1の仮想ポートvP#2、物理サーバ#2の仮想ポートvP#4、LUN#1bに関係付けられる。
【0045】
論理ユニット5は、RAID(Redundant Arrays of Inexpensive Disks)グループ5aにより実現される。RAIDグループ5aは、複数のディスク装置あるいはSSD(Solid State Drive)装置などを含むストレージデバイス装置5bを有する。物理ストレージ1cは、SVP5dを有する。SVP5dは、物理ストレージ1cを監視制御する。
【0046】
なお、ここでは、インターコネクトネットワークスイッチ1bと標準ネットワークスイッチ1dを合わせて物理ネットワークスイッチ1eと呼び、SVP8aとSVP9aを合わせてSVP9eと呼ぶ。また、物理サーバ1a、物理ネットワークスイッチ1e、物理ストレージ1cを総称して物理リソースと呼ぶ。
【0047】
DB装置10は、DB11を有し、DB11に、仮想化に関する情報、物理リソース間の接続に関する情報などを記憶する。例えば、DB11は、仮想ポート構築データ、接続定義データ、構成定義データを記憶する。
【0048】
仮想ポート構築データは、仮想ポート6aの構築に用いられるデータである。
図3は、仮想ポート構築データの一例を示す図である。
図3に示すように、仮想ポート構築データには、仮想ポート構築情報が含まれる。仮想ポート構築情報は、サーバ名と、サーバタイプと、ストレージ接続用仮想ポート名と、ストレージ接続用物理ポート名と、応答仕様番号とを対応付ける情報である。
【0049】
サーバ名は、物理サーバ1aを識別する名前である。サーバタイプは、物理サーバ1aの種別である。例えば、サーバタイプにより、CPUの数、メモリ容量、物理ポート6の数が異なる。ストレージ接続用仮想ポート名は、物理サーバ1aにおいて物理ストレージ1cとの接続に用いられる仮想ポート6aを識別する名前である。ストレージ接続用物理ポート名は、物理サーバ1aにおいて物理ストレージ1cとの接続に用いられる物理ポート6を識別する名前である。応答仕様番号は、仮想ポート6aに設定される応答仕様を識別する番号である。
【0050】
例えば、仮想ポート6a「230000000e201011」は、サーバタイプ「M10」の物理サーバ1a「H001」の物理ポート6「210000000e201011」に構築され、応答仕様番号は「1」である。
【0051】
接続定義データは、物理サーバ1aの仮想ポート6aと物理ストレージ1cとの接続に用いられるデータである。
図4は、接続定義データの一例を示す図である。
図4に示すように、接続定義データには、接続構成情報と、サーバ接続グループ情報と、ポート接続グループ情報と、ストレージ接続グループ情報とが含まれる。
【0052】
接続構成情報は、サーバ接続グループ名と、ポート接続グループ名と、ストレージ接続グループ名とを対応付ける情報である。サーバ接続グループ名は、物理サーバ1aの仮想ポート6aと応答仕様のグループを識別する名前である。ポート接続グループ名は、物理ストレージ1cのポートのグループを識別する名前である。ストレージ接続グループ名は、ボリュームと論理ユニット5のグループを識別する名前である。例えば、サーバ接続グループ名「H001-1」と、ポート接続グループ名「TP00」と、ストレージ接続グループ名「S001-1」が対応付けられる。
【0053】
サーバ接続グループ情報は、サーバ接続グループ名を、仮想ポート名と応答仕様番号のグループに対応付ける情報である。例えば、サーバ接続グループ名「H001-1」は、仮想ポート名「230000000e201011」と応答仕様番号「1」のグループに対応付けられる。
【0054】
ポート接続グループ情報は、ポート接続グループ名を、物理ストレージ1cのポート番号のグループに対応付ける情報である。例えば、ポート接続グループ名「TP00」は、物理ストレージ1cのポート番号「0」、「2」、「4」、「6」のグループに対応付けられる。
【0055】
ストレージ接続グループ情報は、ストレージ接続グループ名を、ボリューム(Vol)名とLUNのグループに対応付ける情報である。例えば、ストレージ接続グループ名「S001-1」は、Vol名「vd-1001」とLUN「1001」のグループに対応付けられる。
【0056】
構成定義データは、仮想リソースの作成、仮想リソース間の接続に用いられるデータである。
図5は、構成定義データの一例を示す図である。
図5に示すように、構成定義データには、ユーザ情報と、サーバ情報と、ストレージ情報と、LUN情報と、ボリューム情報と、ネットワーク情報とが含まれる。
【0057】
ユーザ情報は、ユーザ名とユーザIDとを対応付ける情報である。ユーザ名は、ユーザを識別する名前である。ユーザIDは、ユーザを識別する識別子である。例えば、ユーザ名「AA株式会社」はユーザID「0001」に対応付けられる。
【0058】
サーバ情報は、ユーザIDと、ホスト名と、仮想サーバ名と、物理サーバ名と、クラスタグループ名と、応答仕様番号と、マシンタイプと、OS(Operating System)タイプとを対応付ける情報である。ホスト名は、仮想サーバ2aで実現されるホストを識別する名前である。仮想サーバ名は、仮想サーバ2aを識別する名前である。物理サーバ名は、物理サーバ1aを識別する名前である。クラスタグループ名は、クラスタグループを識別する名前である。マシンタイプは、仮想サーバ2aの種別である。OSタイプは、OSの種別である。例えば、ユーザID「0001」とホスト名「AAA」と仮想サーバ名「Dom0001」と物理サーバ名「H001」とクラスタグループ名「A」と応答仕様番号「1」とマシンタイプ「2」とOSタイプ「Os11u3」が対応付けられる。
【0059】
ストレージ情報は、仮想サーバ名と、LUNと、IDと、ディスク名と、ディスクタイプとを対応付ける情報である。IDは、ユーザがストレージの識別に使う識別子である。ディスク名は、ユーザがストレージの識別に使う名前である。ディスクタイプは、ストレージが共有されるか否かを示す。例えば、仮想サーバ名「Dom0001」とLUN「1001」とID「1001」とディスク名「vd-1001」とディスクタイプ「シングル」が対応付けられる。
【0060】
LUN情報は、筐体名と、Vol名と、ストレージ接続グループ名と、LUNと、応答仕様番号とを対応付ける情報である。筐体名は、物理ストレージ1cが収納される筐体を識別する名前である。例えば、応答仕様番号「1」でLUN「1001」の論理ユニット5は、Vol名「vd-1001」のボリュームとのグループを「S001-1」で識別され、筐体名「ET200-1」の筐体にある。
【0061】
ボリューム情報は、筐体名と、RAIDグループ名と、Vol番号と、Vol名と、サイズとを対応付ける情報である。RAIDグループ名は、RAIDグループ5aを識別する名前である。サイズは、ボリュームの大きさである。例えば、Vol番号「1001」でVol名「vd-1001」であるボリュームは、サイズが「120GB」であり、RAIDグループ「RG#000」により構築され、筐体名「ET200-1」の筐体にある。
【0062】
ネットワーク情報は、仮想サーバ名と、Vnet名と、VLAN(Virtual Local Area Network)番号と、MAC(Media Access Control)と、ネットタイプとを対応付ける情報である。Vnet名は、仮想ネットワークを識別する名前である。VLAN番号は、VLANを識別する番号である。MACは、MACアドレスである。ネットタイプは、標準ネットワークスイッチ1dで構築されるネットワーク(標準)であるかインターコネクトネットワークスイッチ1bを用いて構築されるネットワーク(インターコネクト)であるかを示す。例えば、仮想サーバ名「Dom0001」とVnet名「Vnet-g0」とVLAN番号「3010」とMAC「aaaaaaa」とネットタイプ[標準]が対応付けられる。
【0063】
図2に戻って、構築装置20は、仮想ポート構築データと接続定義データに基づいて、仮想ポート6aの構築と、物理サーバ1aと物理ストレージ1cの接続処理を行う。構築装置20は、入力処理部21と、命令生成処理部22とを有する。
【0064】
入力処理部21は、仮想ポート構築データを入力(取得)し、重複チェックを行って、DB装置10に格納する。また、入力処理部21は、接続定義データを入力(取得)し、DB装置10に格納する。
【0065】
命令生成処理部22は、仮想ポート構築データに基づいて、物理サーバ1aに仮想ポート6aを構築する命令を生成し、物理サーバ1aのSVP6cに送信する。また、命令生成処理部22は、接続定義データに基づいて、仮想ポート6aを介して物理サーバ1aと物理ストレージ1cを接続する処理であるサーバストレージ接続処理を行う命令を生成し、物理ストレージ1cのSVP5dに送信する。命令生成処理部22は、この後に、FCスイッチ4で接続を許可する物理サーバ1aと物理ストレージ1cのポートの組み合わせを定義する処理(ゾーニング処理)をFCスイッチ4のSVP4aに指示し実行させることで、セキュリティを高めることも可能である。なお、命令生成処理部22は、FCスイッチ4を組み込む処理を行ってもよい。
【0066】
また、命令生成処理部22は、基本ディスクを作成する命令を生成し、物理ストレージ1cのSVP5dに送信する。ここで、基本ディスクとは、ハイパーバイザ6b及びOSの起動に用いられるボリュームである。また、命令生成処理部22は、基本ディスクを組み込む命令を生成し、物理サーバ1aのSVP6cに送信する。
【0067】
図6は、構築装置20の命令生成と処理の仕組みを説明するための図である。
図6に示すように、入力処理部21は、仮想ポート構築データと接続定義データを入力し、DB装置10のDB11に格納する。
【0068】
命令生成処理部22は、仮想ポート6aを構築する命令を生成し、物理サーバ1aに命令の実行を指示する。物理サーバ1aは、命令を実行することで、仮想ポート6aを構築する。命令生成処理部22は、仮想ポート6aの構築を確認し、確認結果をDB装置10に送信する。DB装置10は、確認結果をDB11に反映する。
【0069】
また、命令生成処理部22は、仮想ポート6aを介して物理サーバ1aと物理ストレージ1cを接続する処理を行う命令を生成し、物理ストレージ1cに命令の実行を指示する。物理ストレージ1cは、命令を実行することで、仮想ポート6aを介した物理サーバ1aと物理ストレージ1cの接続処理を行う。この処理により、物理ストレージ1cは、物理サーバ1aで構築された仮想ポート6aと応答仕様の組合せ定義を構築する。命令生成処理部22は、物理サーバ1aと物理ストレージ1cの接続を確認し、確認結果をDB装置10に送信する。DB装置10は、確認結果をDB11に反映する。
【0070】
物理サーバ増設などにより、仮想ポート構築データ又は接続定義データが変更された場合には、入力処理部21は、変更前後の差分に基づいて、仮想ポート6aを追加又は削除する命令を生成し、物理サーバ1aに送信する。また、命令生成処理部22は、物理サーバ1aと物理ストレージ1cの接続を追加する処理又は削除する処理の命令を生成し、物理ストレージ1cに送信する。そして、命令生成処理部22は、DB11を更新する。
【0071】
図2に戻って、管理装置30は、構成定義データに基づいて、仮想リソースを作成し、作成した仮想リソース間を接続する処理などを行う。管理装置30は、例えば、構成定義データのうち、少なくとも物理サーバ1aの情報及びクラスタグループの情報に基づいてミドルウェア2fのストレージ応答仕様要件を満たすクラスタシステム構成を構築する。また管理装置30は、物理サーバ1aの情報及び論理ユニット5の共有情報、仮想ポート6aに対応付けられた論理ユニット5に対する接続グループの情報に基づいて物理サーバ1aに依存しないクラスタシステム構成を構築する。
【0072】
また、管理装置30は、仮想サーバ2aのミドルウェア2fの応答仕様に基づいて、仮想サーバ2aと仮想ポート6aと論理ユニット5を接続する処理を行う。管理装置30は、入力処理部31とファイル生成処理部32を有する。入力処理部31は、構成定義データを入力(取得)し、DB装置10に格納する。
【0073】
ファイル生成処理部32は、例えば、構成定義データに基づいて、仮想ストレージ2cを実現する論理ユニット5を作成する命令を生成し、生成した命令を制御ファイルに書き込む。また、ファイル生成処理部32は、ミドルウェア2fの応答仕様に基づいて、論理ユニット5と仮想ポート6aを接続する仮想ポート接続命令を生成し、生成した命令を制御ファイルに書き込む。そして、ファイル生成処理部32は、制御ファイル内に生成された制御命令を物理ストレージ1cのSVP5dに送信する。共有ストレージの場合には、ファイル生成処理部32は、論理ユニット5を複数の物理サーバ1aの仮想ポート6aと接続する。
【0074】
また、ファイル生成処理部32は、構成定義データに基づいて、仮想ネットワークを作成する命令を生成し、生成した命令を制御ファイルに書き込む。そして、ファイル生成処理部32は、インターコネクトネットワークスイッチ1bに関する命令であれば制御ファイル内に生成された制御命令をSVP8aに送信し、標準ネットワークスイッチ1dに関する命令であれば制御ファイル内に生成された制御命令をSVP9aに送信する。
【0075】
また、ファイル生成処理部32は、構成定義データに基づいて、マルチパスドライバを組み込む命令を生成し、生成した命令を制御ファイルに書き込む。そして、ファイル生成処理部32は、制御ファイル内に生成された制御命令を物理サーバ1aのSVP6cに送信する。
【0076】
また、ファイル生成処理部32は、構成定義データに基づいて、仮想リソースを組み込む命令を生成し、生成した命令を制御ファイルに書き込む。そして、ファイル生成処理部32は、制御ファイル内に生成された制御命令をハイパーバイザ6bに送信する。
【0077】
また、ファイル生成処理部32は、構成定義データに基づいて、仮想サーバ2aを構築する命令を生成し、生成した命令を制御ファイルに書き込む。そして、ファイル生成処理部32は、制御ファイル内に生成された制御命令をハイパーバイザ6bに送信する。
【0078】
構成定義データが変更された場合には、ファイル生成処理部32は、変更前後の差分に基づいて、仮想リソース及び仮想リソース間の接続を追加又は削除する命令、仮想リソースを組み込む又は切り離す命令などを生成し、生成した命令を制御ファイルに書き込む。そして、ファイル生成処理部32は、制御ファイル内に生成された制御命令を関係する物理リソースに送信する。
【0079】
図7は、管理装置30の命令生成と処理の仕組みを説明するための図である。
図7に示すように、入力処理部31は、変更された構成定義データを入力し、DB装置10のDB11に格納する。DB装置10は、変更前の構成データをマスターデータ11aとして記憶し、変更された構成定義データをDB11にワークデータ11bとして格納する。そして、DB装置10は、マスターデータ11aとワークデータ11bを比較し、差分をファイル生成処理部32に送信する。なお、入力処理部31が最初に構成定義データを入力するときには、マスターデータ11aはない。
【0080】
ファイル生成処理部32は、差分に基づいて、仮想リソースを変更する命令を含む制御ファイルを生成する。そして、ファイル生成処理部32は、制御ファイル内に生成された制御命令を読み込んで物理サーバ1a、物理ストレージ1c、物理ネットワークスイッチ1eに送信し、制御命令の実行を指示する。物理サーバ1a、物理ストレージ1c、物理ネットワークスイッチ1eは、制御命令を実行する。ファイル生成処理部32は、制御命令の実行状況を確認し、確認結果をDB装置10に送信する。DB装置10は、マスターデータ11aに反映する。
【0081】
図8は、仮想リソースと物理リソースの構成を示す図である。
図8に示すように、物理サーバ1aでは、仮想サーバ2aとハイパーバイザ6bが動作する。ハイパーバイザ6bは、仮想ストレージ2cを仮想サーバ2aに提供する。また、ハイパーバイザ6bは、仮想スイッチ(VSW)2bを含む仮想ネットワーク(VNET)を提供する。この際、VNETは特定のVLANを割り当てる。
【0082】
物理サーバ1aには仮想ポート6aが構築される。また、物理サーバ1aには、基本ディスク6dが組み込まれ、基本ディスク6dには、仮想ポート定義が格納される。また、物理サーバ1aのハイパーバイザ6b及びSVP6cは、仮想サーバ定義を記憶する。
【0083】
物理ネットワークスイッチ1eのSVP9eにおいて、接続される物理サーバ1aで複数の仮想ネットワーク(VLAN)が利用できるように仮想ネットワークが定義され、記憶される。物理ストレージ1cのSVP5dは、論理ユニット5と物理サーバ1aの接続定義を記憶する。
【0084】
次に、構築装置20による構築処理のシーケンスについて説明する。
図9は、構築装置20による処理のシーケンスを示す図である。
図9に示すように、入力処理部21は、仮想ポート構築データ及び接続定義データを入力し、入力したデータと、DB装置10のDB11に格納された既存の仮想ポート構築データ及び接続定義データとの重複チェックを行い(t1)、チェックを完了する(t2)。そして、入力処理部21は、仮想ポート構築データ及び接続定義データのDB11への入力命令をDB装置10に送信し(t3)、DB11への入力を完了する(t4)。
【0085】
そして、命令生成処理部22は、仮想ポート構築データと接続定義データを読み出し(t5)、命令を生成する(t6)。命令生成処理部22は、仮想ポート構築データに基づいて、仮想ポート構築命令を生成し、接続定義データに基づいて、サーバストレージ接続命令を生成する。サーバストレージ接続命令は、サーバ接続グループ情報、ポート接続グループ情報、ストレージ接続グループ情報、接続構成情報を物理ストレージ1cに設定する命令である。
【0086】
そして、命令生成処理部22は、仮想ポート構築命令を物理サーバ1aのSVP6cに送信する(t7)。そして、物理サーバ1aのSVP6cは、仮想ポート6aを構築する(t8)。そして、命令生成処理部22は、サーバストレージ接続命令を物理ストレージ1cのSVP5dに送信する(t9)。そして、物理ストレージ1cのSVP5dは、サーバ接続グループ情報、ポート接続グループ情報、ストレージ接続グループ情報、接続構成情報を物理ストレージ1cに設定することで、サーバストレージ接続処理を行う(t10)。
【0087】
そして、命令生成処理部22は、基本ディスク作成命令を生成し(t11)、物理ストレージ1cのSVP5dに送信する。物理ストレージ1cのSVP5dは、基本ディスク6dを実現するボリュームを作成する(t12)。そして、命令生成処理部22は、基本ディスク組み込み命令を生成し(t13)、物理サーバ1aのSVP6cに送信する。物理サーバ1aのSVP6cは、基本ディスク6dを組み込む(t14)。
【0088】
このように、命令生成処理部22が、仮想ポート構築命令を生成してSVP6cに送信し、サーバストレージ接続命令を生成してSVP5dに送信する。したがって、情報処理システム1は、物理ストレージ1cを仮想ポート6aを介して物理サーバ1aと接続することができる。
【0089】
次に、管理装置30による処理のシーケンスについて
図10及び
図11を用いて説明する。
図10は、管理装置30による構成制御処理のシーケンスを示す図である。
図10に示すように、入力処理部31は、構成定義データを入力し、構成定義データのDB11への入力命令をDB装置10に送信し(t21)、DB11への入力を完了する(t22)。DB11は、送信された構成定義データをワークデータ11bとして格納する。そして、ファイル生成処理部32は、ワークデータ11bとマスターデータ11aを比較し(t23)、物理リソースの使用状況と、作成する仮想リソースの構成から仮想リソースの配備先を決定し、配備する命令を生成する(t24)。
【0090】
そして、ファイル生成処理部32は、仮想ストレージ作成命令を生成し(t25)、物理ストレージ1cのSVP5dに送信する。そして、物理ストレージ1cのSVP5dは、仮想ストレージ2cを実現する論理ユニット5を作成する(t26)。そして、ファイル生成処理部32は、応答仕様に応じた仮想ポート接続命令を生成し(t27)、物理ストレージ1cのSVP5dに送信する。そして、物理ストレージ1cのSVP5dは、論理ユニット5を物理サーバ1aの仮想ポート6aに接続する(t28)。
【0091】
そして、ファイル生成処理部32は、仮想ネットワーク作成命令を生成し(t29)、物理ネットワークスイッチ1eのSVP9eに送信する。そして、物理ネットワークスイッチ1eのSVP9eは、仮想ネットワークを構築する(t30)。そして、ファイル生成処理部32は、マルチパスドライバ組み込み命令を生成し(t31)、物理サーバ1aのSVP6cに送信する。物理サーバ1aのSVP6cは、マルチパスドライバ定義を組み込む(t32)。
【0092】
そして、ファイル生成処理部32は、仮想リソース組み込み命令を生成し(t33)、ハイパーバイザ6bに送信する。そして、ハイパーバイザ6bは、仮想リソースを組み込む(t34)。そして、ファイル生成処理部32は、仮想サーバ構築命令を生成し(t35)、ハイパーバイザ6bに送信する。そして、ハイパーバイザ6bは、仮想サーバ2aを構築する(t36)。そして、ファイル生成処理部32は、最新の状態をマスターデータ11aに反映する(t37)。
【0093】
このように、ファイル生成処理部32が、仮想ポート接続命令を生成してSVP5dに送信するので、情報処理システム1は、仮想ポート6aを論理ユニット5に接続することができる。
【0094】
図11は、管理装置30による仮想ストレージ削除処理のシーケンスを示す図である。
図11に示すように、入力処理部31は、構成定義データを入力し、構成定義データのDB11への入力命令をDB装置10に送信し(t41)、DB11への入力を完了する(t42)。DB11は、送信された構成定義データをワークデータ11bとして格納する。
【0095】
そして、ファイル生成処理部32は、ワークデータ11bとマスターデータ11aを比較し(t43)、削除対象の仮想ストレージ2c及び対象ハイパーバイザ6bを特定する(t44)。そして、ファイル生成処理部32は、対象の仮想ストレージ2cの切り離し処理命令を生成し(t45)、対象のハイパーバイザ6bに送信する。共有ストレージの場合には、ファイル生成処理部32は、切り離し処理命令を複数のハイパーバイザ6bに送信する。そして、ハイパーバイザ6bは、仮想ストレージ2cを切り離す(t46)。
【0096】
そして、ファイル生成処理部32は、削除対象の仮想ストレージ2cについて、マルチパスドライバ定義からの削除命令を生成し(t47)、物理サーバ1aのSVP6cに送信する。共有ストレージの場合には、ファイル生成処理部32は、マルチパスドライバ定義からの削除命令を複数のSVP6cに送信する。物理サーバ1aのSVP6cは、マルチパスドライバ定義から削除する(t48)。
【0097】
そして、ファイル生成処理部32は、物理サーバ1aの仮想ポート6aとの接続解除命令を生成し(t49)、物理ストレージ1cのSVP5dに送信する。そして、物理ストレージ1cのSVP5dは、対象論理ユニット5と仮想ポート6aとの接続を解除する(t50)。そして、ファイル生成処理部32は、論理ユニット削除命令を生成し(t51)、物理ストレージ1cのSVP5dに送信する。そして、物理ストレージ1cのSVP5dは、論理ユニット5を削除する(t52)。そして、ファイル生成処理部32は、最新の状態をマスターデータ11aに反映する(t53)。
【0098】
このように、ファイル生成処理部32は、削除対象の仮想ストレージ2cを切り離す命令を生成してハイパーバイザ6bに送信する。また、ファイル生成処理部32は、削除対象の論理ユニット5と仮想ポート6aとの接続解除命令と、論理ユニット5の削除命令を生成して物理ストレージ1cのSVP5dに送信する。したがって、情報処理システム1は、使用されなくなった論理ユニット5の領域を解放し、新たな仮想ストレージ領域として再利用することができる。
【0099】
上述してきたように、実施例では、入力処理部21が、仮想ポート構築データと、接続定義データを入力し、DB装置10に格納する。そして、命令生成処理部22が、仮想ポート構築データに基づいて、物理ポート6に仮想ポート6aを構築する命令を生成して物理サーバ1aに送信する。また、命令生成処理部22は、接続定義データに基づいて、仮想ポート6aを介して物理サーバ1aと物理ストレージ1cを接続する命令を生成して物理ストレージ1cに送信する。したがって、情報処理システム1は、異なる応答仕様のミドルウェア2fをそれぞれ実行する複数の仮想サーバ2aを1台の物理サーバ1aで動作させることができ、物理サーバ1aを効率よく使用することができる。
【0100】
また、実施例では、入力処理部31が、構成定義データを入力し、DB装置10に格納する。そして、ファイル生成処理部32が、構成定義データに基づいて、仮想ストレージ2cを作成する命令と該作成した仮想ストレージ2cを実現する論理ユニット5を仮想ポート6aに接続する命令を生成して制御ファイルに書き込む。そして、ファイル生成処理部32は、物理ストレージ1cに制御命令を送信する。また、ファイル生成処理部32は、仮想ストレージ2cと仮想サーバ2aを組み込む命令と仮想サーバ2aを構築する命令を生成して制御ファイルに書き込み、ハイパーバイザ6bに制御命令を送信する。したがって、情報処理システム1は、仮想サーバ2aで実行されるミドルウェア2fが要する応答仕様を備える論理ユニット5を仮想サーバ2aに提供することができる。
【0101】
また、実施例では、構成定義データが更新された場合に、ファイル生成処理部32は、削除対象の仮想ストレージ2cを特定し、特定した仮想ストレージ2cを切り離す命令を生成して制御ファイルに書き込み、ハイパーバイザ6bに制御命令を送信する。また、ファイル生成処理部32は、特定した仮想ストレージ2cを実現する論理ユニット5の仮想ポート6aとの接続を解除する命令と特定した仮想ストレージ2cを実現する論理ユニット5を削除する命令を生成して制御ファイルに書き込む。そして、ファイル生成処理部32は、物理ストレージ1cに制御命令を送信する。したがって、情報処理システム1は、使用されなくなった論理ユニット5を回収して再利用することができる。
【0102】
なお、実施例では、構築装置20と管理装置30が別の装置である場合について説明したが、構築装置20と管理装置30は1つの構築管理装置であってもよい。
【0103】
また、実施例では、構築装置20及び管理装置30について説明したが、構築装置20及び管理装置30が有する構成をソフトウェアによって実現することで、同様の機能を有する構築管理プログラムを得ることができる。そこで、構築管理プログラムを実行するコンピュータについて説明する。
【0104】
図12は、実施例に係る構築管理プログラムを実行するコンピュータのハードウェア構成を示す図である。
図12に示すように、コンピュータ50は、メインメモリ51と、プロセッサの一例であるCPU52と、LAN(Local Area Network)インタフェース53と、HDD(Hard Disk Drive)54とを有する。また、コンピュータ50は、スーパーIO(Input Output)55と、DVI(Digital Visual Interface)56と、ODD(Optical Disk Drive)57とを有する。
【0105】
メインメモリ51は、プログラムやプログラムの実行途中結果等を記憶するメモリである。CPU52は、メインメモリ51からプログラムを読み出して実行する中央処理装置である。CPU52は、メモリコントローラを有するチップセットを含む。
【0106】
LANインタフェース53は、コンピュータ50をLAN経由で他のコンピュータに接続するためのインタフェースである。HDD54は、プログラムやデータを格納するディスク装置であり、スーパーIO55は、マウスやキーボード等の入力装置を接続するためのインタフェースである。DVI56は、液晶表示装置を接続するインタフェースであり、ODD57は、DVD、CD-Rの読み書きを行う装置である。
【0107】
LANインタフェース53は、PCIエクスプレス(PCIe)によりCPU52に接続され、HDD54及びODD57は、SATA(Serial Advanced Technology Attachment)によりCPU52に接続される。スーパーIO55は、LPC(Low Pin Count)によりCPU52に接続される。
【0108】
そして、コンピュータ50において実行される構築管理プログラムは、コンピュータ50により読み出し可能な記録媒体の一例であるCD-Rに記憶され、ODD57によってCD-Rから読み出されてコンピュータ50にインストールされる。あるいは、構築管理プログラムは、LANインタフェース53を介して接続された他のコンピュータシステムのデータベース等に記憶され、これらのデータベースから読み出されてコンピュータ50にインストールされる。そして、インストールされた構築管理プログラムは、HDD54に記憶され、メインメモリ51に読み出されてCPU52によって実行される。
【0109】
また、クラウドコンピューティング基盤において、あらかじめ物理サーバ1aの予備機を準備しておく場合がある。この場合、物理サーバ1aに異常が発生すると、異常が発生した物理サーバ1aが使用していた論理ユニット5は、異常が発生した物理サーバ1aから切り離され、予備機に接続される。そして、予備機が論理ユニット5からOSをブートして運用を継続する。
【0110】
1台の物理サーバ1aで複数の応答仕様の論理ユニット5を使用している状態で、物理サーバ1aで異常が発生すると、予備機への切替が行われる。
図13は、予備機への切替手順を示す図である。
図13に示すように、物理サーバ#1ではハイパーバイザ6bの他、仮想サーバ#1及び仮想サーバ#2が稼働している。応答仕様#1のLUN#0及びLUN#1はP#0-vP#1の仮想ポート6aで仮想サーバ#1と接続し、応答仕様#2のLUN#2はP#0-vP#2で仮想サーバ#2と接続している。LUN#0はハイパーバイザ6bの起動に用いられる基本ディスク6dとして使用され、LUN#1は仮想サーバ#1が使用し、LUN#2は仮想サーバ#2が使用する。
【0111】
このクラウドコンピューティング基盤40において、物理サーバ#1で異常が発生する(u1)。すると、構築装置20及び管理装置30は、物理ストレージ#0において、物理サーバ#1と接続されていた論理ユニット5の接続構成を解除し、新たに物理サーバ#2との接続構成を構築する(u2)。その後、構築装置20及び管理装置30は、新たに物理ストレージ#0と物理サーバ#2との接続構成を定義するが、その際の仮想ポート6aは、物理サーバ#1で使用されていたP#0-vP#1、P#0-vP#2の仮想ポート6aの情報で構築する(u3)。その後、管理装置30は、物理サーバ#2において、ハイパーバイザ6bが記憶されたLUN#0でハイパーバイザ6bをブートする。その後、管理装置30は、DB11に記録されていた仮想サーバ#1及び仮想サーバ#2の構成定義情報をもとに、仮想ネットワークの構築、マルチパスドライバ定義の組み込み、仮想リソースの組み込みを行った後、LUN#1、LUN#2が記憶するOSをブートする(u4)。
【0112】
したがって、情報処理システム1は、物理サーバ#2でも複数の応答仕様の論理ユニット5が混在する形態のまま、運用を継続することができる。
【0113】
なお、命令生成処理部22は、物理サーバ#1と接続されていた物理ストレージ#0の接続を解除する命令、物理サーバ#2と物理ストレージ#0を接続する命令を生成し、生成した命令を物理ストレージ1cのSVP5dに送信する。
【0114】
また、ファイル生成処理部32、LUN#0及びLUN#1とP#0-vP#1との接続を解除する命令、LUN#2とP#0-vP#2との接続を解除する命令を生成し、生成した命令を物理ストレージ1cのSVP5dに送信する。ファイル生成処理部32、LUN#0及びLUN#1とP#1-vP#1とを接続する命令、LUN#2とP#1-vP#2とを接続する命令を生成し、生成した命令を物理ストレージ1cのSVP5dに送信する。
【0115】
図14及び
図15は、仮想サーバ2aの移動を示す図である。
図14に示すように、クラウドコンピューティング基盤40において、物理サーバ#1で仮想サーバ#1~#3が稼働し、物理サーバ#2で仮想サーバ#4が稼働している場合に、仮想サーバ#2でCPU、メモリなどのリソースの性能不足が発生することがある。このとき、物理サーバ#1には余剰のリソースがなく、リソースに余剰のある物理サーバ上に仮想サーバ2a移動しなければならないケースがある。
【0116】
なお、この例では、物理サーバ#1では、物理ポートP#0上に、応答仕様#1用の仮想ポートP#0-vP#1と、応答仕様#2用の仮想ポートP#0-vP#2が構築されているとする。また、物理サーバ#2では、物理ポートP#1上に応答仕様#1用の仮想ポートP#1-vP#1と、応答仕様#2用の仮想ポートP#1-vP#2が構成されているとする。また、物理サーバ#2にはリソースに余剰があるものとする。
【0117】
このケースで、仮想サーバ#2を物理サーバ#2に移動するときの手順を
図15に示す。まず、管理装置30は、物理ストレージ#0において、仮想サーバ#2で使用するLUN#2について、仮想サーバ#2が稼働する物理サーバ#1の応答仕様#2の仮想ポートP#0-vP#2との接続解除処理を行う(u11)。次に、管理装置30は、LUN#2について、移動先の物理サーバ#2の応答仕様#2の仮想ポートP#1-vP#2との接続処理を行う(u12)。
【0118】
これにより、物理サーバ#2で応答仕様#2のLUN#2の利用が可能となる。次に、管理装置30は、DB11に記録されていた仮想サーバ#2の構成定義情報をもとに、物理サーバ#2において、仮想ネットワークの構築、マルチパスドライバ定義の組み込み、仮想リソースの組み込みを行う。この際、管理装置30は、CPU及びメモリのリソースの変更を行う。その後、管理装置30は、物理サーバ#2において、LUN#2が記憶するOSをブートする(u13)。
【0119】
したがって、情報処理システム1は、異なる応答仕様を要する複数の仮想サーバ2aが1台の物理サーバ1aで動作する場合にも、仮想サーバ2aを移動することができ、リソースを増強することができる。
【0120】
なお、ファイル生成処理部32は、物理サーバ#1の仮想ポートP#0-vP#2とLUN#2の接続を解除する命令を生成し、生成した命令を物理サーバ#1のSVP6cへ送信する。また、ファイル生成処理部32は、物理サーバ#2の仮想ポートP#1-vP#2とLUN#2の接続を行う命令を生成し、生成した命令を物理サーバ#2のSVP6cへ送信する。また、ファイル生成処理部32は、物理サーバ#2においてLUN#2と仮想サーバ#2の構成を行う命令、仮想サーバ#2を起動する命令を生成し、生成した命令を物理サーバ#2のハイパーバイザ6bへ送信する。
【0121】
図16は、異なる応答仕様の仮想ストレージ2cを1台の仮想サーバ2aが利用する場合を示す図である。
図16では、コンテナ#1及びコンテナ#2で表されるコンテナ2gをホスティング型仮想サーバとして、仮想サーバ2aがさらにホスティング型仮想サーバで分割される。アプリ2e及びミドルウェア2fは、コンテナ2gにおいて実行される。
図16に示すように、それぞれのホスティング型仮想サーバは、異なる応答仕様の仮想ストレージ2cを用いる。
【0122】
図17は、ホスティング型仮想サーバ環境の構成定義データを示す図である。
図5と比較すると、
図17では、サーバ情報にコンテナ名が追加され、応答仕様及びクラスタグループ名は、コンテナ2gに対応付けられる。
【0123】
このように、情報処理システム1は、1台の仮想サーバ内で応答仕様が異なるミドルウェア2fを動作させるホスティング型仮想サーバを実現できる。なお、ファイル生成処理部32は、
図17に示した構成定義データに基づいて、仮想サーバ2aにコンテナ2gを構築する命令を生成し、生成した命令をハイパーバイザ6bへ送信する。
【0124】
図18は、SDS(Software Defined Storage)を用いたクラウドコンピューティング基盤の例を示す図である。
図18に示すように、クラウドコンピューティング基盤41は、SDSコントローラ1fを有する。SDSコントローラ1fは、物理ストレージ#1が有するLUN#1、物理ストレージ#2が有するLUN#2、・・・をストレージプールとして管理する。SDSコントローラ1fは、接続定義データ及び構成定義データに基づいて、ストレージプール上の論理ユニット5に応答仕様を設定することで、ミドルウェア2fの応答仕様を満たす論理ユニット5を供給することができる。
【0125】
図18では、ミドルウェアAの応答仕様#1を満たすLUN#1が仮想サーバ#a1と仮想サーバ#a2に供給され、ミドルウェアBの応答仕様#2を満たすLUN#2が仮想サーバ#b1と仮想サーバ#b2に供給される。
【0126】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0127】
(付記1)物理サーバが物理ストレージとのデータ転送に用いる物理ポートに複数の仮想ポートを対応付けるとともに各仮想ポートに前記物理サーバで動作する仮想サーバが実行するミドルウェアが要求する応答仕様を対応付ける仮想ポート構築データと、前記仮想ポートと前記物理ストレージとを対応付ける接続定義データとを取得する接続取得部と、
前記接続取得部により取得された仮想ポート構築データに基づいて、前記複数の仮想ポートを前記物理ポートに構築する命令を生成して、前記物理サーバに送信し、前記接続取得部により取得された接続定義データに基づいて、前記仮想ポートを介して前記物理サーバと前記物理ストレージを接続する命令を生成して、前記物理ストレージに送信する接続生成部と
を有することを特徴とする構築管理装置。
【0128】
(付記2)前記物理サーバと前記仮想サーバと前記物理ストレージが提供する論理ユニットとを対応付ける構成定義データを取得する構成取得部と、
前記構成取得部により取得された構成定義データに基づいて、前記物理ストレージに前記論理ユニットを作成する命令と前記論理ユニットを前記仮想ポートに接続する命令を生成して、前記物理ストレージに送信し、前記論理ユニットと前記仮想サーバを組み込む命令と前記仮想サーバを構築する命令とを生成して、前記物理サーバで動作し前記仮想サーバを制御するハイパーバイザに送信する構成生成部と
をさらに有することを特徴とする付記1に記載の構築管理装置。
【0129】
(付記3)前記論理ユニットは、複数の物理サーバでそれぞれ動作する複数の仮想サーバで共有されることを特徴とする付記2に記載の構築管理装置。
【0130】
(付記4)前記構成取得部は、更新された構成定義データを取得し、
前記構成生成部は、更新された構成定義データと更新前の構成定義データに基づいて、削除対象の仮想ストレージを特定し、特定した仮想ストレージを切り離す命令を生成して、前記ハイパーバイザに送信し、特定した仮想ストレージを実現する論理ユニットの仮想ポートとの接続を解除する命令と該論理ユニットを削除する命令を生成して、前記物理ストレージに送信することを特徴とする付記2又は3に記載の構築管理装置。
【0131】
(付記5)前記接続生成部は、前記物理サーバに異常が発生した場合に、前記仮想ポートを介した前記物理サーバと前記物理ストレージの接続を解除する命令と、前記仮想ポートを介した予備の物理サーバと前記物理ストレージの接続を構築する命令を生成し、前記物理ストレージに送信し、
前記構成生成部は、前記物理サーバに異常が発生した場合に、前記物理サーバの仮想ポートと前記論理ユニットの接続を解除する命令と、前記予備の物理サーバの仮想ポートと前記論理ユニットの接続を構築する命令を生成し、前記物理ストレージに送信することを特徴とする付記2、3又は4に記載の構築管理装置。
【0132】
(付記6)前記構成生成部は、前記仮想サーバが他の物理サーバに移動された場合に、前記仮想サーバが接続する仮想ポートと前記論理ユニットとの接続を解除する命令と、前記他の物理サーバの物理ポートに構築された仮想ポートに前記論理ユニットを接続する命令を生成して、前記物理ストレージに送信し、前記論理ユニットで実現される仮想ストレージと前記仮想サーバを組み込む命令と前記仮想サーバを構築する命令とを生成して、移動先の物理サーバで動作するハイパーバイザに送信することを特徴とする付記2~5のいずれか1つに記載の構築管理装置。
【0133】
(付記7)前記仮想ポート構築データは、各仮想ポートに前記物理サーバで動作する仮想サーバで構築されるコンテナで実行されるミドルウェアが要求する応答仕様を対応付け、
前記構成定義データは、前記物理サーバと前記仮想サーバと前記コンテナと前記論理ユニットとを対応付け、
前記構成生成部は、前記論理ユニットで実現される仮想ストレージと前記仮想サーバを組み込む命令と前記仮想サーバ及び前記コンテナを構築する命令とを生成して、前記ハイパーバイザに送信することを特徴とする付記2~6のいずれか1つに記載の構築管理装置。
【0134】
(付記8)前記論理ユニットは、SDSコントローラを介して前記物理ストレージから提供されることを特徴とする付記2~7のいずれか1つに記載の構築管理装置。
【0135】
(付記9)物理サーバと物理ストレージと構築装置とを有する情報処理システムにおいて、
前記構築装置は、
前記物理サーバが物理ストレージとのデータ転送に用いる物理ポートに複数の仮想ポートを対応付けるとともに各仮想ポートに前記物理サーバで動作する仮想サーバが実行するミドルウェアが要求する応答仕様を対応付ける仮想ポート構築データと、前記仮想ポートと前記物理ストレージとを対応付ける接続定義データとを取得する接続取得部と、
前記接続取得部により取得された仮想ポート構築データに基づいて、前記複数の仮想ポートを前記物理ポートに構築する命令を生成して、前記物理サーバに送信し、前記接続取得部により取得された接続定義データに基づいて、前記仮想ポートを介して前記物理サーバと前記物理ストレージを接続する命令を生成して、前記物理ストレージに送信する接続生成部と
を有することを特徴とする情報処理システム。
【0136】
(付記10)管理装置をさらに有し、
前記管理装置は、
前記物理サーバと前記仮想サーバと前記物理ストレージが提供する論理ユニットとを対応付ける構成定義データを取得する構成取得部と、
前記構成取得部により取得された構成定義データに基づいて、前記物理ストレージに前記論理ユニットを作成する命令と前記論理ユニットを前記仮想ポートに接続する命令を生成して、前記物理ストレージに送信し、前記論理ユニットと前記仮想サーバを組み込む命令と前記仮想サーバを構築する命令とを生成して、前記物理サーバで動作し前記仮想サーバを制御するハイパーバイザに送信する構成生成部と
を有することを特徴とする付記9に記載の情報処理システム。
【0137】
(付記11)前記論理ユニットは、複数の物理サーバでそれぞれ動作する複数の仮想サーバで共有されることを特徴とする付記10に記載の情報処理システム。
【0138】
(付記12)前記構成取得部は、更新された構成定義データを取得し、
前記構成生成部は、更新された構成定義データと更新前の構成定義データに基づいて、削除対象の仮想ストレージを特定し、特定した仮想ストレージを切り離す命令を生成して、前記ハイパーバイザに送信し、特定した仮想ストレージを実現する論理ユニットの仮想ポートとの接続を解除する命令と該論理ユニットを削除する命令を生成して、前記物理ストレージに送信することを特徴とする付記10又は11に記載の情報処理システム。
【0139】
(付記13)コンピュータに、
物理サーバが物理ストレージとのデータ転送に用いる物理ポートに複数の仮想ポートを対応付けるとともに各仮想ポートに前記物理サーバで動作する仮想サーバが実行するミドルウェアが要求する応答仕様を対応付ける仮想ポート構築データと、前記仮想ポートと前記物理ストレージとを対応付ける接続定義データとを取得し、
取得した仮想ポート構築データに基づいて、前記複数の仮想ポートを前記物理ポートに構築する命令を生成して、前記物理サーバに送信し、取得した接続定義データに基づいて、前記仮想ポートを介して前記物理サーバと前記物理ストレージを接続する命令を生成して、前記物理ストレージに送信する
処理を実行させることを特徴とする構築管理プログラム。
【0140】
(付記14)前記コンピュータに、
前記物理サーバと前記仮想サーバと前記物理ストレージが提供する論理ユニットとを対応付ける構成定義データを取得し、
取得した構成定義データに基づいて、前記物理ストレージに前記論理ユニットを作成する命令と前記論理ユニットを前記仮想ポートに接続する命令を生成して、前記物理ストレージに送信し、前記論理ユニットと前記仮想サーバを組み込む命令と前記仮想サーバを構築する命令とを生成して、前記物理サーバで動作し前記仮想サーバを制御するハイパーバイザに送信する
処理をさらに実行させることを特徴とする付記13に記載の構築管理プログラム。
【0141】
(付記15)前記論理ユニットは、複数の物理サーバでそれぞれ動作する複数の仮想サーバで共有されることを特徴とする付記14に記載の構築管理プログラム。
【0142】
(付記16)前記構成定義データを取得する処理は、更新された構成定義データを取得し、
前記コンピュータに、
更新された構成定義データに基づいて、更新された構成定義データと更新前の構成定義データに基づいて、削除対象の仮想ストレージを特定し、特定した仮想ストレージを切り離す命令を生成して、前記ハイパーバイザに送信し、特定した仮想ストレージを実現する論理ユニットの仮想ポートとの接続を解除する命令と該論理ユニットを削除する命令を生成して、前記物理ストレージに送信する
処理をさらに実行させることを特徴とする付記14又は15に記載の構築管理プログラム。
【符号の説明】
【0143】
1 情報処理システム
1a,91a 物理サーバ
1b,91b インターコネクトネットワークスイッチ
1c,91c 物理ストレージ
1d,91d 標準ネットワークスイッチ
1e 物理ネットワークスイッチ
1f SDSコントローラ
2a,92a 仮想サーバ
2b 仮想スイッチ
2c 仮想ストレージ
2e,92e アプリ
2f ミドルウェア
2g コンテナ
3,93,93a 情報通信システム
4,94 FCスイッチ
4a SVP
5,95 論理ユニット
5a RAIDグループ
5b ストレージデバイス装置
5d SVP
6,96 物理ポート
6a 仮想ポート
6b ハイパーバイザ
6c SVP
6d 基本ディスク
8a SVP
9a SVP
9e SVP
10 DB装置
11 DB
11a マスターデータ
11b ワークデータ
20 構築装置
21 入力処理部
22 命令生成処理部
30,90 管理装置
31 入力処理部
32 ファイル生成処理部
40,41,97,97a クラウドコンピューティング基盤
50 コンピュータ
51 メインメモリ
52 CPU
53 LANインタフェース
54 HDD
55 スーパーIO
56 DVI
57 ODD
91f クラスタウェア
91g ネットワークスイッチ
92d 仮想化制御ソフト