以下、図面を参照しつつ、本発明を実施するための形態を説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡略化がなされている。本実施形態の計算機システムは、管理システムと、複数の計算機と、複数のI/O(Input/Output)アダプタを含む。計算機は、割り当てられているI/Oアダプタを介してネットワークに接続し、例えば、データ通信ネットワークを介してストレージシステムにアクセスする。
本実施形態の管理システムは、計算機システムにおける予備計算機の新たな配置位置を評価する。具体的には、管理システムは、システム内で予備計算機を配置可能な位置とその予備計算機に割当て可能な予備I/Oアダプタの配置位置との組合候補を選択し、システム内の複数の現用計算機のそれぞれから上記予備計算機への切替に適用可能な切替方法を特定する。管理システムは、特定した各現用計算機からの切替方法に基づき、上記配置の組合候補を評価する。
このように現用システムの複数の計算機からの切替えについて、予備計算機と予備I/Oアダプタの配置位置の候補を評価することで、現用システム構成に対応した、より適切な予備計算機の実際の配置位置を選択することができる。
図1は、本実施形態の計算機システムの構成例を模式的に示すブロック図である。計算機システムは、複数の業務サーバ計算機(サーバ又はサーバ計算機とも呼ぶ)110A〜110E、ネットワークスイッチ120、管理計算機130、ファイバチャネルスイッチ(FCスイッチ)140、ストレージシステム150、I/Oスイッチ160を含む。本実施形態の計算機システムにおいて、各装置の数は設計により変化する。
サーバ計算機110A〜110Eは、それぞれ、現用サーバ計算機又は予備サーバ計算機である。現用サーバ計算機は業務を実行している計算機であり、予備サーバ計算機は、業務を実行しておらず、現用サーバ計算機から業務を引き継ぐことが可能な待機中のサーバ計算機である。
サーバ計算機110A〜110Cは、筺体171A内のスロットに収容されている。筺体171Aは、HBA(Host Bus Adaptor)172A〜172Cを、それぞれスロットに収容している。筺体171Aは、収容している装置の管理、制御を行う筺体コントローラ(不図示)を含む。
HBAは、サーバ計算機のI/Oアダプタであり、計算機をネットワークに接続するためのプロトコル変換等を行うインタフェースである。本構成例において、HBAは、FCネットワークに接続するための通信インタフェースカードである。HBA172A〜172Cは、それぞれ、筺体171A内の配線によりサーバ計算機110A〜110Cに接続している。サーバ計算機110A〜110Cは、それぞれ、HBA172A〜172Cを介してFCスイッチ140に接続する。HBA172AのタイプはHBA_Aであり、その他のHBA172B、172Cのタイプは、HBA_Bである。
サーバ計算機110D、110Eは、それぞれ、筺体171Aとは別の筺体171Bのスロットに収容されている。筺体171Bは、収容している装置の管理、制御を行う筺体コントローラ(不図示)を含む。
I/Oスイッチ160は、例えば、PCIeスイッチである。I/Oスイッチ160は、HBA172D、HBA172Eを含む。これらのタイプは、HBA_Bである。I/Oスイッチ160は、サーバ計算機110D、110Eに割り当てるHBAを、HBA172D、HBA172Eから選択して切替えることができる。サーバ計算機110D、110Eは、それぞれ、HBA172D、172Eの一方又は他方を介して、FCスイッチ140に接続する。
ネットワークスイッチ120を含むネットワークは管理ネットワークであり、管理計算機130は、ネットワークスイッチ120を介して他の装置、つまり、サーバ計算機110A〜110E、FCスイッチ140、ストレージシステム150及びI/Oスイッチ160に接続する。管理計算機130は、ネットワークスイッチ120を介して、各装置の管理のために必要なデータの送受信を行う。典型的には、管理ネットワークはIPネットワークであるが、他のプロトコルを使用してもよい。
FCスイッチ140を含むネットワークはストレージシステム150に格納されるデータの通信用のネットワークであって、本構成においては、SAN(Storage Area Network)である。本例において、SANは、ファイバチャネルを利用する。SANは、複数のファイバチャネルスイッチを含むことができる。
このデータの通信用のネットワークは、データ通信用のネットワークであればファイバチャネルと異なるプロトコルを利用してもよく、SAN以外のネットワーク、例えばiSCSI(Internet Small Computer System Interface)ネットワークやIPネットワークでもよい。
ストレージシステム150は、サーバ計算機110A〜110Eにボリューム151を提供する。各サーバ計算機110A〜110Eは、割り当てられたHBAによりFCスイッチ140に接続し、FCスイッチ140を介してストレージシステム150のボリュームにアクセスする。
図2は、管理計算機130のハードウェア構成及びソフトウェア構成例を模式的に示すブロック図である。管理計算機130は、プロセッサ131、主記憶装置であるメモリ132、二次記憶装置133、ネットワークインタフェース134、入力装置137、表示装置138を備える。これらは、バスを介して接続している。
管理計算機130は、ネットワークインタフェース134を介してネットワークスイッチ120と接続し、システム内の他の装置との間で通信を行う。管理者(ユーザ)は、入力装置137及び表示装置138を使用して、必要な情報の入力及び確認を行う。入力装置137は、典型的には、マウスとキーボードであり、表示装置の典型例は液晶表示装置である。
図2は、入出力装置137、138を備える管理計算機130を例示するが、管理者は、ネットワークを介して、別の端末から管理計算機130の機能を利用してもよい。本例の管理システムは管理計算機130で構成されているが、管理システムは複数の計算機で構成してもよい。複数の計算機の一つは表示用計算機であってもよく、管理処理の高速化や高信頼化のために、複数の計算機が管理計算機と同等の処理を実現してもよい。
プロセッサ131は、メモリ132に格納されているプログラムを実行することによって管理計算機130の所定の機能を実現する。具体的には、管理計算機130は、不図示のOS(Operating System)に加え、予備サーバ配置プログラム200を格納している。予備サーバ配置プログラム200は、予備サーバ候補テーブル作成プログラム201、予備サーバ候補評価プログラム202、予備サーバ配置先選択プログラム203、予備サーバ構築プログラム204を含む。プログラムの数は設計による。これらプログラムの詳細は後述する。
メモリ132は、さらに、予備サーバ配置プログラム200が利用する情報を格納している。具体的には、メモリ132は、ユーザ要求管理テーブル211、予備サーバ候補テーブル212、未使用装置管理テーブル213、切替グループ管理テーブル214、サーバ管理テーブル215、サーバ切替管理テーブル216、切替戦略テーブル217、切替要件テーブル218、I/Oスイッチ管理テーブル219、FCスイッチ管理テーブル220、HBA管理テーブル221、ボリューム管理テーブル222、筺体管理テーブル223を格納している。これらの詳細は後述する。
本構成例においては、システム管理に使用される情報は、テーブルに格納されている。必要な情報を含むテーブルの数及び各テーブルが格納する情報は、システム設計に依存する。本実施形態において、データ記憶領域に格納される情報はデータ構造に依存せず、どのようなデータ構造で表現されていてもよい。例えば、テーブル、リスト若しくはデータベースが情報を示すことができる。この点は、他の装置について同様である。
プロセッサ131は、上記プログラムに従って動作することで、これらの機能を実現する機能部(例えば、予備サーバ候補テーブル作成部や予備サーバ候補評価部)として動作する。従って、プログラムの行う処理は、プロセッサ131及びそのプロセッサ131を含む管理計算機130の処理である。
図2は、説明の便宜上、メモリ132内にプログラム及び情報を示しているが、管理計算機130の処理において必要とされるデータ(プログラムを含む)は、典型的に、二次記憶装置133からメモリ132にロードされる。二次記憶装置133はネットワークを介してメモリ132に接続していてもよい。これらプロセッサ及び記憶装置についての説明は、他の計算機について同様である。
図3は、サーバ計算機110A〜110Eのハードウェア構成を模式的に示すブロック図である。ここでは、サーバ計算機110A〜110Eを総称してサーバ計算機110と呼ぶ。サーバ計算機110は、同様の基本的ハードウェア構成を有している。サーバ計算機110は、プロセッサ111、主記憶装置であるメモリ112、I/Oインタフェース113、BMC(Base board Manegement Controller)114を含む。
図示していないが、メモリ112は、OS、アプリケーションプログラム(業務プログラム)及びプログラムが参照する情報が格納されており、プロセッサ111は、それらプログラムに従って動作する。サーバ計算機110は、I/Oインタフェース113を介して、HBA又はI/Oスイッチ160に接続する。本計算機システムの構成例において、メモリ112に格納されるデータは、ストレージシステム150からロードされる。
BMC114は、サーバ計算機110がネットワークスイッチ120に接続するためのインタフェースとして機能する。さらに、BMC114は、サーバ計算機110の管理用コントローラであり、サーバ計算機110において、ハードウェアエラーを監視し、サーバ計算機110のOSやサーバ計算機110が配置されている筐体の筐体コントローラ(不図示)に通知する。筐体コントローラは、そのエラー通知を管理計算機130に送信する。
図1に示すI/Oスイッチ160は、スイッチ制御機構(不図示)と複数のHBAを含む。図1の例において二つのHBA172D、172Eが組込まれている。スイッチ制御機構は、サーバ計算機とHBAとの接続(組合せ)を制御する。スイッチ制御機構は、サーバ計算機と、そのサーバ計算機に割り当てられているHBAとを接続する。サーバ計算機とストレージシステム150との通信において、スイッチ制御機構は、そのサーバ計算機に割り当てられているHBAを介して、データをサーバ計算機とストレージシステム150に転送する。
図4は、ストレージシステム150の構成例を示すブロック図である。ストレージシステム150は、ストレージコントローラ152及び記憶ドライブ群153を有する。記憶ドライブ群153は、1又は複数タイプの記憶ドライブを含む。記憶ドライブの例は、SSD(Solid State Drive)や、HDD(Serial Atttached SCSI Hard Disk Drive)である。
ボリュームは、論理的記憶領域であり、記憶ドライブ群153における1又は複数の記憶ドライブの記憶領域に対応付けられている。典型的には、複数の記憶ドライブから構成されたRAID(Redundant Arrays of Inexpensive Disks)が複数のボリューム151を与える。ストレージコントローラ152は、ストレージシステム150の動作を制御し、ボリュームの作成、複製、管理、アクセス制御などを行う。
図5A〜図5Cを参照して、サーバ計算機の切替方法を説明する。一つの現用サーバ計算機には一つの現用HBAが割り当てられ、現用サーバ計算機は、障害発生又は管理者による指示による切替えがなければ、ストレージシステム150とのデータ通信のために、割り当てられている同一の現用HBAを使用する。
現用サーバ計算機において障害が発生した場合、現用サーバ計算機が接続するHBAにおいて障害が発生した場合、メンテナンスための管理者からの指示があった場合等、計算機システムは、現用サーバ計算機を予備サーバ計算機に切替える。さらに、現用サーバ計算機から予備サーバ計算機への切替えにおいて、必要により、システムは、現用HBAを予備HBAに切替える。
本計算機システムは、四つの切替方法から選択した一つの切替方法により、現用サーバ計算機から予備サーバ計算機に切替える。以下において、この四つの方法を、図5A〜図5Cを参照して説明する。これら四つの方法をそれぞれ、アダプタ継承方法、WWN(World Wide Name)切替方法、マッピング変更方法、デプロイ方法と呼ぶ。管理計算機130は、これら四つの切替方法に基づいて、予備サーバ計算機と予備HBAの配置位置候補(配置先候補)の評価を行う。この点は後述する。
図5Aは、アダプタ継承方法を説明する図である。図5Aの例において、サーバ計算機110Dが、障害が発生した現用サーバ計算機であり、切替元サーバ計算機である。サーバ計算機110Eが、切替先の予備サーバ計算機である。現用サーバ計算機110Dには、現用HBA172Dが割り当てられており、現用サーバ計算機110Dは、現用HBA172Dを介して、ブートディスクのボリューム156にアクセスする。
アダプタ継承方法は、切替元サーバ計算機110Dが使用していたHBA172Dを、切替先の予備サーバ計算機110Eに割り当てる。このように、切替先サーバ計算機110Eが、切替元のサーバ計算機110Dが使用していたHBA172Dを継承する。つまり、アダプタ継承方法は、現用HBA172Dの割り当てサーバ計算機を、障害サーバ計算機110Dから予備サーバ計算機110Eに切替える。このように、切替元サーバ計算機110Dと切替元HBA172Dの切替元組合せから、切替先サーバ計算機110Eと切替先HBA172Dの切替先組合せに切替えられる。
具体的には、管理計算機130は、I/Oスイッチ160に対して、HBA172Dの割り当て装置を、サーバ計算機110Dからサーバ計算機110Eに切替えることを指示する。I/Oスイッチ160の制御管理機構は、制御情報において、HBA172Dの割り当て装置をサーバ計算機110Dからサーバ計算機110Eに切替え、その後、サーバ計算機110Eとストレージシステム150のボリューム156との間のデータ転送を、HBA172Dを介して行う。
アダプタ継承方法は、I/Oスイッチ160により、現用HBA172Dの接続先サーバ計算機を切替える。本例において、アダプタ継承方法は、I/Oスイッチ160に接続されているサーバ計算機(本例において、サーバ計算機110D、110E)の間において使用することができる。また、アダプタ継承方法は、現用HBA172Dにおいて障害発生していないことが必要である。
図5Bは、WWN切替方法及びマッピング変更方法を説明する図である。図5Bは、双方の方法示しているが、サーバ計算機の切替えは、一つの切替方法に従う。図5Bの例において、現用サーバ計算機110B及び現用HBA172Bの現用組合せ(切替元組合せ)が、予備サーバ計算機110C及び予備HBA172Cの予備組合せ(切替先組合せ)に切替えられる。例えば、現用サーバ計算機110B又は現用HBA172Bにおいて障害が発生した場合に、切替先組合せに切替えられる。
WWN切替方法は、WWNの割り当て先を切替える。WWNは、SANにおけるHBAの一意の識別子であり、WWN切替え方法は、仮想化されたWWNをHBAに割り当てる。WWN切替方法は、切替元HBAに割り当てられているWWNを、切替先HBAに割り当て変更する。本例において、WWN切替方法は、現用HBA172Bに割り当てられているWWNを、予備HBA172Cに再割り当てする。例えば、筺体171Aの筺体コントローラ又はサーバ計算機110Cは、管理計算機130からの指示に従って、予備HBA172CのWWNを変更する。
ストレージコントローラ152は、WWNにより識別されるHBAとボリュームとをマッピングして、ボリュームへのアクセスを制御する。ストレージコントローラ152は、ボリュームに割り当てられたWWNのHBAからのアクセスのみを許可する。図5Bの例において、現用サーバ計算機110Bは、現用HBA172Bを介して、ブートディスクのボリューム156にアクセスする。ブートディスクボリューム156は、サーバ計算機で使用されるOSや業務を実行させるための業務アプリケーションを格納している。
切替先の予備HBA172CのWWNは、切替元の現用HBA172BのWWNと同一であるため、ストレージシステム150は、予備HBA172Cを介した予備サーバ計算機110Cからのボリューム156へのアクセスを受け付ける。
一方、マッピング変更方法は、ストレージシステム150におけるWWNとボリュームとの間のマッピングを変更する。本例において、ストレージコントローラ152は、管理計算機130からの指示に従って管理情報を変更し、ボリューム156にマップされている現用HBA172BのWWNを、予備HBA172CのWWNに変更する。現用組合せから予備組合せへの切替え後、ストレージコントローラ152は、ボリューム156に新たにマップされている予備HBA172Cを介した予備サーバ計算機110Cからのボリューム156へのアクセスを受け付ける。
図5Cは、デプロイ方法を説明する図である。デプロイ方法は、現状のブートディスクボリューム156の複製ボリューム157又は現用ボリューム156をバックアップイメージによりリストアしたボリュームを、切替先HBA及び切替先サーバ計算機に接続する。切替先サーバ計算機は、切替先HBAを介して、複製ボリューム157又はリストアされたブートディスクボリューム156に対してアクセスする。
図5Cの例において、現用サーバ計算機110B及び現用HBA172Bの現用組合せ(切替元組合せ)が、予備サーバ計算機110A及び予備HBA172Aの予備組合せ(切替先組合せ)に切替えられる。現用サーバ計算機110Bは、現用HBA172Bを介して、ブートディスクボリューム156にアクセスする。
例えば、ストレージコントローラ152は、ボリューム156の複製ボリューム157を予め作成する。ストレージコントローラ152は、管理計算機130からの指示に従い、予備HBA172AのWWNと複製ボリューム157とを対応づける。現用サーバ計算機110Bから業務を引き継いだ予備サーバ計算機110Aは、予備HBA172Aを介して複製ボリューム157にアクセスすることができる。
上述のように、デプロイ方法は、バックアップイメージによりリストアしたブートディスクボリューム156を使用してもよい。ストレージコントローラ152は、管理計算機130からの指示に従い、ブートディスクボリューム156のバックアップイメージを取得し、それにより、ブートディスクボリューム156をリストアする。
ストレージコントローラ152は、管理計算機130からの指示に従い、予備HBA172AのWWNとブートディスクボリューム156とを対応づける。現用サーバ計算機110Bから業務を引き継いだ予備サーバ計算機110Aは、予備HBA172Aを介してブートディスクボリューム156にアクセスすることができる。
以下において、管理計算機130が格納する情報(図1に示す各テーブル)について、図を参照して説明する。これらテーブルは、サーバ計算機の切替え及び/又は予備サーバ計算機の配置位置評価において参照される。管理計算機130は、各テーブルの情報を、システム内の他の装置又は管理者から取得することができる。
図6は、サーバ管理テーブル215の構成例を示す。サーバ管理テーブル214は、サーバ計算機の構成情報、サーバ計算機に接続されている装置の情報などを格納している。サーバ管理テーブル215は、サーバ計算機に割り当てられたHBA、FCスイッチ、I/Oスイッチなどの装置を管理する。
具体的には、サーバ管理テーブル215は、サーバ識別子カラム601、プロセッサ構成カラム602、メモリ容量カラム603、アダプタ識別子カラム604、接続FC−SW(Fibre Channel−SWitch)ポートカラム605、I/Oスイッチ有無カラム606、サーバ接続I/Oポートカラム607、筺体識別子カラム608を有する。本実施形態において、特に言及がない場合、「識別情報」、「識別子」、「名」、「名前」、「ID」という表現は、互いに置換が可能である。
サーバ識別子カラム601は、システムに含まれるサーバ計算機の識別子を格納している。プロセッサ構成カラム602は、各エントリのサーバ計算機のプロセッサ構成情報を格納している。図6の例において、プロセッサ名、コア数及びクロック周波数の情報が格納されている。メモリ容量カラム603は、各エントリのサーバ計算機のメモリ容量を格納している。
アダプタ識別子カラム604は、各エントリのサーバ計算機に接続されている(割り当てられている)HBAの識別子を格納している。接続FC−SWポートカラム605は、各エントリのHBA40が接続しているFCスイッチ140の識別子と、そのFCスイッチ140のポート番号を格納している。図6の例においては、理解の容易のため、各ポート番号に「Port」の文字を付している。
I/Oスイッチ有無カラム606は、各エントリのサーバ計算機に対するI/Oスイッチ接続情報を格納している。サーバ計算機がI/Oスイッチ160に接続している場合、I/Oスイッチ有無カラム606には「有」が格納され、接続していない場合は「無」が格納される。
サーバ接続I/Oポートカラム607は、各エントリのサーバ計算機が接続しているI/Oスイッチ160の識別子及びそのポート番号を格納する。図6の例においては、理解の容易のため、各ポート番号に「Port」の文字を付している。
エントリのサーバ計算機がI/Oスイッチ160に接続していない場合、そのエントリにおけるサーバ接続I/Oポートカラム607のフィールドは、I/Oスイッチ160に関する情報を格納しておらず、所定値(初期値)を格納する。したがって、I/Oスイッチ有無カラム606の値が「有」であるエントリのみが、サーバ接続I/Oポートカラム607にI/Oスイッチ160に関する情報を格納している。
筺体識別子カラム608は、システムに配置されている各サーバ計算機が収容されている筺体の識別子を格納している。本例においては、二つの筺体171A、171Bの筺体識別子Chassis1、Chassis2のいずれかが、各フィールドに格納されている。
図7は、サーバ切替管理テーブル216の構成例を示す。サーバ切替管理テーブル216は、サーバ計算機の運用形態及びその業務などの情報を格納している。サーバ切替管理テーブル216は、現用サーバ、予備サーバ、各現用サーバの運用業務を管理して、運用業務に応じたサーバ計算機の切替えを可能とする。
具体的には、サーバ切替管理テーブル216は、サーバ識別子カラム701、運用形態カラム702、運用業務識別子カラム703、サーバ状態カラム704を有する。サーバ識別子カラム701の情報は、サーバ識別子カラム601の情報と同様である。
運用形態カラム702、各エントリのサーバ計算機が、業務を実行している現用サーバであるか、予備サーバであるかを示す運用形態情報を格納している。運用業務識別子カラム703は、各現用サーバ計算機が行っている業務の識別子(運用業務識別子)を格納している。運用業務識別子は、各業務に一意の識別子が割り当てられ、業務が運用されていない待機用サーバなどの場合は、カラム1003には何も格納されない。
サーバ状態カラム704は、各エントリのサーバ計算機のサーバ状態情報を格納している。例えば、エントリにおけるサーバ計算機が正常に動作している場合、「正常」がサーバ状態カラム704のそのエントリのフィールドに格納されている。エントリにおけるサーバ計算機で障害が発生している場合、「障害」がサーバ状態カラム704のそのエントリのフィールドに格納されている。現用サーバから予備サーバに切替えられている場合は、その予備サーバのサーバ状態情報として「切替中」が格納される。
図8は、切替戦略テーブル217の構成例を示す。切替戦略テーブル217は、切替方法の復旧所要時間、切替方法に対応しているHBAタイプなどの情報を格納している。管理計算機130は、切替戦略テーブル217を参照して、切替先のサーバ計算機及びHBAの候補を選択する。管理計算機130は、さらに、予備サーバ計算機と予備HBAの配置位置の評価において、切替戦略テーブル217を参照する。切替戦略テーブル217の情報は、管理者により設定される。
切替戦略テーブル217は、具体的には、切替方法カラム801、切替所要時間カラム802、HBAタイプカラム803、I/Oスイッチ要否カラム804、優先度カラム805を有する。
切替方法カラム801は、上記四つの種類の切替方法の名称を格納している。切替所要時間カラム802は、各切替方法の障害発生から障害回復までの時間を格納している。HBAタイプカラム803は、各切替方法が使用することができるHBAのタイプを格納している。I/Oスイッチ要否カラム804の各フィールドは、同一エントリの切替方法が、I/Oスイッチを必要とするか否かを示す。
I/Oスイッチ要否カラム804のフィールドの値が「必要」である場合、そのエントリの切替方法は、I/Oスイッチを必要とする。I/Oスイッチ要否カラム804のフィールドの値が「不要」である場合、そのエントリの切替方法は、I/Oスイッチが不要である。
具体的には、デプロイ方法は、HBA_A及びHBA_Bを使用することができ、I/Oスイッチを必要としない。ディスクマッピング変更方法は、HBA_Aのみを使用することができる。WWN切替方法は、HBA_A及びHBA_Bを使用することができ、I/Oスイッチを必要としない。アダプタ継承方法は、HBA_A及びHBA_Bを使用することができるが、それらを使用するためにI/Oスイッチを必要とする。
優先度カラム805は、各切替方法の優先度を格納している。図8の例において、数値が大きいほど優先度(優先順位)が高い。つまり、アダプタ継承方法の優先順位が最も高く、その次がWWN切替方法、その次がディスクマッピング方法、デプロイ方法の優先順位が最も低い。
図9は、切替要件テーブル218の構成例を示す。切替要件テーブル218は、業務(アプリケーション)に必要なサーバ計算機のハードウェア構成や切替許容時間等の情報を格納している。具体的には、切替要件テーブル218は、運用業務識別子カラム901、プロセッサの必要最低性能カラム902、メモリの必要最低性能カラム903、プロセッサの推奨性能カラム904、メモリの推奨性能カラム905、許容切替時間カラム906を有する。これらのデータは管理者により設定される。
運用業務識別子カラム901は、現用サーバ計算機で運用されている業務の識別子を格納する。プロセッサの必要最低性能カラム902は、各業務に使用するサーバ計算機に要求されるプロセッサの必要最低性能の情報を格納する。メモリの最低性能カラム903は、各業務に使用するサーバ計算機に要求されるメモリの最低性能の情報を格納する。
プロセッサの推奨性能カラム904は、各業務に使用するサーバ計算機で推奨されるプロセッサの性能の情報を格納する。メモリの推奨性能カラム905は、各業務に使用するサーバ計算機で推奨されるメモリの性能の情報を格納する。許容切替時間カラム906は、サーバ計算機の切替えにおいて、運用上許容できる障害発生から復旧までの時間を格納している。要求値又は推奨値が存在しない場合、カラム902〜906は所定値(初期値)を格納する。
図10は、I/Oスイッチ管理テーブル219の構成例を示す。I/Oスイッチ管理テーブル219は、システム内のI/Oスイッチのポートに接続されている装置及び未割てのポートを管理する。具体的には、I/Oスイッチ管理テーブル219は、I/Oスイッチ識別子カラム1001、I/Oポートカラム1002、接続装置カラム1003、装置識別子カラム1004、状態カラム1005を有する。
I/Oスイッチ識別子カラム1001は、各I/Oスイッチのシステム内の一意の識別子を格納する。I/Oポートカラム1002は、I/Oスイッチにおけるポート番号を格納する。接続装置カラム1003は、同一エントリのポートに接続する接続装置の種類を示す情報を格納する。装置が接続されていない(割当てられてない)場合、接続装置カラム1003のフィールドは「未割当て」を格納する。
装置識別子カラム1004は、同一エントリの接続装置の識別子を格納する。機器識別子を格納している。接続装置カラム1003のフィールドが「未割当て」であるエントリにおいては、装置識別子カラム1004のフィールドも「未割当て」である。状態カラム1005のフィールドは、同一エントリの接続装置の状態情報を格納する。接続装置が正常動作していれば「正常」が格納され、障害が発生してれば「障害」が格納される。
図11は、FCスイッチ管理テーブル220の構成例を示す。FCスイッチ管理テーブル220は、システム内のFCスイッチに接続されている装置を管理する。FCスイッチ管理テーブル220は、FCスイッチ識別子カラム1101、FCポートカラム1102、接続装置カラム1103、装置識別子カラム1104、状態カラム1105を有する。
FCスイッチ識別子カラム1101は、各FCスイッチのシステム内の一意の識別子を格納する。FCポートカラム1102は、FCスイッチにおけるポート番号を格納する。接続装置カラム1103は、同一エントリのポートに接続する接続装置の種類を示す情報を格納する。装置が接続されていない(割り当てられてない)場合、接続装置カラム1103のフィールドは「未割当て」を格納する。
装置識別子カラム1104は、同一エントリの接続装置の識別子を格納する。機器識別子を格納している。接続装置カラム1103のフィールドが「未割当て」であるエントリにおいては、装置識別子カラム1104のフィールドも「未割当て」である。状態カラム1105のフィールドは、同一エントリの接続装置の状態情報を格納する。接続装置が正常動作していれば「正常」が格納され、障害が発生してれば「障害」が格納される。
図12は、HBAの管理情報を格納するHBA管理テーブル221の構成例を示す。HBA管理テーブル221は、アダプタ識別子カラム1201、HBAタイプカラム1202、WWNカラム1203、割当ボリュームカラム1204を有する。アダプタ識別子カラム1201は、サーバ計算機に接続するI/Oアダプタ(HBA)のシステム内で一意の識別子を格納する。HBAタイプカラム1202は、各エントリのHBAのタイプを格納する。本例においては、HBA_A、HBA_Bの二つタイプが存在する。
WWNカラム1203は、各エントリのHBAに割当てられたWWNを格納する。各HBAは、ポート数と同じ数のWWNを有する。図12の例において、HBA1のポート数は1であり、他のHBAのポート数は2である。割当ボリュームカラム1204は、同一エントリのWWNに割当てられているボリュームの識別子を格納する。WWNにボリュームが割り当てられてない場合、そのWWNの割当ボリュームカラム1204の値は所定値(初期値)である。
図13は、ボリューム管理テーブル222の構成例を示す。ボリューム管理テーブル222は、ボリューム識別子カラム1301、ポート識別子カラム1302、ドメイン識別子カラム1303、バックアップイメージカラム1304、複製ボリュームカラム1305、WNカラム1306を有する。
ボリューム識別子カラム1301は、システム内で一意のボリュームの識別子を格納する。ポート識別子カラム1302は、各ボリュームに割当てられているストレージシステム150のポートの識別子を格納する。ドメイン識別子カラム1303は、各ボリュームと関係付けられたホストグループのドメインIDを格納している。
バックアップイメージカラム1304は、各ボリュームのバックアップイメージの格納先を示す情報を格納している。ボリュームのバックアップイメージが存在しない場合、そのエントリのカラム1304のフィールドの値は所定値(初期値)である。
複製ボリュームカラム1305は、各ボリュームの複製ボリュームを格納するストレージシステムの識別子とボリューム識別子とを格納している。ボリュームに対する複製ボリュームが存在しない場合、そのエントリのカラム1305のフィールドの値は所定値である。WWNカラム1306の各フィールドは、同一エントリにおけるボリュームに割当てられているHBAのWWNを格納している。
図14は、筺体管理テーブル223の構成例を示す。筺体管理テーブル223は、システム内の各筺体の各スロットに装着されている装置の情報を有する。筺体管理テーブル223は、筺体識別子カラム1401、装置種別カラム1402、スロット番号カラム1403、装置識別子カラム1404を有する。
筺体識別子カラム1401は、システム内の筺体の識別子を格納する。本例においては、二つの筺体171A、171Bの識別子Chassis1、Chassis2が登録されている。種別カラム1402は、各筺体の各スロットに装着される装置の種別(スロットの種別)を格納する。「ホスト」はサーバ計算機を示し、「アダプタ」はHBAを示している。「ホスト」のスロットは、サーバ計算機用のスロットであり、「アダプタ」スロットは、HBA用のスロットである。
スロット番号カラム1403は、各スロットのスロット番号を格納する。スロット番号は、各筺体において同一種別のスロットにおいて一意である。筺体171Aにおいて、スロット番号が一致するサーバ計算機とHBAが接続する。装置識別子カラム1404は、各スロットに装着されている装置、本例ではサーバ計算機又はHBAの識別子を格納する。スロットに装置が装着されていない場合、そのエントリにおける装置識別子カラム1404のフィールドは所定値を格納する。
図15は、切替グループ管理テーブル214の構成例を示す。切替グループは、サーバ計算機の切替え可能なグループを定義する。システムは、切替グループ内においてサーバ計算機を切替えることができ、ある切替グループに属するサーバ計算機を他の切替グループの属するサーバ計算機に切替えることはできない。
図15の例において、切替グループ管理テーブル214は、三つの切替グループのテーブル1501〜1503を含む。各グループの名称は、Gr1、Gr2、Gr3である。図15においては、切替グループGr1のテーブル1501が具体的に示されている。切替グループGr1のテーブル1501は、現用サーバ管理テーブル1511及び予備サーバ管理テーブル1512を含む。
現用サーバ管理テーブル1511は、切替グループGr1に属する現用サーバ計算機の情報を格納している。予備サーバ管理テーブル1512は、切替グループGr1に属する予備サーバ計算機の情報を格納している。他の切替グループのテーブル1502、1503も、これらの二つの管理テーブルを含む。
現用サーバ管理テーブル1511は、シャーシカラム1521、スロット番号カラム1522、サーバ識別子カラム1523を有する。シャーシカラム1521は、グループに属する各現用サーバ計算機が装着されて筺体の識別子を格納する。スロット番号カラム1522は、各現用サーバ計算機が装着されているスロットのスロット番号を格納する。サーバ識別子カラム1523は、各現用サーバ計算機の識別子を格納している。
予備サーバ管理テーブル1512は、シャーシカラム1531、スロット番号カラム1532、サーバ識別子カラム1533を有する。シャーシカラム1521は、グループに属する各予備サーバ計算機が装着されて筺体の識別子を格納する。スロット番号カラム1532は、各予備サーバ計算機が装着されているスロットのスロット番号を格納する。サーバ識別子カラム1533は、各予備サーバ計算機の識別子を格納している。なお、切替グループは定義しなくともよい。
図16は、ユーザ要求格納テーブル211の構成例を示す。ユーザ要求格納テーブル211は、予備サーバ計算機の配置位置の評価において参照される要求得点の情報を格納しており、管理者(ユーザ)によりデータ設定される。具体的には、ユーザ要求格納テーブル211は、切替グループ識別子カラム1601、最低得点カラム1602、最高得点カラム1603、平均点カラム1604を有する。最低得点カラム1602、最高得点カラム1603、平均点カラム1604の情報の使用方法は後述する。
以下において、予備サーバ配置プログラム200による予備サーバ計算機の配置位置評価及びその評価に応じた推奨配置位置の選定を説明する。図17は、予備サーバ配置プログラム200の処理の概要を示すフローチャートである。予備サーバ配置プログラム200は、まず、予備サーバ候補テーブル212を作成する(S101)。予備サーバ候補テーブル212の詳細は後述する。
次に、予備サーバ配置プログラム200は、予備サーバ候補テーブル212から選択した予備サーバ計算機の配置位置候補(配置先候補)を評価する(S102)。予備サーバ配置プログラム200は、予備サーバ計算機の配置位置候補の評価結果から、予備サーバ計算機の推奨配置位置を決定する(S103)。
予備サーバ配置プログラム200は、管理者に指定された数の推奨配置位置を決定したか判定する(S104)。決定した推奨配置位置の数が指定数に達していない場合(S104:NO)、予備サーバ配置プログラム200は、新たな推奨配置位置を決定する(S103)。
決定した推奨配置位置の数が指定数に達している場合(S104:YES)、予備サーバ配置プログラム200は、決定した推奨配置先を管理者に表示する(S105)。管理者によって予備サーバ計算機が新たな位置に配置されると、予備サーバ配置プログラム200は、予備サーバ計算機の新たな配置に従ってシステム内の装置の設定を行う(S106)。
以下において、図17のフローチャートで説明したステップの詳細を説明する。図18A〜18Cは、予備サーバ候補テーブル作成プログラム201の処理フローを示すフローチャートである。このフローは、図17におけるステップS101に対応する。図18Aのセクションは結合子Aを介して図18Bのセクションに続き、図18Bのセクションは結合子Bを介して図18Cのセクションに続く。
予備サーバ候補テーブル作成プログラム201は、予備サーバ候補テーブル212を作成するため、未使用装置管理テーブル213を作成し、その未使用装置管理テーブル213に未使用のサーバ計算機及びHBAを登録する。
未使用のサーバ計算機及びHBAは、すでに配置されている未使用のサーバ計算機及び未使用のHBAに加え、新たにシステムに追加することができるサーバ計算機及びHBAを含む。配置済みの未使用装置(サーバ計算機及びHBA)は、予備装置として登録されている装置と、予備装置として登録されていない装置を含む。予備サーバ候補テーブル作成プログラム201は、未使用装置管理テーブル213から選択したサーバ計算機とHBAの組合せを、予備サーバ候補テーブル212に登録する。
図19は、未使用装置管理テーブル213の構成例を示している。未使用装置管理テーブル213は、種別カラム1901、サーバ識別子/アダプタ識別子カラム1902、筺体識別子/I/Oスイッチ識別子カラム1903、スロット番号/ポート番号カラム1904を有する。
種別カラム1901は装置の種別を格納し、各フィールドは、サーバ計算機を示す「ホスト」又はHBAを示す「アダプタ」の一方を格納している。サーバ識別子/アダプタ識別子カラム1902において、サーバ計算機のエントリのフィールドはサーバ識別子を格納し、HBAのエントリのフィールドはアダプタ識別子を格納する。
筺体識識別子/I/Oスイッチ識別子カラム1903において、サーバ計算機のエントリのフィールドは、それが収容されている筺体の識別子を格納する。I/Oスイッチに接続するHBAのエントリのフィールドは、そのI/Oスイッチの識別子を格納する。I/Oスイッチを介することなくサーバ計算機と一対一接続するHBAのエントリのフィールドは、それが組込まれている筺体の識別子を格納する。
スロット番号/ポート番号カラム1904において、筺体識別子を格納するエントリは、その筺体においてそのエントリの装置が装着されているスロット番号を格納する。I/Oスイッチ識別子を格納するエントリは、そのエントリのHBAが接続するそのI/Oスイッチのポート番号を格納する。図19においては、理解の容易のため、各番号に「Slot」又は「Port」の文字を付した。
例えば、図19の未使用装置管理テーブル213において、「HOST3」のサーバ計算機は、「Chassis1」の筺体において、スロット番号が「3」のスロットに挿入されている。「HBA3」のHBAは、「Chassis1」の筺体において、スロット番号が「3」のスロットに挿入されている。
図19の未使用装置管理テーブル213において、上二つのエントリ(矩形1911で指示)は、システム内にすでに配置されている装置である。他のエントリ(矩形1912で指示)は、未使用のスロット又はI/Oポートに仮に割当てた装置、つまり、計算機システムに追加することができる装置である。
図20は、予備サーバ候補テーブル212の構成例を示している。予備サーバ候補テーブル212は、サーバ識別子カラム2001、アダプタ識別子カラム2002、最低得点カラム2003、最高得点カラム2004、合計得点カラム2005を有する。
予備サーバ候補テーブル212は、未使用装置管理テーブル213から選択された各サーバ計算機と各HBAの全ての組合せを格納している。つまり、サーバ識別子カラム2001は、未使用装置管理テーブル213の全てのサーバ計算機を格納し、アダプタ識別子カラム2002は、未使用装置管理テーブル213の全てのHBAを格納している。サーバ計算機とHBAの組合せに対する最低得点、最高得点及び合計得点については後述する。管理計算機130は、これら得点を基に予備サーバ計算機の配置位置の評価を行う。
図18Aは、システムに配置されているサーバ計算機における未使用サーバ計算機を、未使用装置管理テーブル213へ登録するフローを示す。図18Aのフローにおいて、予備サーバ候補テーブル作成プログラム201は、管理者に選択された切替グループ(例えば図15の切替グループ管理テーブル214におけるグループGr1)における未使用サーバを未使用装置管理テーブル213に登録する。
図18Bは、システムに配置されているHBAにおける未使用HBAを、未使用装置管理テーブル213へ登録するフローを示す。図18Cは、新たにシステムに追加することができるサーバ計算機及びHBAの未使用装置管理テーブルへの登録、並びに、予備サーバ候補テーブルへの未使用計算機と未使用HBAの組合せの追加のフローを示す。
図18Aのフローにおいて、予備サーバ候補テーブル作成プログラム201は、システムに配置されているサーバ計算機から、選択された切替グループに属する又は属することができる未使用サーバ計算機を選択して、未使用装置管理テーブル213に登録する。
切替グループに属する配置済み未使用サーバ計算機は、切替グループの予備サーバ計算機である。切替グループに属することができる配置済み未使用サーバ計算機は、いずれの切替グループにも属していない予備サーバ計算機である。配置済み未使用サーバ計算機は、HBAが割当てられてないサーバ計算機を含む。
図18Aに示すように、予備サーバ候補テーブル作成プログラム201は、管理者の指示に従って切替グループを選択する(S201)。管理者は、管理計算機130の入力装置137を使用して、切替グループを直接又はサーバ計算機を指定することで切替グループを指定することができる。
次に、予備サーバ候補テーブル作成プログラム201は、サーバ管理テーブル215から、一つのサーバ計算機エントリを選択する(S202)。予備サーバ候補テーブル作成プログラム201は、選択したエントリの情報から、そのサーバ計算機にHBAが割当てられているか否かを判定する(S203)。そのエントリのアダプタ識別子カラム604のフィールドが、HBAの識別子を格納していれば、HBAが割当てられている。
選択したサーバ計算機にHBAが割当てられていない場合(S203:NO)、予備サーバ候補テーブル作成プログラム201は、切替グループ管理テーブル214を参照して、選択したサーバ計算機がステップS201で選択した切替グループと異なる切替グループに属するか判定する(S205)。
その選択したサーバ計算機が他の切替グループに属していない場合(S205:NO)、予備サーバ候補テーブル作成プログラム201は、選択したサーバ計算機を未使用装置管理テーブル213へ追加する。その選択したサーバ計算機が他の切替グループに属してる場合(S205:YES)、予備サーバ候補テーブル作成プログラム201は、その選択したサーバ計算機を未使用装置管理テーブル213に登録することなく、ステップS207に進む。
ステップS203において、選択したサーバ計算機にHBAが割当てられていると判定すると(S203:YES)、予備サーバ候補テーブル作成プログラム201は、HBA管理テーブル221を参照し、選択したサーバに割当てられているHBAにボリュームが割当てられているかを判定する(S204)。HBA管理テーブル221において選択したエントリが、割当ボリュームカラム1204のフィールドにボリューム識別子を格納している場合、そのエントリのHBAにはボリュームが割当てられている。
HBAにボリュームが割当てられていない場合(S204:NO)、予備サーバ候補テーブル作成プログラム201は、ステップS205に進む。この後のステップは上述の通りである。HBAにボリュームが割当てられている場合(S204:NO)、予備サーバ候補テーブル作成プログラム201は、ステップS207に進む。
予備サーバ候補テーブル作成プログラム201は、ステップS207において、サーバ管理テーブル215における全てのエントリ(サーバ計算機)を選択したか判定する。未選択のエントリが存在する場合(S207:NO)、予備サーバ候補テーブル作成プログラム201は、ステップS202に戻る。全てのサーバ計算機について判定を行った場合(S207:YES)、予備サーバ候補テーブル作成プログラム201は、結合子Aを介して、図18Bのセクションに移る。
上記例は、選択された切替グループについて未使用のサーバ計算機を選択しているが、予備サーバ候補テーブル作成プログラム201は、切替グループを考慮することなくこのフローを実行してもよい。そのフローにおいて、ステップS201とステップS205が省略される。全ての切替グループの予備サーバ計算機が未使用装置管理テーブル213に登録されうる。
予備サーバ候補テーブル作成プログラム201は、未使用サーバ計算機の選択において、サーバ計算機に要求されている性能を参照してもよい。例えば、切替グループに属するサーバ計算機に対してユーザにより要求される性能が定義される。予備サーバ候補テーブル作成プログラム201は、その性能要求情報と配置済み未使用サーバ計算機の性能とを比較し、配置済み未使用サーバ計算機において要求された性能を満たす未使用サーバ計算機のみを、未使用装置管理テーブル213に登録する。
次に、図18Bに示すフローにおいて、予備サーバ候補テーブル作成プログラム201は、計算機システムに配置されているHBAから、未使用HBAを選択して、未使用装置管理テーブル213に登録する。まず、予備サーバ候補テーブル作成プログラム201は、HBA管理テーブル221から一つのエントリ(HBA)を選択する(S208)。
予備サーバ候補テーブル作成プログラム201は、サーバ管理テーブル215を参照して、選択したHBAがサーバ計算機に割当てられているかを判定する(S209)。HBAがサーバ計算機に割当てられていない場合(S209:NO)、予備サーバ候補テーブル作成プログラム201は、その選択したHBAを未使用装置管理テーブル213に登録する(S210)。
HBAがサーバ計算機に割当てられている場合(S209:YES)、予備サーバ候補テーブル作成プログラム201は、選択したHBAが割当てられているサーバ計算機が未使用管理テーブル213に登録されているか判定する(S211)。そのサーバ計算機が未使用管理テーブル213に登録されていない場合(S211:NO)、予備サーバ候補テーブル作成プログラム201は、選択したHBAを未使用装置管理テーブル213に登録する(S210)。
割当てられているサーバ計算機が未使用管理テーブル213に登録されている場合(S211:YES)、予備サーバ候補テーブル作成プログラム201は、選択したHBAがストレージシステム又はFCスイッチに接続されているか判定する(S212)。予備サーバ候補テーブル作成プログラム201は、サーバ管理テーブル215又はFCスイッチ管理テーブル220から取得した情報により判定する。なお、本例においては、全てのHBAはFCスイッチ140を介してストレージシステム150に接続する。
選択したHBAがストレージシステム及びFCスイッチに接続していない場合(S212:NO)、予備サーバ候補テーブル作成プログラム201は、そのHBAを未使用装置管理テーブル213に登録する(S210)。選択したHBAがストレージシステム又はFCスイッチに接続している場合(S212:YES)、予備サーバ候補テーブル作成プログラム201は、選択したHBAにボリュームが割当てられているかを、HBA管理テーブル221の情報を使用して判定する(S213)。
選択したエントリの割当ボリュームカラム1204のフィールドがボリューム識別子を格納し、HBAにボリュームが割当てられている場合(S213:YES)、予備サーバ候補テーブル作成プログラム201は、ステップS214に進む。HBAにボリュームが割当てられていない場合(S213:NO)、予備サーバ候補テーブル作成プログラム201は、そのHBAを未使用装置管理テーブル213に登録する(S210)。
予備サーバ候補テーブル作成プログラム201は、ステップS214において、HBA管理テーブル221における全てのエントリ(HBA)を選択したか判定する。未選択のエントリが存在する場合(S214:NO)、予備サーバ候補テーブル作成プログラム201は、ステップS208に戻る。全てのHBAについて判定を行った場合(S214:YES)、予備サーバ候補テーブル作成プログラム201は、結合子Bを介して、図18Cのセクションに移る。
図18Cに示すフローにおいて、予備サーバ候補テーブル作成プログラム201は、筺体の未使用スロットに組込み可能なサーバ計算機及びHBA、並びに、I/Oスイッチの空きポートに接続可能なHBAを、未使用装置として選択する。
まず、予備サーバ候補テーブル作成プログラム201は、筺体管理テーブル223を参照し、システムの筺体(図1の例における筺体171A、171B)に未使用スロットが存在するか判定する(S215)。未使用スロットは、サーバ計算機の未使用スロット又はHBAの未使用スロットである。
未使用スロットが存在する場合(S215:YES)、予備サーバ候補テーブル作成プログラム201は、その未使用スロットにサーバ計算機又はHBAを挿入したと仮定して、その装置を未使用装置管理テーブル213に登録する(S216)。その後、予備サーバ候補テーブル作成プログラム201はステップS215に戻って、未使用スロットが残っているか判定する。
未使用スロットが存在ない場合(S215:NO)、予備サーバ候補テーブル作成プログラム201は、I/Oスイッチ管理テーブル219を参照し、未使用(未割当て)のHBA用I/Oポートが存在するか判定する(S217)。未使用のHBA用I/Oポートが存在する場合(S217:YES)、予備サーバ候補テーブル作成プログラム201は、その未使用I/OポートにHBAを接続したと仮定して、そのHBAを未使用装置管理テーブル213に登録する(S218)。その後、予備サーバ候補テーブル作成プログラム201はステップS217に戻って、未使用I/Oポートが残っているか判定する。
HBA用の未使用I/Oポートが残っていない場合(S217:NO)、予備サーバ候補テーブル作成プログラム201は、未使用装置管理テーブル213から取得した未使用計算機と未使用HBAの組合せを、予備サーバ候補テーブル212に登録する(S219)。未使用装置管理テーブル213の未使用サーバ計算機と未使用HBAの全て組合せが登録される。
図21A〜21Cは、予備サーバ候補評価プログラム202による、予備サーバ計算機候補の評価のフローを示す。これは、図17のフローチャートにおけるステップS102に対応する。図21B及び図21Cは、図21AにおけるステップS302の詳細を示す。図21Aに示すように、予備サーバ候補評価プログラム202は、予備サーバ候補テーブル212から一つのエントリ(予備サーバ計算機候補と予備HBA候補の組合候補)を選択する(S301)。
予備サーバ候補評価プログラム202は、選択したエントリの予備サーバ計算機候補と予備HBA候補とが接続可能であるは判定する(S302)。接続不能である場合(S302:NO)、予備サーバ候補評価プログラム202は、そのエントリの最低得点カラム2003、最高得点カラム2004、合計点カラム2005の各フィールドに所定値を格納し、次のエントリを選択する(S301)。
選択したエントリの二つの装置が接続可能である場合、予備サーバ候補評価プログラム202は、ステップS303に進む。予備サーバ候補評価プログラム202は、未使用装置管理テーブル213及びサーバ管理テーブル215を参照して、装置の接続可能性を判定することができる。
ステップS303において、予備サーバ候補評価プログラム202は、選択したエントリを評価し、予備サーバ候補テーブル212における選択したエントリにその評価結果を書き込み、予備サーバ候補テーブル212のデータを更新する。図20に示すように、評価結果は、最低得点、最高得点、合計点で表される。評価方法(得点算出方法)の詳細は後述する。
予備サーバ候補評価プログラム202は、予備サーバ候補テーブル212に選択するエントリが残っているか判定する(S304)。選択するエントリが残っている場合には(S304:NO)、予備サーバ候補評価プログラム202は新たなエントリを選択する(S301)。選択するエントリが残っていない場合には(S304:YES)、フローは終了する。
図21Bは、ステップS302における詳細を示す。予備サーバ候補評価プログラム202は、ステップS301において選択した予備サーバ計算機候補と予備HBA候補との組合せに対する、各現用サーバ計算機と現用HBAの組合せに対する評価値を算出する。まず、予備サーバ候補評価プログラム202は、選択された切替グループから、現用サーバ計算機と現用HBAの組合せを選択する(S311)。
予備サーバ候補評価プログラム202は、切替グループ管理テーブル214から選択されたグループにおける一つの現用サーバ計算機を選択し、サーバ管理テーブル215を参照して、選択した現用サーバ計算機に割当てられているHBAを特定することができる。
次に、予備サーバ候補評価プログラム202は、選択した現用組合せから、選択した予備組合せ候補への切替え、において使用することができる、優先度が最も高い切替方法を特定し、その情報をメモリ132に格納する(S312)。切替方法の優先度は、図8を参照して説明したように、切替戦略テーブル217に定義されている。優先度が最も高い切替方法の特定方法は、図21Cを参照して後述する。
予備サーバ候補評価プログラム202は、次に、切替グループ管理テーブル214における選択した切替グループの全ての現用サーバ計算機を選択したか判定する(S313)。未評価の現用サーバ計算機(現用組合せ)が残っている場合(S313:NO)、予備サーバ候補評価プログラム202は、切替グループ管理テーブル214及びサーバ管理テーブル215から、新たな現用サーバ計算機と現用HBAの組合せを選択し(S311)、優先度が最も高い使用可能な切替方法を特定する(S312)。
選択した予備組合せ候補について全ての現用組合せに対する評価を行った場合(S313:YES)、予備サーバ候補評価プログラム202は、選択した予備組合せ候補の得点を算出する。具体的には、予備サーバ候補評価プログラム202は、全ての現用組合せのそれぞれに対して特定した切替方法における、優先度の最小値と最高値を特定する(S3114)。予備サーバ候補評価プログラム202は、さらに、全ての現用組合せのそれぞれに対して特定した切替方法の優先度の合計を算出する(S315)。
予備サーバ候補評価プログラム202は、ステップS314、S315で決定した評価値によって、予備サーバ候補テーブル212を更新する。具体的には、予備サーバ候補評価プログラム202は、ステップS3114で特定した最小値を選択したエントリの最低得点カラム2003のフィールドに格納し、最高値を最高得点カラム2004のフィールドに格納する。さらに、予備サーバ候補評価プログラム202は、ステップS315で算出した合計値を、選択したエントリの合計点カラム2005のフィールドに格納する。
次に、図21Cを参照して、ステップS312における優先度が最も高い切替方法の特定方法を説明する。予備サーバ候補評価プログラム202は、優先度の高い順に定義されている切替方法を選択して、現用組合せから予備組合せ候補への切替えに使用できるか判定する。選択した切替方法が適用可能である場合、予備サーバ候補評価プログラム202は、それを最も優先度の高い切替方法と決定する。
予備サーバ候補評価プログラム202は、まず、選択した予備サーバ計算機が、選択した現用サーバ計算機に割当てられているHBAにI/Oスイッチを介して接続可能であるか判定する(S321)。これらがI/Oスイッチを介して接続可能である場合(S321:YES)、予備サーバ候補評価プログラム202は、選択した現用組合せから予備組合せ候補への切替えに適用する切替方法として、最も優先度が高いアダプタ継承方法を選択する(S322)。
予備サーバ候補評価プログラム202は、未使用装置管理テーブル213を参照して選択した予備サーバ計算機が配置される筺体を特定し、サーバ管理テーブル215を参照してその筺体のサーバ計算機が接続するI/Oスイッチを特定することができる(いずれのI/Oスイッチにも接続しない場合を含む)。予備サーバ候補評価プログラム202は、I/Oスイッチ管理テーブル219を参照して、現用HBAの接続するI/Oスイッチを特定することができる(いずれのI/Oスイッチにも接続しない場合を含む)。
ステップS321の判定が否定的である場合(S321:NO)、予備サーバ候補評価プログラム202は、予備HBA候補が、2番目に優先度が高いWWN切替方法に対応可能であるか判定する(S323)。予備HBA候補がWWN切替方法に対応可能である場合(S323:YES)、予備サーバ候補評価プログラム202は、選択した現用組合せから予備組合せ候補への切替えに適用する切替方法として、WWN切替方法を選択する(S324)。
予備サーバ候補評価プログラム202は、切替戦略テーブル217を参照して、HBAタイプとI/Oスイッチへの接続の有無により、各予備HBA候補が対応可能な切替方法を特定することができる。予備サーバ候補評価プログラム202は、未使用装置管理テーブル213を参照して、予備HBA候補の配置位置、つまり、I/Oスイッチとの接続を知ることができる。
予備HBA候補が既存の予備HBAである場合、予備サーバ候補評価プログラム202は、HBA管理テーブル221を参照して、そのHBAタイプを特定できる。予備HBA候補が新たに追加されるHBAである場合、予備サーバ候補評価プログラム202は、ユーザ指定されたHBAタイプ又は予め設定されたHBAタイプを使用する。本例は、I/OスイッチとHBAタイプにより、利用可能な切替方法が決まるが、例えば、適用条件が他の条件(例えば筺体種類)を含むこともある。
ステップS323の判定が否定的である場合(S323:NO)、予備サーバ候補評価プログラム202は、ストレージシステム150が、3番目に優先度が高いディスクマッピング方法に対応可能であるか判定する(S325)。予備サーバ候補評価プログラム202は、ストレージコントローラ152によりディスクマッピング方法に対応可能であるか判定する。
ストレージシステム150がディスクマッピング方法に対応可能である場合(S325:YES)、予備サーバ候補評価プログラム202は、選択した現用組合せから予備組合せ候補への切替えに適用する切替方法として、ディスクマッピング方法を選択する(S326)。ステップS325の判定が否定的である場合(S325:NO)、予備サーバ候補評価プログラム202は、最も優先度が低いデプロイ方法を、選択した現用組合せから予備組合せ候補への切替えに適用する切替方法として選択する(S327)。
図22は、予備サーバ配置先選択プログラム203の処理を示すフローチャートである。このフローは、図17のフローチャートにおけるステップS103に対応する。予備サーバ配置先選択プログラム203は、更新された予備サーバ候補テーブル212を参照して、予備サーバ計算機の新たな推奨配置先を決定する。図22の例は、最も推奨度が高い予備サーバ計算機と予備HBAの配置先候補を決定する。
まず、予備サーバ配置先選択プログラム203は、予備サーバ候補テーブル212から、一つのエントリを選択する(S401)。予備サーバ配置先選択プログラム203は、選択したエントリの評価(得点)が、ユーザ設定された条件を満たしているか判定する(S402)。評価の条件は、ユーザ要求格納テーブル211に定義されている。
本例のユーザ要求格納テーブル211は、各切替グループの要求を定義しているが、予備サーバ候補テーブル212が全ての切替グループから選択されたエントリを格納する例においては、全ての切替グループに共通の要求を定義すればよい。
予備サーバ配置先選択プログラム203は、選択したエントリの合計点から平均点を算出し、その平均点、最低得点、最高得点のそれぞれを、ユーザ要求格納テーブル211に定義されている値と比較する。円よりの各得点が、ユーザ要求格納テーブル211における値以上である場合に、エントリはユーザ設定された条件を満たしている。
次に、予備サーバ配置先選択プログラム203は、現在エントリの平均点がこれまでにチェックしたエントリの中で最も高いか判定する(S403)。具体的には、チェック済みエントリにおいて最も高い平均点のエントリはメモリ132に一次記憶されており(S404参照)、予備サーバ配置先選択プログラム203は、そのエントリと現在エントリの平均点を比較する。
現在エントリの平均点が最も高い場合(S403:YES)、予備サーバ配置先選択プログラム203は、現在エントリを、最高平均点のエントリとして、メモリ132に一時的に格納する(S404)。現在エントリの平均点が、メモリ132に格納されているチェック済みエントリの平均点以下である場合(S403:NO)、予備サーバ配置先選択プログラム203は、予備サーバ候補テーブル212に未チェックのエントリが残っているか判定する(S405)。
未チェックのエントリが残っている場合(S405:YES)、予備サーバ配置先選択プログラム203は、新たなエントリを選択する(S401)。未チェックエントリが存在しない場合(S405:NO)、予備サーバ配置先選択プログラム203は、メモリ132に一次記憶されているエントリを、最も推奨するエントリと決定し(S406)、このフローを終了する。予備サーバ配置先選択プログラム203は、図22のフローを繰り返すことで、複数の推奨エントリを選択することができる。
図23は、予備サーバ計算機及び予備HBAの推奨配置位置の表示例を示す。予備サーバ配置先選択プログラム203は、図22のフローにより選択した予備サーバ計算機と予備HBAの1又は複数の新たな配置先候補を、管理計算機130の表示装置138により表示する(図17におけるステップS105)。図23の例において、管理者により指定された新たな配置先の数は2であり、予備サーバ配置先選択プログラム203は、選択した二つの推奨配置先を表示している。
本例において、予備サーバ計算機の推奨配置位置は、筺体識別子とスロット番号で示され、予備HBAの推奨配置位置は、I/Oスイッチ識別子とポート番号で示されている。推奨配置位置の予備HBAがI/Oポートに接続しない場合、その推奨配置位置は筺体識別子とスロット番号で示される。図23は表示例を示し、図23の一部の情報を省略する又他の情報を追加してよい。
図24は、予備サーバ構築プログラム204の処理フローを示している。これのフローは、図17におけるステップS106に対応する。管理者により新たに予備サーバ計算機が配置されると、予備サーバ構築プログラム204がこのフローを実行する。新たな予備サーバ計算機の配置は、新たな予備サーバ計算機追加又は既存予備サーバ計算機の再配置である。
予備サーバ構築プログラム204は、予備サーバ配置後の新しいシステム構成に合わせて、FCスイッチの設定をする(S501)。例えば、予備サーバ構築プログラム204は、FCスイッチ140のゾーニング再設定を行う。予備サーバ構築プログラム204は、予備サーバ配置後の新しいシステム構成に合わせて、ネットワークスイッチ120を設定する(S502)。例えば、予備サーバ構築プログラム204は、VLANの再設定を行う。
予備サーバ構築プログラム204は、予備サーバ配置後の新しいシステム構成に合わせて、ストレージシステム150の設定を行う(S503)。例えば、予備サーバ構築プログラム204は、ディスクマッピング情報の再設定を行う。予備サーバ構築プログラム204は、予備サーバ配置後の新しいシステム構成に合わせて、I/Oスイッチ160の設定を行う(S504)。例えば、予備サーバ構築プログラム204は、内部ポートのマッピング変更を行う。
以上、本発明の実施形態を図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含む。例えば、プログラムの少なくとも一部は、専用ハードウェアによって実現されてもよい。プログラムは、プログラム配布サーバや、計算機読み取り可能な非一時的記憶媒体によって各計算機にインストールすることができ、各計算機の不揮発性記憶装置に格納することができる。
上記例においてI/Oスイッチは筐体外に外付けされているが、筺体内に内蔵されていてもよい。上記例は業務サーバ計算機を含むが、これと異なる計算機を含むシステムに本実施形態を適用できる。
上記例は、切替方法によって予備サーバ計算機と予備HBAの配置位置組合候補を評価するが、管理システムは、切替方法の優先度に加えて、それと異なる基準を参照してもよい。例えば、管理システムは、切替先サーバ計算機やHBAの性能を評価基準に含めてもよい。
上記例は、切替方法の優先度により決まる3種類の得点によって評価を行う。管理計算機は、そのうちの1又は2種類の得点によって配置位置の評価を行ってもよい。上記例は、推奨配置位置を管理者に提示するが、管理システムは、予備装置の配置先候補の評価についてこれと異なる情報を提示してもよい。例えば、管理システムは、予備サーバ候補テーブルにおいて評価された全てのエントリ又は複数の最高評価のエントリを表示してもよい。
上記例は、未使用サーバ計算機と未使用HBAの複数の組合候補について評価を行う。これと異なり、管理システムは、管理者により指定された一つの組合候補について、上記評価を行ってもよい。また、管理システムは、切替グループにおける選択した一部の現用サーバ計算機のみについて予備装置の配置先候補の評価を行ってもよい。