以下、図面を用いて実施形態を説明する。
図1は、情報処理システム、管理装置、情報処理システムの制御方法の一実施形態を示す。図1に示す情報処理システム100は、管理装置10と、ネットワーク等を介して管理装置10に接続される複数の電子装置20(20a、20b、20c、20d、20e、20f)とを有する。管理装置10に接続される電子装置20の数は、図1に示す例に限定されない。
電子装置20は、情報処理を実行する情報処理部を含むサーバ等の情報処理装置、または情報を記憶するストレージ等の入出力装置のいずれかである。なお、電子装置20は、情報処理装置および入出力装置以外の装置であってもよい。図1では、電子装置20a、20b、20cは、電子装置群22aに割り当てられ、電子装置20e、20fは、電子装置群22bに割り当てられる。電子装置20dは、電子装置群22a、22bのいずれにも割り当てられない。電子装置20a、20b、20cは、電子装置群22aに含まれる第1の電子装置の一例であり、電子装置20e、20fは、電子装置群22bに含まれる第1の電子装置の一例である。各電子装置群22a、22bは、電源の投入または遮断が連動して実行される単位である。
管理装置10は、割り当て制御部12、電源制御部14および保持部16、18を有する。保持部16は、第1の保持部の一例であり、保持部18は、第2の保持部の一例である。管理装置10は、情報処理システム100の外部からの指示に基づいて、指示された電子装置群22に含まれる電子装置20の電源の投入または遮断を連動させる制御を実行する。また、管理装置10は、情報処理システム100の外部からの指示に基づいて、指示された電子装置群22に含まれる電子装置20の割り当てを変更する制御を実行する。割り当ての変更により、追加が指示された新たな電子装置20が電子装置群22に追加され、または、削除が指示された電子装置20が電子装置群22から削除される。
特に限定されないが、電源の投入または遮断を連動させる指示、および電子装置群22への電子装置20の割り当てを変更する指示は、情報処理システム100に接続された端末装置から管理装置10に発行される。端末装置は、例えば、情報処理システム100を使用するオペレータにより操作される。
保持部16は、各電子装置群22a、22bに含まれる電子装置20の各々を識別する装置情報を保持する。換言すれば、電子装置群22a、22bの各々に割り当てられる電子装置20は、保持部16に保持される装置情報に基づいて決定される。図1に示す例では、保持部16に保持される装置情報は、電子装置20の符号で示される。
保持部18は、電子装置群22a、22bの各々に属する電子装置20の電源の状態を示す電源情報を保持する。保持部18が保持する電源情報は、第1の電源情報の一例である。保持部18において、電子装置20a、20bに対応する領域に保持された電源情報”ON”は、電子装置20a、20bの電源が投入状態であることを示す。保持部18において、電子装置20e、20fに対応する領域に保持された電源情報”OFF”は、電子装置20e、20fの電源が遮断状態であることを示す。
また、保持部18において、電子装置20cに対応する領域に保持された電源情報”−>ON”は、電子装置20cの電源が遮断状態から投入状態に遷移中であることを示す。図1には示していないが、保持部18において、電子装置20に対応する領域に保持される電源情報”−>OFF”は、電子装置20の電源が投入状態から遮断状態に遷移中であることを示す。なお、電源情報”−>ON”および電源情報”−>OFF”の代わりに、電子装置20の電源が遷移中であることを示す共通の電源情報(”−>”等)が、各電子装置20に対応する領域に保持されてもよい。
保持部18において、電子装置群22に含まれる電子装置20のいずれかに対応する領域に電源情報”−>ON”が保持された場合、電子装置群22に含まれる電子装置20の電源が連動して投入中であることを示す。また、保持部18において、電子装置群22に含まれる電子装置20のいずれかに対応する領域に電源情報”−>OFF”が保持された場合、電子装置群22に含まれる電子装置20の電源が連動して遮断中であることを示す。すなわち、電源情報”−>ON”または電源情報”−>OFF”を保持部18に保持することで、保持部18を参照する割り当て制御部12等は、電子装置群22に含まれる電子装置20の電源が遷移中であるか否かを検出することができる。換言すれば、保持部18に保持された電源情報を参照することで、電子装置群22が電源の遷移の過渡期であるか否かを検出することができる。
なお、説明を分かりやすくするために、図1では、保持部18に保持された電源情報(”ON”、”OFF”、”−>ON”)は、各電子装置20にも付されている。各電子装置20は、管理装置10からの問い合わせに基づいて、電源の投入状態を示す情報または電源の遮断状態を示す情報のいずれかを管理装置10に出力する。例えば、各電子装置20は、起動処理が完了するまで、管理装置10からの問い合わせに対して、電源の遮断状態を示す情報を出力し、シャットダウン処理が完了するまで、管理装置10からの問い合わせに対して、電源の投入状態を示す情報を出力する。
管理装置10は、電源の投入の指示を電子装置20に送信した後、電子装置20から電源の投入状態を示す情報を受信するまで、保持部18に電源情報”−>ON”を保持する。また、管理装置10は、電源の遮断の指示を電子装置20に送信した後、電子装置20から電源の遮断状態を示す情報を受信するまで、保持部18に電源情報”−>OFF”を保持する。これにより、電子装置20が電源の遷移中を示す情報を保持および通知する機能がない場合にも、管理装置10は、保持部18が保持する電源情報を参照することで、電子装置20の電源が遷移中であるか否かを判定することができる。
割り当て制御部12は、新たな電子装置20を電子装置群22に追加する指示を受信した場合、電子装置群22に新たな電子装置20を追加する処理を実行する。割り当て制御部12は、保持部18を参照し、新たな電子装置20を追加する電子装置群22に含まれる全ての電子装置20の電源が遷移中でないことを検出した場合、新たな電子装置20の装置情報を保持部16に格納する。装置情報の保持部16への格納により、新たな電子装置20が電子装置群22に割り当てられる。一方、割り当て制御部12は、保持部18を参照し、新たな電子装置20を追加する電子装置群22に含まれる電子装置20のいずれかの電源が遷移中であることを検出した場合、新たな電子装置20の装置情報の保持部16への格納を抑止する。
新たな電子装置20の装置情報の保持部16への格納を抑止した場合、割り当て制御部12は、保持部18に保持された電源情報の参照を継続する。そして、割り当て制御部12は、保持部18に保持された電源情報に基づいて、新たな電子装置20を追加する電子装置群22に含まれる全ての電子装置20の電源の遷移の完了を検出した場合、新たな電子装置20の装置情報を保持部16に格納する。なお、割り当て制御部12は、電子装置群22に含まれる全ての電子装置20に対応する保持部18の領域に保持された電源情報が投入状態(または遮断状態)を示す場合、電子装置群22に含まれる全ての電子装置20の電源の遷移の完了を検出する。
さらに、割り当て制御部12は、保持部18を参照し、電子装置群22に追加した新たな電子装置20の電源の状態が、電子装置群22に含まれる他の電子装置20の電源の状態と同じか否かを判定する。新たな電子装置20の電源の状態は、電源の状態の判定前に保持部18に保持されてもよく、新たな電子装置20を電子装置群22に追加する指示に含まれてもよい。あるいは、割り当て制御部12は、電源の状態を新たな電子装置20に問い合わせてもよい。このように、管理装置10は、保持部18に保持された電源情報に基づいて、新たな電子装置20の電源の状態が、電子装置群22に含まれる他の電子装置20の電源の状態と同じか否かを判定することができる。これにより、オペレータは、電子装置群22に含まれる電子装置20の電源の状態を検出する作業から解放される。
割り当て制御部12は、新たな電子装置20の電源の状態が、電子装置群22に含まれる他の電子装置20の電源の状態と異なる場合、新たな電子装置20の電源の状態を他の電子装置20の電源の状態と一致させる指示を電源制御部14に発行する。電源制御部14は、電源の状態を一致させる指示を割り当て制御部12から受信したことに基づいて、新たな電子装置に電源の遷移を指示する。すなわち、管理装置10は、オペレータからの指示を受けることなく、保持部18に保持された電源情報に基づいて、新たな電子装置20の電源の状態を、電子装置群22に含まれる他の電子装置20の電源の状態と一致させることができる。
また、電源制御部14は、電子装置群22に含まれる電子装置20のいずれかに対する電源の遷移の指示を受信した場合、電源の遷移が指示された電子装置20を含む電子装置群22に対応して保持部16が保持する装置情報を参照する。そして、電源制御部14は、参照した装置情報が示す電子装置20に電源の遷移を指示する。ここで、電源の遷移の指示は、電源の投入の指示または電源の遮断の指示のいずれかである。
電源の投入の指示を受信した各電子装置20は、電源を遮断状態から投入状態に遷移させる。電源の遮断の指示を受信した各電子装置20は、電源を投入状態から遮断状態に遷移させる。すなわち、管理装置10は、電子装置群22に含まれる電子装置20のいずれかに対する電源の遷移の指示に基づいて、電子装置群22に含まれる全ての電子装置20の電源を同じ状態に遷移させる電源の連動動作を実行することができる。
また、電源制御部14は、電子装置群22に含まれる電子装置20のうち、電源が遮断状態から投入状態に遷移中の電子装置20に対応する保持部18の領域に電源情報”−>ON”を設定する。電源制御部14は、電子装置群22に含まれる電子装置20のうち、電源が投入状態から遮断状態に遷移中の電子装置20に対応する保持部18の領域に電源情報”−>OFF”を設定する。
例えば、図1では、管理装置10は、電源の投入の指示に基づいて、電子装置群22aに含まれる電子装置20a、20b、20cに電源の投入をする制御を実行中である。電子装置20a、20bの電源は、遷移が完了した投入状態(”ON”)であり、電子装置20cの電源は、遮断状態から投入状態への遷移中(”−>ON”)である。電子装置20d、20e、20fの電源は、遮断状態(”OFF”)である。
図2は、図1に示す情報処理システム100の動作の一例を示す。図2は、図1に示す電子装置群22aに電子装置20dを追加する例を示す。図2は、電子装置群22aに関する情報を示しており、電子装置群22bに関する情報の記載は省略する。図2において、太枠は、状態が前の状態から変化した要素を示す。
まず、図1に示す管理装置10は、電子装置群22aに含まれる電子装置20aの電源を投入する指示を、情報処理システム100を使用するオペレータ等が操作する端末装置から受信する(図2(a))。管理装置10の電源制御部14は、電子装置20aの電源の投入の指示に基づいて、保持部16を参照し、電子装置20aが属する電子装置群22aに含まれる全ての電子装置20a、20b、20cに電源の投入を指示する。
電源制御部14は、電子装置20a、20b、20cの電源の投入が完了するまで、電源が遮断状態から投入状態へ遷移中であることを示す電源情報”−>ON”を保持部18に保持させる(図2(b))。電子装置20a、20b、20cの電源の投入が完了したか否かは、各電子装置20a、20b、20cが管理装置10に通知してもよく、管理装置10が各電子装置20a、20b、20cの電源の状態を監視してもよい。
電子装置20a、20b、20cの電源の遷移中、管理装置10は、電子装置20dを電子装置群22aに追加する指示を端末装置から受信する(図2(c))。電子装置群22aでは、電子装置20a、20bの電源の投入が終了し、電子装置20cの電源が遷移中である(図2(d))。管理装置10の割り当て制御部12は、保持部18を参照し、電子装置20dを追加する電子装置群22aに含まれる電子装置20cが電源の遷移中であるため、電子装置20dの装置情報の保持部16への格納を抑止する(図2(e)、(f))。
次に、電源制御部14は、電子装置20cの電源の投入の完了後、保持部18における電子装置20cに対応する領域に、電源の投入状態を示す電源情報”ON”を格納する(図2(g)、(h))。割り当て制御部12は、保持部18を参照して電子装置群22aに含まれる全ての電子装置20a、20b、20cに電源の投入を連動させる処理が完了したことを検出した後、保持部16に電子装置20dの装置情報を格納する(図2(i))。すなわち、電子装置群22aに電子装置20dが追加される(図2(j))。
また、割り当て制御部12は、電子装置20dの装置情報を追加した保持部16の情報を電源制御部14に通知する。電源制御部14は、割り当て制御部12からの通知に基づいて、電子装置20dの電源の状態を格納する領域を保持部18に確保し、確保した領域に電子装置20dの現在の電源の状態である遮断状態”OFF”を格納する(図2(k))。
次に、割り当て制御部12は、保持部18を参照し、電子装置群22aにおいて、電子装置20a、20b、20cの電源の状態(”ON”)と、新たに追加した電子装置20dの電源の状態(”OFF”)が一致しないことを検出する。このため、割り当て制御部12は、電子装置20dの電源の状態を電子装置20a、20b、20cの電源の状態と一致させる指示を電源制御部14に発行する。
なお、図2(k)に示したように、管理装置10は、電子装置群22aに含まれる全ての電子装置20a、20b、20cの電源の遷移が完了し、保持部18に反映された後に、保持部16に電子装置20dの装置情報を格納する。これにより、割り当て制御部12は、電子装置20dの電源の状態を電子装置20a、20b、20cのいずれか1つの電源の状態と比較することで、電源の状態が一致するか否かを検出することができる。
電源制御部14は、割り当て制御部12からの指示に基づいて、電子装置20dに電源の投入を指示する。そして、電源制御部14は、保持部18における電子装置20dに対応する領域に、電源の投入中であることを示す電源情報”−>ON”を格納する(図2(l))。
この後、電源制御部14は、電子装置20dの電源の投入が完了した場合、保持部18における電子装置20dに対応する領域に、電源の投入状態を示す電源情報”ON”を格納する(図2(m))。そして、電子装置群22aに電子装置20dを追加する処理が完了する。図2に示す動作では、管理装置10は、端末装置からの電子装置20dの追加の指示に基づいて、電子装置20dを電子装置群22aに追加し、電源の状態を一致させる制御を実行する。すなわち、管理装置10により、端末装置を操作するオペレータの負担を増加させることなく、電子装置群22aに電子装置20dを追加することができる。
なお、電子装置群22aに含まれる全ての電子装置20の電源が遷移中でない場合に、電子装置群22aに新たな電子装置20を追加する指示を受信した場合の動作は、図2(i)以降の動作と同様である。図2(i)以降の動作は、電子装置群22aに含まれる全ての電子装置20の電源が投入状態(”ON”)である場合に、電子装置群22aに新たな電子装置20を追加する指示を受信した場合の動作を示す。電子装置群22aに含まれる全ての電子装置20の電源が遮断状態(”OFF”)である場合に、電子装置群22aに新たな電子装置20を追加する指示を受信した場合の動作は、図2(i)、(j)、(k)のタイミングに示す動作と同様である。但し、電子装置20a、20b、20cの電源は、遮断状態(”OFF”)に設定される。
図3は、図1に示す情報処理システム100の動作の別の例を示す。図2と同一または同様の動作については、詳細な説明は省略する。図3に示す符号(a)から符号(h)までの動作は、図2に示す符号(a)から符号(h)までの動作と同じである。
図3では、管理装置10は、電子装置群22aに電子装置20dを追加する指示を受信後、電子装置20dが電子装置群22aに追加される前に、電子装置20aの電源を遮断する指示を受信する(図3(i))。管理装置10の電源制御部14は、電子装置20aの電源の遮断の指示に基づいて、電子装置20aが属する電子装置群22aに含まれる全ての電子装置20a、20b、20cに電源の遮断を指示する。
各電子装置20a、20b、20cは、電源の遮断の指示に基づいて、電源を遮断する処理を開始する(図3(j))。電源制御部14は、各電子装置20a、20b、20cの電源の遮断が完了するまで、保持部18における各電子装置20a、20b、20cに対応する領域に、電源情報”−>OFF”を保持させる(図3(k))。
この後、電源制御部14は、電子装置20a、20b、20cの各々の電源の遮断を検出する毎に、保持部18における各電子装置20a、20b、20cに対応する領域に、電源の遮断状態を示す電源情報”OFF”を格納する(図3(l))。
次に、割り当て制御部12は、保持部18を参照し、電子装置群22aに含まれる電子装置20a、20b、20cに電源の遮断を連動させる処理が完了したことを検出したことに基づいて、保持部16に電子装置20dの装置情報を格納する(図3(m))。すなわち、電子装置群22aに電子装置20dが追加される(図3(n))。
また、割り当て制御部12は、電子装置20dの装置情報を追加した保持部16の情報を電源制御部14に通知する。電源制御部14は、割り当て制御部12からの通知に基づいて、電子装置20dの電源の状態を格納する領域を保持部18に確保し、確保した領域に電子装置20dの現在の電源の状態である遮断状態”OFF”を格納する(図3(o))。
次に、割り当て制御部12は、保持部18を参照し、電子装置群22aにおいて、電子装置20a、20b、20cの電源の状態(”OFF”)と、新たに追加した電子装置20dの電源の状態(”OFF”)が一致することを検出する。そして、電子装置群22aに電子装置20dを追加する処理が完了する。これにより、電子装置群22aに電子装置20dを追加する処理を実行中に、電源を遮断する指示を受信した場合にも、電子装置群22aに含まれる全ての電子装置20a、20b、20c、20dの電源の状態を一致させることができる。
以上、図1から図3に示す実施形態では、管理装置10は、電子装置群22に電子装置20を追加する指示を、電子装置群22に含まれる電子装置20の電源の遷移中に受信した場合にも、電源の遷移の完了を待って電子装置20を追加できる。すなわち、管理装置10は、電子装置群22に電子装置20を追加する指示の発生タイミングに依らず、電子装置群22に電子装置20を追加する処理を実行できる。この際、管理装置10は、情報処理システム100を使用するオペレータから電源の状態を変更する指示を受信することなく、電子装置群22に含まれる電子装置20の電源の状態を一致させることができる。換言すれば、電子装置群22に含まれる電子装置20の電源の遷移中に受信する指示に基づいて、電子装置20を電子装置群22に追加し、電子装置群22に含まれる電子装置20の電源の状態を一致させることができる。
オペレータは、電子装置群22に含まれる電子装置20の電源が遷移中か否かに拘わりなく、電子装置群22に電子装置20を追加する指示を情報処理システム100に発行できる。任意のタイミングで、電子装置群22に電子装置20を追加する指示を情報処理システムに発行できるため、オペレータの負担を従来に比べて軽減することができる。例えば、オペレータは、電子装置群22に電子装置20を追加する場合、電子装置群22aに含まれる他の電子装置20の電源の状態を検出しなくてよい。
さらに、電子装置群22に電子装置20を追加する処理は、管理装置10により自動的に実行されるため、電源の遷移を連動させる電子装置20の数が増加しても、オペレータの負担が増加することを抑止することができる。
図4は、情報処理システム、管理装置、情報処理システムの制御方法の別の実施形態を示す。図1に示す要素と同様の要素については、詳細な説明は省略する。図4に示す情報処理システム102は、複数のサーバSV(SV1、SV2、...)、複数のストレージSTG(STG1、STG2、...)および管理サーバMSVを有する。サーバSVは、情報処理装置の一例である。サーバSVの例は、図5に示される。ストレージSTGは、HDD(Hard Disk Drive)またはSSD(Solid State Drive)等の記憶装置を含み、サーバSVが実行するプログラムおよびサーバSVが処理するデータ等を記憶する。以下の説明では、サーバSVおよびストレージSTGは、ノードとも称される。管理サーバMSVは、情報処理システム102の全体の動作を制御する。
また、情報処理システム102は、サーバSV、ストレージSTG、管理サーバMSVおよびインターネットまたはイントラネット等のネットワークNWを相互に接続する複数のネットワークスイッチSWを有する。ネットワークスイッチSWは、LAN(Local Area Network)等のネットワーク上に配置される。情報処理システム102は、ネットワークNWを介して複数の端末装置TMに接続される。なお、情報処理システム102は、ネットワークNWを介さずに複数の端末装置TMに接続されてもよい。例えば、端末装置TMは、情報処理システム102を使用するオペレータにより操作される。
図4では、サーバSV1、SV5およびストレージSTG1は、グループGrAに割り当てられ、サーバSV2、SV6は、グループGrBに割り当てられ、サーバSV3、SV7およびストレージSTG3はグループGrCに割り当てられる。各グループGr(GrA、GrB、GrC)は、電源の投入または遮断が連動して実行される単位であり、少なくとも1つのサーバSVを含む。なお、各グループGr(GrA、GrB、GrC)に割り当てられるサーバSVおよびストレージSTGは、図4に示す例に限定されない。
サーバSV1−SV8およびストレージSTG1−STG8は、電子装置の一例である。グループGrA、GrB、GrCの各々は、電子装置を含む電子装置群の一例である。サーバSV1、SV5およびストレージSTG1は、グループGrAに含まれる第1の電子装置の一例であり、サーバSV2、SV6は、グループGrBに含まれる第1の電子装置の一例である。また、サーバSV3、SV7およびストレージSTG3は、グループGrCに含まれる第1の電子装置の一例である。なお、情報処理システム102は、ストレージSTG以外の他の入出力装置を有してもよい。
各サーバSVは、端末装置TMから指示に基づいて情報処理を実行する。各サーバSVは、電源の投入または遮断のいずれかである電源の遷移の連動を管理する管理装置MD(MD1、MD2、...)を有する。なお、各グループGrにおいて、サーバSVのいずれか1つであるマスタノードの管理装置MDのみが電源の遷移の連動を管理する。マスタノード以外のサーバSVは、電源の遷移の連動を管理しないが、マスタノードに指定された場合、管理装置MDを動作させて電源の遷移の連動を管理する。
図5は、図4に示すサーバSVの一例を示す。サーバSVは、CPU(Central Processing Unit)、メモリMEM、HDD、フラッシュメモリ等の書き替え可能な不揮発性メモリNVM、システムコントローラCTRL、通信インタフェース部CIFおよび電源部PSを有する。
CPUは、メモリMEMに格納されたOS(Operating System)およびアプリケーションプログラムを実行することで、情報処理を実行する。CPUは、情報処理を実行する情報処理部の一例である。メモリMEMは、例えば、複数のSDRAM(Synchronous Dynamic Random Access Memory)等の記憶装置を含むメモリモジュールであり、メモリバスを介してCPUに接続される。HDDには、メモリMEMに転送されるOSおよびアプリケーションプログラム等が格納される。
システムコントローラCTRLは、不揮発性メモリNVMに保持された制御プログラム(ファームウェア)を実行することで、CPU、メモリMEM、電源部PSおよび図示しないファン等の動作を管理する。また、システムコントローラCTRLは、管理装置MDとして機能し、図4に示したグループGr毎に、グループGrに含まれる複数のノードの電源の遷移の連動を管理する。管理装置MDの機能は、システムコントローラCTRLと不揮発性メモリNVMとにより実現される。なお、システムコントローラCTRLは、例えば、XSCF(eXtended System Control Facility)の機能を有する。管理装置MDを各サーバSVに設けることで、どのサーバSVがグループGrに割り当てられても、グループGrに含まれるノードの電源の遷移の連動を、グループGrに含まれるサーバSVのいずれかの管理装置MDにより管理することができる。
例えば、システムコントローラCTRLは、外部電源を受ける電源部PSに電源制御信号PWCNTを出力し、電源部PSからCPU、HDD、メモリMEM等への電源の供給を制御する。図4において、太い実線で示す電源線には、電源部PSから電源PS1(すなわち、電源電圧)が供給される。電源部PSは、システムコントローラCTRLによる制御に基づいて、電源PS1を供給または停止する機能を有する。太い破線で示す電源線には、電源部PSから電源PS2(すなわち、電源電圧)が常に供給される。すなわち、システムコントローラCTRL、不揮発性メモリNVMおよび通信インタフェース部CIFには、電源部PSに外部電源が供給される間、電源制御信号PWCNTに拘わりなく電源PS2が供給される。
通信インタフェース部CIFは、ネットワークスイッチSWを介して接続される端末装置TM、管理サーバMSV、他のサーバSVおよびストレージSTGとの間の通信を制御する。例えば、他のサーバSVおよびストレージSTGへの電源の遷移(投入または遮断)の指示、および他のサーバSVおよびストレージSTGの電源の状態の監視等は、IPMI(Intelligent Platform Management Interface)を使用して実行される。なお、図4に示す管理サーバMSVも、図5と同様の構成を有する。
図6は、図4に示す各グループGrにおいてマスタノードとして動作するサーバSVが有する管理装置MDの機能の一例を示す。例えば、各グループGrにおいて、端末装置TMからグループGrの割り当ての変更の指示、またはグループGrに含まれるノードの電源の遷移の指示を、通信インタフェース部CIFを介して受信したサーバSVがマスタノードとして動作する。なお、図4で説明したように、各サーバSVは、図6に示す管理装置MDの機能を有するが、マスタノード以外のサーバSVは、管理装置MDの機能を停止している。
例えば、端末装置TMは、電源の遷移の連動させるグループGrに含まれるサーバSVいずれかに電源を遷移する指示を送信する。この場合、通信インタフェース部CIFを介して指示を受信したサーバSVは、マスタノードとして動作し、グループGr内のノードの電源を連動して投入する制御を実行し、またはグループGr内のノードの電源を連動して遮断する制御を実行する。
また、端末装置TMは、グループGrに含まれるノードの割り当てを変更する指示を複数のグループGrのいずれかに含まれるサーバSVの1つに送信する。例えば、端末装置TMは、割り当てを変更しないグループGrも含めて、全てのグループGrのノードの割り当てを送信する。この場合、端末装置TMから指示を受信したサーバSVが自グループGr内のマスタノードとして動作し、自グループGrに含まれるノードを追加または削除する制御を実行する。
さらに、ノードの割り当てを変更する指示を端末装置TMから受信したサーバSVは、他の全てのグループGrのサーバSVのいずれかにノードの割り当てを変更する指示を転送する。他のグループGrのサーバSVからノードの割り当てを変更する指示を受信したサーバSVは、自グループGr内のマスタノードとして動作し、自グループGrに含まれるノードを追加または削除する制御を実行する。なお、端末装置TMは、グループGrに含まれるノードの割り当てを変更する指示を、割り当てを変更するグループGr毎に、グループGrのサーバSVの1つに送信してもよい。この場合、端末装置TMから指示を受信したサーバSVが自グループGr内のマスタノードとして動作し、自グループGrに含まれるノードを追加または削除する制御を実行する。
管理装置MDは、指示判断部32、割り当て制御部34、電源連動部36、電源監視部38、マスタグループ設定ファイル42、テンポラリグループ設定ファイル44および電源状態管理ファイル46を有する。電源連動部36および電源監視部38は、電源制御部の一例である。指示判断部32、割り当て制御部34、電源連動部36および電源監視部38は、システムコントローラCTRLのハードウェアにより実現されてもよく、システムコントローラCTRLが実行する制御プログラムにより実現されてもよい。
マスタグループ設定ファイル42、テンポラリグループ設定ファイル44および電源状態管理ファイル46は、不揮発性メモリNVM(図5)またはシステムコントローラCTRLが有する図示しない内蔵RAM(Random Access Memory)等に割り当てられる。マスタグループ設定ファイル42、テンポラリグループ設定ファイル44および電源状態管理ファイル46の例は、図7に示される。
指示判断部32は、通信インタフェース部CIFを介して端末装置TMまたは他のマスタノードから受信する指示の内容を判断する。指示判断部32は、複数のグループGrの少なくともいずれかに対してノードの割り当てを変更する指示を受信した場合、受信した指示を割り当て制御部34に出力する。指示判断部32は、自グループGrに含まれるノードの電源の投入または遮断を連動させる指示を受信した場合、受信した指示を電源連動部36に出力する。
割り当て制御部34は、指示判断部32から受信する指示に基づいて、ノードの割り当てを変更するために、以下の処理を実行する。割り当て制御部34は、受信した指示に含まれるノードの割り当てを示す情報を、テンポラリグループ設定ファイル44に格納する。ノードの割り当てを変更する指示が端末装置TMから送信された場合、割り当て制御部34は、受信した指示を、他のグループGrのサーバSVのいずれか(すなわち、マスタノード)に送信する。
割り当て制御部34は、自グループGr内のノードの割り当てを変更する指示を受信した場合、電源状態管理ファイル46を参照し、自グループGrに含まれるノードの電源の状態を検出する。割り当て制御部34は、自グループGrに含まれるノードの電源が遷移中でない場合、マスタグループ設定ファイル42が保持する自グループGrの装置情報を、テンポラリグループ設定ファイル44が保持する自グループGrの装置情報に置き換える。
割り当て制御部34は、マスタグループ設定ファイル42に新たに保持した自グループGrの装置情報に合わせて、電源状態管理ファイル46を更新し、自グループGr内のノードの電源の状態を一致させる指示を電源連動部36に出力する。また、割り当て制御部34は、置き換え後のマスタグループ設定ファイル42が保持する自グループGrの装置情報を、他のグループGrのマスタノードに送信する。さらに、割り当て制御部34は、自グループGrに対応するテンポラリグループ設定ファイル44の領域に保持された装置情報を削除する。さらに、割り当て制御部34は、他のグループGrのテンポラリグループ設定ファイル44の領域に保持された自グループGrの装置情報を削除する指示を他のグループGrのマスタノードに送信する。
一方、割り当て制御部34は、他のグループGrのマスタノードが保持するテンポラリグループ設定ファイル44の装置情報を受信した場合、受信した装置情報をテンポラリグループ設定ファイル44に格納する。割り当て制御部34は、他のグループのマスタグループ設定ファイル42を他のグループGrのマスタノードから受信した場合、マスタグループ設定ファイル42が保持する他のグループGrの装置情報を、受信した装置情報に置き換える。さらに、割り当て制御部34は、テンポラリグループ設定ファイル44に保持された装置情報を削除する指示を他のグループGrから受信した場合、指示したグループGrに対応するテンポラリグループ設定ファイル44の領域に保持された装置情報を削除する。
なお、グループGrのいずれにも属さないサーバSVがノードの割り当てを変更する指示を受信した場合、指示を受信したサーバSVは、新たなグループGrを作成する。しかし、以下では、新たなグループの作成については説明は省略し、グループGrが既に作成されているものとして説明する。
電源連動部36は、自グループGrに含まれるノードの電源の投入または遮断を連動しさせる指示を指示判断部32から受信した場合、電源状態管理ファイル46に保持された自グループGrの電源の状態を示す領域に、電源の遷移中を示す電源情報を格納する。また、電源連動部36は、電源状態管理ファイル46に保持された自グループ内の各ノードの電源の状態を示す領域のうち、電源を遷移させるノードの電源の状態を示す領域に、電源の遷移中を示す電源情報を格納する。電源連動部36は、マスタグループ設定ファイル42を参照することで、電源を遷移させるノードを検出し、検出したノードに電源の状態を遷移させる指示を出力する。
また、電源連動部36は、自グループGr内の各ノードに電源の状態に合わせて、電源状態管理ファイル46の内容を更新する。電源連動部36は、自グループGrに含まれる複数のノードの電源の状態が一致しない場合、電源状態管理ファイル46に保持された自グループGrの電源の状態を示す領域に、電源の遷移中を示す電源情報を格納する。そして、電源連動部36は、自グループGrに含まれるノードの電源の状態を一致させる制御を実行する。例えば、電源連動部36は、自グループGrに新たに追加されたノードの電源の状態を、自グループGrに含まれる他のノードの電源の状態に合わせる制御を実行する。そして、自グループGrに含まれる複数のノードの電源の状態が一致した場合、電源状態管理ファイル46に保持された自グループGrの電源の状態を示す領域に、電源の状態の一致を示す電源情報を格納する。
電源監視部38は、マスタグループ設定ファイル42を参照することで、自グループGrに含まれるノードを検出し、自グループGrに含まれるノードの電源の状態を監視する。また、電源監視部38は、電源連動部36からの指示に基づいて、自グループGrに含まれるノードの電源の状態を監視する。例えば、電源監視部38は、電源状態管理ファイル46を参照し、自グループGrに含まれるノードのうち、電源が遮断状態から投入状態に遷移中のノード、または電源が投入状態から遮断状態に遷移中のノードを検出する。そして、電源監視部38は、検出したノードの電源の遷移が完了した場合、電源状態管理ファイル46における該当ノードに対応する領域を、遷移中を示す電源情報から投入状態または遮断状態を示す電源情報に変更する。電源監視部38は、各ノードの電源の状態を各ノードからの通知に基づいて検出してもよく、各ノードの電源の状態をポーリング等の手法により検出してもよい。
図7は、図6に示すマスタグループ設定ファイル42、テンポラリグループ設定ファイル44および電源状態管理ファイル46の一例を示す。マスタグループ設定ファイル42が保持する装置情報は、全てのマスタノードで同じであり、テンポラリグループ設定ファイル44が保持する装置情報は、全てのマスタノードで同じである。電源状態管理ファイル46は、各グループGrA、GrB、GrCのマスタノードにそれぞれ設けられる。
マスタグループ設定ファイル42は、情報処理システム102に割り当てられたグループGr毎に、グループGrに属するノードを識別する装置情報を保持する。図7では、ノードを識別する装置情報は、サーバSVの符号およびストレージSTGの符号で示される。図7に示すマスタグループ設定ファイル42は、図4に示す情報処理システム102に割り当てられたグループGrA、GrB、GrCの状態を示す。マスタグループ設定ファイル42は、第1の保持部の一例である。
テンポラリグループ設定ファイル44は、端末装置TMから受信したノードの割り当てを変更する指示に含まれる装置情報を、情報処理システム102に割り当てられたグループGr毎に保持する。テンポラリグループ設定ファイル44は、第4の保持部の一例である。テンポラリグループ設定ファイル44が保持する装置情報は、例えば、図4に示す端末装置TMからグループGr(GrA、GrB、GrC)のいずれかのマスタノードに送信される。
各マスタノードにテンポラリグループ設定ファイル44を設けることで、端末装置TMから受信したノードの割り当てを変更する指示に基づいて、マスタグループ設定ファイル42が直接書き換えられることを抑止することができる。換言すれば、マスタグループ設定ファイル42が保持する自グループGrの装置情報が、電源状態管理ファイル46が保持するノードの情報と矛盾することを抑止でき、ノードの電源を遷移させる制御を正しく実行することができる。テンポラリグループ設定ファイル44に保持させる装置情報を受信したマスタノードは、受信した装置情報を他のグループGrのマスタノードに転送する。これにより、端末装置TMは、複数のグループGrの各々に割り当ての変更の指示を送信することなく、各グループGrのテンポラリグループ設定ファイル44に装置情報を設定することができる。
図7に示すテンポラリグループ設定ファイル44は、マスタグループ設定ファイル42に保持された装置情報に対して、グループGrAからストレージSTG1が削除され、グループGrCにストレージSTG1が追加されることを示す。すなわち、図7は、情報処理システム102が、グループGr1に割り当てられたストレージSTG1をグループGrCに移動する指示を端末装置TMから受信したことを示す。なお、グループGrに割り当てられるノードを変更する例は、図7に限定されない。例えば、情報処理システム102は、1つのグループGrに対するノードの追加と削除の指示を端末装置TMから受信してもよく、グループGrを新たに設ける指示、またはグループGrを削除する指示を端末装置TMから受信してもよい。
電源状態管理ファイル46は、グループGrに割り当てられたノード毎に電源の状態を示すノードステータスNSTを保持する領域と、グループGrの電源の状態を示すグループステータスGSTを保持する領域とを有する。ノードステータスNSTは、第1の電源情報の一例であり、グループステータスGSTは、第2の電源情報の一例である。ノードステータスNSTを保持する領域は、第2の保持部の一例であり、グループステータスGSTを保持する領域は、第3の保持部の一例である。
図7に示すグループGrAの電源状態管理ファイル46のノードステータスNSTは、サーバSV1、SV5およびストレージSTG1の電源が投入状態であることを示す電源情報”ON”を保持する。グループGrAの電源状態管理ファイル46のグループステータスGSTは、グループGrA内の全てのノード(SV1、SV5、STG1)の電源の遷移が完了していることを示す電源情報”STDY”を保持する。グループGrBの電源状態管理ファイル46のノードステータスNSTは、サーバSV2、SV6の電源が投入状態であることを示す電源情報”ON”を保持する。グループGrBの電源状態管理ファイル46のグループステータスGSTは、グループGrB内の全てのノード(SV2、SV6)の電源の遷移が完了していることを示す電源情報”STDY”を保持する。
グループGrCの電源状態管理ファイル46のノードステータスNSTは、サーバSV3、SV7の電源の遮断状態(”OFF”)と、ストレージSTG3の電源の遮断状態への遷移中(”−>OFF”)とを示す情報を保持する。グループGrCの電源状態管理ファイル46のグループステータスGSTは、グループGrC内のノード(SV3、SV7、STG3)の少なくともいずれかの電源が遷移中であることを示す電源情報”TRNS”を保持する。すなわち、グループステータスGSTは、グループGrに含まれるノードの少なくともいずれかの電源が投入状態から遮断状態に遷移中の場合、または、遮断状態から投入状態に遷移中の場合、電源情報”TRNS”を保持する。
なお、マスタグループ設定ファイル42およびテンポラリグループ設定ファイル44は、情報処理システム102に含まれる全てのサーバSVの管理装置MDが有してもよい。この場合、マスタグループ設定ファイル42を更新したマスタノードは、他の全てのサーバSVの管理装置MDにマスタグループ設定ファイル42の更新を指示する。また、テンポラリグループ設定ファイル44を更新したマスタノードは、他の全てのサーバSVの管理装置MDにテンポラリグループ設定ファイル44の更新を指示する。
また、各グループGrのマスタノードは、自グループGrに含まれるノードの装置情報のみを保持するテンポラリグループ設定ファイル44およびマスタグループ設定ファイル42を有してもよい。この場合、端末装置TM(図4)は、グループGrに含まれるノードの割り当てを変更する指示を、変更対象のグループGrのそれぞれに送信する。指示を受信したグループGrは、ノードの割り当てを変更する動作を他のグループGrと連携することなく実行する。なお、ノードの割り当てを変更する動作を他のグループGrと連携する動作は、図8から図11に示される。
図8は、図4に示す情報処理システム102におけるグループGrAのサーバSV1の動作の一例を示す。すなわち、図8は、情報処理システム102の制御方法の一例を示す。サーバSV1は、グループGrAのマスタノードとして動作し、サーバSV1の管理装置MDにより図8に示す動作が実行される。図8に示す太枠は、状態が前の状態から変化した要素を示す。
状態(A)において、サーバSV1の管理装置MDが有する割り当て制御部34は、端末装置TM(図4)からノードの割り当てを変更する指示を受信し、受信した指示に含まれる装置情報をテンポラリグループ設定ファイル44に格納する(図8(a))。また、割り当て制御部34は、端末装置TMから受信したノードの割り当てを変更する指示を、他のグループGrB、GrCのマスタノードに送信する(図8(b))。
これにより、端末装置TMは、ノードの割り当てを変更する指示を複数のグループGrの各々に送信することなく、各グループGrのマスタノードに指示を転送し、テンポラリグループ設定ファイル44に装置情報を格納させることができる。したがって、各グループGrは、グループGrのいずれかで受信したノードの割り当てを変更する指示に基づいて、ノードの割り当てを変更することができる。図8に示す状態(A)は、図7に示すグループGrAの状態と同じである。割り当て制御部34は、電源状態管理ファイル46のグループステータスGSTを参照し、グループGrAに含まれるノード(SV1、SV5、STG1)の電源の遷移が完了していること(”STDY”)を検出する。
状態(B)において、グループGrAの電源の遷移が完了しているため、割り当て制御部34は、テンポラリグループ設定ファイル44が保持するグループGrAの装置情報をマスタグループ設定ファイル42に格納する(図8(c))。すなわち、ストレージSTG1がグループGrAから削除される。
このように、割り当て制御部34は、グループステータスGSTを参照することで、各ノードのノードステータスNSTを参照することなく、グループGrAに含まれる全てのノードの電源の遷移が完了し、電源が安定状態であることを検出できる。これにより、ノードステータスNSTを参照する場合に比べて、グループGrAの電源の状態を検出するまでの時間を短縮することができる。
割り当て制御部34は、マスタグループ設定ファイル42に保持したグループGrAの装置情報を、他のグループGrB、GrCのマスタノードに送信する(図8(d))。また、割り当て制御部34は、マスタグループ設定ファイル42に保持したグループGrAの装置情報に合わせて、電源状態管理ファイル46を更新する(図8(e))。なお、グループGrからノードが削除される場合、ノードを削除後のグループ内のノードの電源の状態は”STDY”のまま変化しない。
次に、状態(C)において、割り当て制御部34は、テンポラリグループ設定ファイル44のグループGrAに対応する領域に保持された装置情報を削除する(図8(f))。また、割り当て制御部34は、グループGrB、GrCのマスタノードに、グループGrB、GrCのテンポラリグループ設定ファイル44の領域に保持されたグループGrAの装置情報の削除を指示する(図8(g))。
状態(D)において、割り当て制御部34は、グループGrBのマスタノードのマスタグループ設定ファイル42に保持された装置情報を受信した場合、マスタグループ設定ファイル42が保持するグループGrBの装置情報を、受信した装置情報に置き換える。また、割り当て制御部34は、グループGrCのマスタノードのマスタグループ設定ファイル42に保持された装置情報を受信した場合、マスタグループ設定ファイル42が保持するグループGrCの装置情報を、受信した装置情報に置き換える。(図8(h))。
さらに、割り当て制御部34は、グループGrBからテンポラリグループ設定ファイル44に保持された装置情報の削除の指示を受信した場合、テンポラリグループ設定ファイル44のグループGrBに対応する領域に保持された装置情報を削除する。また、サーバSV1は、グループGrCからテンポラリグループ設定ファイル44に保持された装置情報の削除の指示を受信した場合、テンポラリグループ設定ファイル44のグループGrCに対応する領域に保持された装置情報を削除する(図8(i))。
なお、状態(D)に示す動作は、状態(A)と状態(B)の間に実行されてもよく、状態(B)と状態(C)の間に実行されてもよい。また、端末装置TMが、ノードの割り当てを変更する指示をグループGr毎に送信する場合、テンポラリグループ設定ファイル44およびマスタグループ設定ファイル42は、自グループGrAに含まれるノードの装置情報のみを保持する。この場合、図8(b)、(d)、(g)、(h)、(i)に示す動作は実行されない。
図9は、図4に示す情報処理システム102におけるグループGrBのサーバSV2の動作の一例を示す。すなわち、図9は、情報処理システム102の制御方法の一例を示す。サーバSV2は、グループGrBのマスタノードとして動作し、サーバSV2の管理装置MDにより図9に示す動作が実行される。
状態(A)において、サーバSV2の管理装置MDが有する割り当て制御部34は、グループGrAのマスタノードであるサーバSV1からノードの割り当ての変更の指示を受信する。割り当て制御部34は、受信した指示に含まれる装置情報を自ノードのテンポラリグループ設定ファイル44に格納する(図9(a))。すなわち、グループGrBの割り当て制御部34は、ノードの割り当てを変更する指示を端末装置TMから受信することなく、テンポラリグループ設定ファイル44に装置情報を格納することができる。図9に示す状態(A)は、図7に示すグループGrBの状態と同じである。
次に、状態(B)において、割り当て制御部34は、電源状態管理ファイル46のグループステータスGSTを参照し、グループGrBに含まれるノード(SV2、SV6)の電源の状態を検出する。グループステータスGSTが電源の遷移の完了(”STDY”)を示すため、割り当て制御部34は、テンポラリグループ設定ファイル44が保持するグループGrBの装置情報をマスタグループ設定ファイル42に格納する(図9(b))。図9に示す例では、テンポラリグループ設定ファイル44が保持するグループGrBの装置情報は、マスタグループ設定ファイル42が保持するグループGrBの装置情報と同じであるため、マスタグループ設定ファイル42が保持する装置情報は変化しない。
割り当て制御部34は、マスタグループ設定ファイル42に保持したグループGrBの装置情報を、他のグループGrA、GrCのマスタノードに送信する(図9(c))。また、割り当て制御部34は、マスタグループ設定ファイル42に保持したグループGrBの装置情報に合わせて、電源状態管理ファイル46を更新する(図9(d))。
次に、状態(C)において、割り当て制御部34は、テンポラリグループ設定ファイル44のグループGrBに対応する領域に保持された装置情報を削除する(図9(e))。また、割り当て制御部34は、グループGrA、GrCのマスタノードに、グループGrA、GrCのテンポラリグループ設定ファイル44の領域に保持されたグループGrBの装置情報の削除を指示する(図9(f))。
状態(D)において、割り当て制御部34は、グループGrAのマスタノードのマスタグループ設定ファイル42に保持された装置情報を受信した場合、マスタグループ設定ファイル42が保持するグループGrAの装置情報を、受信した装置情報に置き換える。また、割り当て制御部34は、グループGrCのマスタノードのマスタグループ設定ファイル42に保持された装置情報を受信した場合、マスタグループ設定ファイル42が保持するグループGrCの装置情報を、受信した装置情報に置き換える。(図9(g))。
割り当て制御部34は、グループGrAからテンポラリグループ設定ファイル44に保持された装置情報の削除の指示を受信した場合、テンポラリグループ設定ファイル44のグループGrAに対応する領域に保持された装置情報を削除する。また、サーバSV1は、グループGrCからテンポラリグループ設定ファイル44に保持された装置情報の削除の指示を受信した場合、テンポラリグループ設定ファイル44のグループGrCに対応する領域に保持された装置情報を削除する(図9(h))。
なお、状態(D)に示す動作は、状態(A)と状態(B)の間に実行されてもよく、状態(B)と状態(C)の間に実行されてもよい。また、端末装置TMが、ノードの割り当てを変更する指示をグループGr毎に送信する場合、テンポラリグループ設定ファイル44およびマスタグループ設定ファイル42は、自グループGrBに含まれるノードの装置情報のみを保持する。この場合、図9(a)の動作は、端末装置TMからノードの割り当てを変更する指示を受信する動作を示し、図9(c)、(f)、(g)、(h)に示す動作は実行されない。
図10および図11は、図4に示す情報処理システム102におけるグループGrCのサーバSV3の動作の一例を示す。すなわち、図10および図11は、情報処理システム102の制御方法の一例を示す。サーバSV3は、グループGrCのマスタノードとして動作し、サーバSV3の管理装置MDにより図10および図11に示す動作が実行される。
状態(A)において、サーバSV3の管理装置MDが有する割り当て制御部34は、グループGrAのマスタノードであるサーバSV1からノードの割り当ての変更の指示を受信する。割り当て制御部34は、受信した指示に含まれる装置情報を自ノードのテンポラリグループ設定ファイル44に格納する(図10(a))。図10に示す状態(A)は、図7に示すグループGrCの状態と同じである。
次に、状態(B)において、割り当て制御部34は、電源状態管理ファイル46のグループステータスGSTを参照し、グループGrCに含まれるノード(SV3、SV7、STG3)の電源の状態を検出する。グループステータスGSTは、ノードのいずれかの電源の遷移中(”TRNS”)を示す。このため、割り当て制御部34は、テンポラリグループ設定ファイル44が保持するグループGrCの装置情報をマスタグループ設定ファイル42に格納する処理を抑止する(図10(b))。
次に、状態(C)において、サーバSV3の電源監視部38(図6)は、ストレージSTG3の電源が、投入状態から遮断状態に遷移したことを検出する。そして、電源監視部38は、電源状態管理ファイル46のノードSTG3に対応するノードステータスNSTを電源情報”OFF”に設定する(図10(c))。電源状態管理ファイル46のノードステータスNSTは、グループGrCに含まれる全てのノード(SV3、SV7、STG3)の電源の遮断状態を示す。このため、電源監視部38は、グループステータスGSTを、電源の遷移の完了を示す電源情報”STDY”に設定する(図10(d))。
次に、状態(D)において、割り当て制御部34は、電源状態管理ファイル46のグループステータスGSTを参照し、グループGrCに含まれるノード(SV3、SV7、STG3)の電源の状態を検出する。グループステータスGSTは、電源の遷移の完了(”STDY”)を示す。このため、割り当て制御部34は、マスタグループ設定ファイル42が保持するグループGrCの装置情報を、テンポラリグループ設定ファイル44が保持するグループGrCの装置情報に置き換える(図10(e))。すなわち、ストレージSTG1がグループGrCに追加される。電源の遷移の完了を待って、マスタグループ設定ファイル42が保持する装置情報を更新することで、電源状態管理ファイル46が保持するノードの情報と、マスタグループ設定ファイル42が保持する装置情報とを一致させることができる。これにより、割り当て制御部34は、例えば、新たに追加されたストレージSTG1の電源の状態を、電源状態管理ファイル46に保持されたノードのいずれかの電源の状態と比較することで、電源の状態が一致するか否かを検出することができる。
割り当て制御部34は、マスタグループ設定ファイル42に保持したグループGrCの装置情報を、他のグループGrA、GrBのマスタノードに送信する(図10(f))。また、割り当て制御部34は、マスタグループ設定ファイル42に保持したグループGrCの装置情報に合わせて、ノード(STG1)を示す情報を電源状態管理ファイル46に追加する(図10(g))。例えば、ノード(STG1)を示す情報が電源状態管理ファイル46に追加されたとき、ノード(STG1)の電源の状態を示すノードステータスNSTは設定されておらず、不定である(図10(h))。このため、割り当て制御部34は、追加したノード(STG1)の電源の状態を、自グループ内の他のノードの電源の状態と一致させる指示を電源連動部36(図6)に指示する。電源連動部36は、割り当て制御部34から指示に基づいて、ストレージSTG1に電源の状態を問い合わせる。
次に、図11に示す状態(E)において、電源連動部36は、ストレージSTG1から出力される電源の投入状態を示す情報を受信する。電源連動部36は、受信した情報に基づいて、ノード(STG1)に対応するノードステータスNSTに電源情報”ON”を設定する(図11(a))。電源連動部36は、ノードステータスNSTに電源情報”ON”、”OFF”とが混在するため、グループGrC内のノードの少なくともいずれかの電源が遷移中であることを示す電源情報”TRNS”をグループステータスGSTに設定する(図11(b))。
状態(F)において、電源連動部36は、グループGrCに新たに追加されたストレージSTG1の電源の状態を、グループGrC内の他のノードの電源の状態に合わせるため、電源を遮断させる指示をストレージSTG1に送信する。そして、電源連動部36は、ノード(STG1)に対応するノードステータスNSTに、電源の遮断中を示す電源情報”−>OFF”を設定する(図11(c))。
状態(G)において、割り当て制御部34は、グループGrAのマスタノードのマスタグループ設定ファイル42に保持された装置情報を受信した場合、マスタグループ設定ファイル42が保持するグループGrAの装置情報を、受信した装置情報に置き換える。また、割り当て制御部34は、グループGrBのマスタノードのマスタグループ設定ファイル42に保持された装置情報を受信した場合、マスタグループ設定ファイル42が保持するグループGrBの装置情報を、受信した装置情報に置き換える。(図11(d))。
割り当て制御部34は、グループGrAからテンポラリグループ設定ファイル44に保持された装置情報の削除の指示を受信した場合、テンポラリグループ設定ファイル44のグループGrAに対応する領域に保持された装置情報を削除する。また、割り当て制御部34は、グループGrBからテンポラリグループ設定ファイル44に保持された装置情報の削除の指示を受信した場合、テンポラリグループ設定ファイル44のグループGrBに対応する領域に保持された装置情報を削除する(図11(e))。なお、状態(F)に示す動作は、図10に示す状態(A)と状態(B)の間、状態(B)と状態(C)の間、状態(C)と状態(D)の間、または、図10に示す状態(D)と図11に示す状態(A)の間のいずれかに実行されてもよい。あるいは、状態(F)に示す動作は、状態(G)に示す動作の後に実行されてもよい。
割り当て制御部34は、電源状態管理ファイル46のグループステータスGSTを参照し、グループGrCに含まれるノード(SV3、SV7、STG1、STG3)の電源の状態を検出する。グループステータスGSTが、ノードのいずれかの電源の遷移中を示すため(”TRNS”)、割り当て制御部34は、テンポラリグループ設定ファイル44が保持するグループGrCの装置情報を削除する処理を抑止する(図11(f))。
状態(G)において、電源監視部38(図6)は、ストレージSTG1の電源が、投入状態から遮断状態に遷移したことを検出し、電源状態管理ファイル46のノードSTG1に対応するノードステータスNSTを電源情報”OFF”に設定する(図11(g))。また、電源監視部38は、電源状態管理ファイル46のノードステータスNSTが、グループGrCに含まれる全てのノード(SV3、SV7、STG1、STG3)の電源の遮断状態を示すことを検出する。そして、電源監視部38は、グループステータスGSTを、電源の遷移の完了を示す電源情報”STDY”に設定する(図11(h))。
次に、割り当て制御部34は、電源状態管理ファイル46のグループステータスGSTが電源の遷移の完了を示すため、テンポラリグループ設定ファイル44のグループGrCに対応する領域に保持された装置情報を削除する。(図11(i))。また、割り当て制御部34は、グループGrA、GrBのマスタノードに、グループGrA、GrBのテンポラリグループ設定ファイル44の領域に保持されたグループGrCの装置情報の削除を指示する(図11(j))。
なお、端末装置TMが、ノードの割り当てを変更する指示をグループGr毎に送信する場合、テンポラリグループ設定ファイル44およびマスタグループ設定ファイル42は、自グループGrCに含まれるノードの装置情報のみを保持する。この場合、図10(a)の動作は、端末装置TMからノードの割り当てを変更する指示を受信する動作を示し、図10(f)、図11(d)、(e)、(j)に示す動作は実行されない。
図12は、図4に示す情報処理システムにおけるグループGrCのサーバSV3の動作の別の例を示す。すなわち、図12は、情報処理システム102の制御方法の一例を示す。図12に示す状態(A)は、図11に示す状態(H)と同じであり、グループGrCに属する全てのノード(SV3、SV7、STG1、STG3)の電源が遮断されている。
状態(A)において、サーバSV3の管理装置MDは、グループGrCに属する全てのノードの電源を連動して投入させる指示を端末装置(図4)から受信する(図12(a))。
状態(B)において、サーバSV3の電源連動部36は、電源状態管理ファイル46のグループステータスGSTを、グループGr内のノードの電源の遷移中を示す電源情報”TRNS”に設定する(図12(b))。また、電源連動部36は、電源状態管理ファイル46において、電源の遮断状態(”OFF”)を示すノードステータスNSTを、電源の遷移中を示す電源情報”−>ON”に設定する(図12(c))。図12では、全てのノードステータスNSTに電源情報”−>ON”が格納される。そして、電源連動部36は、ノードステータスNSTを電源情報”−>ON”に設定したノードに電源の投入を指示する。また、電源連動部36は、電源の投入を指示したノードの電源の状態が期待値(この例では、投入状態)になるまでノードを監視させる指示を電源監視部38に出力する。
状態(C)において、電源監視部38は、電源の監視を指示されたノードに電源の状態を問い合わせる。図12に示す例では、サーバSV3およびストレージSTG1、STG3から電源の投入状態(”ON”)を示す応答を受信し、サーバSV7から電源の遮断状態(”OFF”)を示す応答を受信する。電源監視部38は、ノードステータスNSTにおいて、投入状態(”ON”)を示す応答の送信元のサーバSV3およびストレージSTG1、STG3に対応する領域に電源情報”ON”を格納する(図12(d))。
状態(D)において、電源監視部38は、電源の監視を指示されたノードのうち、電源の状態が期待値である投入状態になっていないサーバSV7に電源の状態を問い合わせる。電源監視部38は、サーバSV7から電源の投入状態を示す応答を受信し、ノードステータスNSTにおいてサーバSV7に対応する領域に電源情報”ON”を格納する(図12(e))。電源監視部38は、グループGrC内の全てのノードに対応するノードステータスNSTが同じ電源情報”ON”を保持する場合、電源の遷移の完了を示す電源情報”STDY”をグループステータスGSTに格納する(図12(f))。なお、電源の状態が電源連動部36から指示された期待値と異なるノードが存在する場合、電源監視部38は、電源の状態が期待値になるまで、期待値と異なるノードに電源の状態を繰り返し問い合わせる。
図13は、図6においてマスタノードとして動作するサーバSVの管理装置MDの動作の一例を示す。すなわち、図13は、情報処理システム102の制御方法の一例を示す。図13に示す動作は、所定の周期で繰り返し実行される。
まず、ステップS10において、システムコントローラCTRLの指示判断部32は、端末装置TMからの指示、または他のグループGrのマスタノードからの指示を受信したか否かを判定する。指示判断部32は、指示を受信した場合、処理をステップS12に移行し、指示を受信していない場合、受信した指示を割り当て制御部34に転送し、処理を図15に示すステップS60に移行する。
ステップS12において、指示判断部32は、受信した指示がグループGrに含まれる複数のノードの電源の投入または遮断を連動させる指示か否かを判定する。電源の投入または遮断を連動させる指示の場合、指示判断部32は、受信した指示を電源連動部36に転送し、処理をステップS14に移行する。電源の投入または遮断を連動させる指示でない場合、指示判断部32は、処理を図14に示すステップS30に移行する。
ステップS14において、システムコントローラCTRLの電源連動部36は、電源状態管理ファイル46のグループステータスGSTを、グループGr内のノードの電源の遷移中を示す電源情報”TRNS”に設定する。次に、ステップS16において、電源連動部36は、電源状態管理ファイル46において、ノードのいずれかのノードステータスNSTを、電源の遷移中を示す電源情報”−>ON”または電源情報”−>OFF”に設定する。
ここで、端末装置TMから電源の投入を連動させる指示を受信した場合、電源連動部36は、電源情報”OFF”または電源情報”−>OFF”が設定されたノードステータスNSTのいずれかに電源情報”−>ON”を格納する。一方、端末装置TMから電源の投入を連動させる指示を受信した場合、電源連動部36は、電源情報”ON”または電源情報”−>ON”が設定されたノードステータスNSTのいずれかに電源情報”−>OFF”を格納する。すなわち、電源連動部36は、電源の状態を遷移させるノードに対応するノードステータスNSTに電源情報”−>ON”または電源情報”−>OFF”を設定する。電源が既に遷移後の状態にあるノードに対応するノードステータスNST(”ON”または”OFF”)の設定は変更されない。
次に、ステップS18において、電源連動部36は、各ノードに対応するノードステータスNSTのうち、電源の遷移中(”−>ON”または”−>OFF”)に設定すべきノードステータスNSTがあるか否かを判定する。電源連動部36は、電源の遷移中に設定すべきノードステータスNSTがある場合、処理をステップS16に戻し、電源の遷移中に設定すべきノードステータスNSTがない場合、処理をステップS20に移行する。
例えば、端末装置TMから電源の投入を連動させる指示を受信した場合であって、全てのノードに対応するノードステータスNSTが電源情報”−>ON”または電源情報”ON”である場合、処理はステップS20に移行される。また、端末装置TMから電源の投入を連動させる指示を受信した場合であって、全てのノードに対応するノードステータスNSTが電源情報”−>OFF”または電源情報”OFF”である場合、処理はステップS20に移行される。
ステップS20において、電源連動部36は、マスタグループ設定ファイル42において自グループGrに対応する装置情報を読み出す。電源連動部36は、端末装置TMから電源の投入を連動させる指示を受信した場合、マスタグループ設定ファイル42から読み出した装置情報が示すノードに電源の投入を指示する。また、電源連動部36は、端末装置TMから電源の遮断を連動させる指示を受信した場合、マスタグループ設定ファイル42から読み出した装置情報が示すノードに電源の遮断を指示する。電源連動部36は、ノードへの電源の投入または遮断の指示を、IPMIを使用して実行する。
なお、電源の投入済み、または電源を投入状態に遷移中のノードに、電源の投入の指示が発行された場合、指示を受けたノードは、指示を無視し、動作を継続する。電源の遮断済み、または電源を遮断状態に遷移中のノードに、電源の遮断の指示が発行された場合、指示を受けたノードは、指示を無視し、動作を継続する。次に、ステップS22において、電源連動部36は、電源の投入または遮断を指示したノードの電源の状態を監視する指示を電源監視部38に出力し、処理を終了する。
図14は、図13の動作フローの続きを示す。ステップS32において、指示判断部32は、受信した指示が、グループGrに含まれるノードの割り当てを変更する指示か否かを判定する。ノードの割り当てを変更する指示の場合、指示判断部32は、受信した指示を割り当て制御部34に転送し、処理をステップS34に移行する。ノードの割り当てを変更する指示でない場合、処理は終了する。ステップS34において、割り当て制御部34は、受信したノードの割り当ての指示に含まれる装置情報をテンポラリグループ設定ファイル44に格納する。
なお、グループGrを削除する指示を端末装置TMから受信した場合、割り当て制御部34は、マスタグループ設定ファイル42において自グループGrの装置情報を削除する。また、割り当て制御部34は、他のグループGrのマスタグループ設定ファイル42から自グループGrの装置情報を削除する指示を他のグループGrのマスタノードに送信する。さらに、割り当て制御部34は、電源状態管理ファイル46が保持する装置情報を削除し、処理を終了する。
次に、ステップS34において、割り当て制御部34は、電源状態管理ファイル46のグループステータスGSTを参照し、自グループGrに含まれるノードが電源の遷移中であるか否かを判定する。自グループGrに含まれるノードが電源の遷移中の間、ステップS34の処理が繰り返し実行される。自グループGrに含まれるノードが電源の遷移中でない場合、処理はステップS36に移行される。
ステップS36において、割り当て制御部34は、テンポラリグループ設定ファイル44に設定された装置情報のうち、自グループGrの装置情報をマスタグループ設定ファイル42に格納する。次に、ステップS38において、割り当て制御部34は、他のグループGrのマスタノードに、マスタグループ設定ファイル42に格納した装置情報を送信する。テンポラリグループ設定ファイル44に設定した装置情報を受信した他のグループGrのマスタノードの動作の例は、図15に示される。次に、ステップS40において、割り当て制御部34は、マスタグループ設定ファイル42に格納した自グループGrに対応するノードを示す装置情報を電源状態管理ファイル46に格納する。
次に、ステップS42において、電源連動部36は、電源状態管理ファイル46を参照し、自グループGrに含まれる全てのノードの電源の状態が一致するか否かを判定する。全てのノードの電源の状態が一致する場合、処理はステップS52に移行され、電源の状態が一致しないノードがある場合、処理はステップS44に移行される。
ステップS44において、電源連動部36は、電源の遷移を指示済みの場合、処理をステップS42に戻し、電源の遷移を指示していない場合、処理をステップS46に移行する。ステップS46において、電源連動部36は、電源状態管理ファイル46のグループステータスGSTを、電源の遷移中を示す電源情報”−>ON”または電源情報”−>OFF”に設定する。また、電源連動部36は、電源状態管理ファイル46において、電源を遷移させるノードに対応するノードステータスNSTを、電源の遷移中を示す電源情報”−>ON”または電源情報”−>OFF”に設定する。
次に、ステップS48において、電源連動部36は、電源情報”−>ON”または電源情報”−>OFF”を設定したノードステータスNSTに対応するノードに、電源を遷移させる指示を送信する。次に、ステップS50において、電源連動部36は、電源の遷移を指示したノードの電源の監視を電源監視部38を指示し、処理をステップS42に移行する。電源の監視の指示を受信した電源監視部38の動作の例は、図16に示される。
一方、ステップS52において、割り当て制御部34は、テンポラリグループ設定ファイル44における自グループGrに対応する領域の装置情報を削除する。次に、ステップS54において、割り当て制御部34は、他のグループGrのマスタノードに、テンポラリグループ設定ファイル44における自グループGrに対応する領域に保持された装置情報の削除の指示を送信し、処理を終了する。装置情報の削除の指示を受信した他のグループGrのマスタノードの動作の例は、図15に示される。
図15は、図13の動作フローの続きを示す。ステップS60において、割り当て制御部34は、他のグループGrのいずれかからマスタグループ設定ファイル42に設定する装置情報を受信したか否かを判定する。マスタグループ設定ファイル42に設定する装置情報を受信した場合、処理はステップS62に移行され、マスタグループ設定ファイル42に設定する装置情報を受信していない場合、処理はステップS64に移行される。ステップS62において、割り当て制御部34は、受信した装置情報をマスタグループ設定ファイル42に格納し、処理をステップS64に移行する。
ステップS64において、割り当て制御部34は、他のグループGrのいずれかからテンポラリグループ設定ファイル44に保持された装置情報を削除する指示を受信したか否かを判定する。テンポラリグループ設定ファイル44に保持された装置情報を削除する指示を受信した場合、処理はステップS66に移行され、テンポラリグループ設定ファイル44に保持された装置情報を削除する指示を受信していない場合、処理は終了する。ステップS66において、割り当て制御部34は、テンポラリグループ設定ファイル44において、削除が指示された領域の装置情報を削除し、処理を終了する。
図16は、図6においてマスタノードとして動作するサーバSVの管理装置MDが有する電源監視部38の動作の一例を示す。すなわち、図16は、情報処理システム102の制御方法の一例を示す。図16に示す動作は、所定の周期で繰り返し実行される。
まず、ステップS70において、電源監視部38は、電源の遷移を指示したノードの電源を監視する指示を電源連動部36から受信したか否かを安定する。電源を監視する指示を受信した場合、処理はステップS72に移行され、電源を監視する指示を受信していない場合、処理は終了する。
ステップS72において、電源監視部38は、電源の監視を指示されたノードに電源の状態を問い合わせる。次に、ステップS74において、電源監視部38は、ノードからの応答に含まれる電源の状態を示す情報が期待値か否かを判定する。例えば、図14に示すステップS48において、電源連動部36が電源の投入をノードに指示した場合、期待値は電源の投入状態(”ON”)である。図14に示すステップS48において、電源連動部36が電源の遮断をノードに指示した場合、期待値は電源の遮断状態(”OFF”)である。電源の状態が期待値の場合、処理はステップS76に移行され、電源の状態が期待値でない場合、処理はステップS72に移行される。
ステップS76において、電源監視部38は、電源状態管理ファイル46における電源の監視対象のノードのノードステータスNSTを期待値を示す状態(”ON”または”OFF”)に設定する。次に、ステップS78において、電源監視部38は、電源状態管理ファイル46において、全てのノードに対応するノードステータスNSTが一致したか否かを判定する。ノードステータスNSTが一致する場合、処理はステップS80に移行され、ノードステータスNSTが一致しない場合、処理はステップS72に移行される。ステップS80において、電源監視部38は、電源状態管理ファイル46のグループステータスGSTを、電源の遷移の完了を示す電源情報”STDYに設定し、処理を終了する。
以上、図4から図16に示す実施形態においても、図1から図3に示す実施形態と同様の効果を得ることができる。例えば、管理装置MDは、グループGrに含まれるノードの割り当てを変更する指示を、グループGrに含まれるノードの電源の遷移中に受信した場合にも、電源の遷移の完了を待ってノードの割り当てを変更することができる。この際、管理装置MDは、端末装置TMから電源の状態を変更する指示を受信することなく、グループGrに含まれるノードの電源の状態を一致させることができる。これにより、端末装置TMを操作するオペレータは、グループGrに含まれるノードの電源が遷移中か否かに拘わりなく、グループGrに含まれるノードの割り当てを変更する指示を発行でき、オペレータの負担を従来に比べて軽減することができる。
さらに、図4から図16に示す実施形態では、電源状態管理ファイル46にノードの電源の状態を示すノードステータスNSTを設けることで、割り当て制御部34は、電源状態管理ファイル46を参照することで、各ノードの電源が遷移中であることを判定できる。すなわち、各ノードが、電源の状態の問い合わせに応答して電源の遷移中を示す情報を出力する機能を持たない場合にも、割り当て制御部34は、ノードの電源が遷移中であることを判定できる。また、割り当て制御部34は、グループステータスGSTを参照することで、各ノードのノードステータスNSTを参照することなく、グループGrに含まれる全てのノードの電源の遷移が完了し、電源が安定状態であることを検出できる。これにより、ノードステータスNSTを参照する場合に比べて、グループGrの電源の状態を検出するまでの時間を短縮することができる。
各マスタノードにテンポラリグループ設定ファイル44を設けることで、端末装置TMから受信したノードの割り当てを変更する指示に基づいて、マスタグループ設定ファイル42が直接書き換えられることを抑止することができる。これにより、マスタグループ設定ファイル42が保持する自グループGrの装置情報が、電源状態管理ファイル46が保持するノードの情報と矛盾することを抑止することができ、ノードの電源を遷移させる制御を正しく実行することができる。
管理装置MDを各サーバSVに設けることで、どのサーバSVがグループGrに割り当てられても、グループGrに含まれるノードの電源の遷移の連動を、グループGrに含まれるサーバSVのいずれかの管理装置MDにより実行することができる。また、どのサーバSVがグループGrに割り当てられても、グループGrに含まれるノードの割り当ての変更を、グループGrに含まれるサーバSVのいずれかの管理装置MDにより実行することができる。
また、複数のグループGrのいずれかのマスタノードは、複数のグループGrのノードの割り当てを変更する指示を受信した場合、他のグループGrのマスタノードにノードの割り当てを変更する指示を転送する。各グループGrのマスタノードは、ノードの割り当てを変更する指示に含まれる装置情報を、自ノードのテンポラリグループ設定ファイル44に格納する。これにより、端末装置TMは、ノードの割り当てを変更する指示を複数のグループGrの各々に送信することなく、各グループGrのマスタノードのテンポラリグループ設定ファイル44に装置情報を格納させることができる。
さらに、各グループGrのマスタノードは、グループGr内のノードの電源が遷移中でない場合、テンポラリグループ設定ファイル44が保持する自ノードの装置情報を、マスタグループ設定ファイル42に格納する。そして、マスタノードは、テンポラリグループ設定ファイル44が保持する自ノードの装置情報を、他のグループGrのマスタノードに転送する。装置情報が転送された他のグループGrのマスタノードは、受信した装置情報をマスタグループ設定ファイル42に格納する。これにより、グループGrのいずれかで受信したノードの割り当てを変更する指示に基づいて、全てグループGrにおいてノードの割り当てを変更する動作を実行することができる。これにより、端末装置TMは、ノードの割り当てを変更する指示を複数のグループGrの各々に送信することなく、各グループGrにノードの割り当てを変更する動作を実行させることができる。また、端末装置TMを操作するオペレータは、複数のグループGrの各々に含まれる複数のノードの電源の状態を意識することなく、複数のグループGrのノードの割り当てを変更する指示を任意のタイミングで発行することができる。
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。