(57)【要約】【課題】  機能別に通信ネットワークを介して分離した際に生じるデータの遅延や欠落の発生を防ぐことができるエンクロージャマネージャ等を提供する。【解決手段】  エンクロージャマネージャは、筐体内に設けられ、当該筐体に収容される１または複数のブレードサーバを制御する第１の制御部と、通信ネットワークを介して前記第１の制御部と通信可能に接続される管理端末に設けられ、前記第１の制御部を介して前記ブレードサーバに指示を与える第２の制御部とを備え、前記第１の制御部は、前記ブレードサーバから要求を受けた場合は当該要求に関して予め前記第２の制御部から受信した命令スクリプトに従って応答し、前記第２の制御部から指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、前記第１の処理の後、前記第２の制御部からのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う。【選択図】      図１
2015069214.tif 000002
【特許請求の範囲】
【請求項１】
筐体内に設けられ、当該筐体に収容される１または複数のブレードサーバを制御する第１の制御部と、
通信ネットワークを介して前記第１の制御部と通信可能に接続される管理端末に設けられ、前記第１の制御部を介して前記ブレードサーバに指示を与える第２の制御部とを備え、
前記第１の制御部は、前記ブレードサーバから要求を受けた場合は当該要求に関して予め前記第２の制御部から受信した命令スクリプトに従って応答し、前記第２の制御部から指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、前記第１の処理の後、前記第２の制御部からのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う
エンクロージャマネージャ。
【請求項２】
前記第１の制御部は、前記第１の処理において、前記ブレードサーバから要求を受けた場合は当該要求に関して予め前記第２の制御部から受信した命令スクリプトに基づいて応答すると共に、当該要求を前記第２の制御部に通知し、
前記第２の制御部は、前記第１の処理において、前記第１の制御部から前記要求を受けると当該要求に対する判断を行い、当該判断に応じた指示を前記第１の制御部に与える
請求項１記載のエンクロージャマネージャ。
【請求項３】
前記第２の制御部は、前記第１の処理において、複数で１つの処理が完了する各指示に、当該指示の所属先を識別する所属識別子と、当該指示の次の指示を受けるまでのタイムアウト時間とを付与した指示を、前記第１の制御部に通知し、
前記第１の制御部は、前記第１の処理において、前記第２の制御部から前記所属識別子と前記タイムアウト時間とを付与された指示を受けると、当該指示を前記ブレードサーバに与え、前記第２の処理において、前記指示に付与されたタイムアウト時間内に、当該指示と同一の所属識別子が付与された次の指示を受けない場合は、当該所属識別子が付与された指示に基づいて実行した処理を取りやめる指示を、前記最終指示として前記ブレードサーバに与える
請求項１記載のエンクロージャマネージャ。
【請求項４】
前記第１の制御部は、前記第２の処理において、前記第２の制御部から前記要求に対する前記判断に応じた指示を受けると、当該指示を前記最終指示として前記ブレードサーバに与える
請求項２記載のエンクロージャマネージャ。
【請求項５】
前記第２の制御部は、前記第１の処理において、複数で１つの処理が完了する各指示に、当該指示の所属先を識別する所属識別子と、当該指示の次の指示を受けるまでのタイムアウト時間とを付与した指示を、前記第１の制御部に通知し、
前記第１の制御部は、前記第１の処理において、前記第２の制御部から前記所属識別子と前記タイムアウト時間とを付与された指示を受けると、当該指示を前記ブレードサーバに与え、前記第２の処理において、前記指示に付与されたタイムアウト時間内に、当該指示と同一の所属識別子が付与された次の指示を受けない場合は、当該所属識別子が付与された指示に基づいて実行した処理を取りやめる指示を、前記最終指示として前記ブレードサーバに与える
請求項３記載のエンクロージャマネージャ。
【請求項６】
前記第１の制御部は、前記第１の処理において、前記第２の制御部から受けた前記所属識別子と前記タイムアウト時間とを付与された指示を前記ブレードサーバに与えると共に、当該指示に応じた前記ブレードサーバによる実行の結果を、前記第２の制御部に通知し、
前記第２の制御部は、前記第１の処理において、前記第１の制御部から受けた前記実行の結果に応じて、次の指示を前記第１の制御部に通知する
請求項３または請求項５記載のエンクロージャマネージャ。
【請求項７】
筐体に収容される１または複数のブレードサーバと、前記筐体内に設けられ前記ブレードサーバを制御する第１の制御部とを有するブレードシステムと、
通信ネットワークを介して前記第１の制御部と通信可能に接続され、前記第１の制御部を介して前記ブレードサーバに指示を与える第２の制御部を有する管理端末とを備え、
前記ブレードシステムに設けられた前記第１の制御部は、前記ブレードサーバから要求を受けた場合は当該要求に関して予め前記第２の制御部から受信した命令スクリプトに従って応答し、前記第２の制御部から指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、前記第１の処理の後、前記第２の制御部からのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う
ブレードシステム管理システム。
【請求項８】
筐体内に設けられ、当該筐体に収容される１または複数のブレードサーバを制御する第１のエンクロージャマネージャにより、前記ブレードサーバから要求を受けた場合は当該要求に関して、予め、通信ネットワークを介して前記第１のエンクロージャマネージャと通信可能に接続される管理端末に設けられ前記第１のエンクロージャマネージャを介して前記ブレードサーバに指示を与える第２のエンクロージャマネージャから受信した命令スクリプトに従って応答し、前記第２のエンクロージャマネージャから指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、前記第１の処理の後、前記第２のエンクロージャマネージャからのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う
ブレードシステム管理方法。
【請求項９】
筐体に収容される１または複数のブレードサーバから要求を受けた場合は当該要求に関して、予め、通信ネットワークを介して通信可能に接続される管理端末から受信した命令スクリプトに従って応答し、前記管理端末から指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、
前記第１の処理の後、前記管理端末からのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う
ブレードシステム管理方法。
【請求項１０】
筐体に収容される１または複数のブレードサーバから要求を受けた場合は当該要求に関して、予め、通信ネットワークを介して通信可能に接続される管理端末から受信した命令スクリプトに従って応答し、前記管理端末から指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理と、
前記第１の処理の後、前記管理端末からのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理と
を、エンクロージャマネージャに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１または複数のブレードサーバを備えたブレードシステムを制御する技術に関する。
【背景技術】
【０００２】
ブレードシステムは、ブレード収納ユニット（エンクロージャ）内に複数台のブレードサーバを収納することにより省スペース等を実現できるシステムである。
【０００３】
ブレードシステムは、ブレードサーバの他に、サーバシステムを構築するうえで必要となるネットワークスイッチなどのスイッチモジュール、冷却ファンなどのファンモジュール、電源管理を行う電源ユニット等を収納する。
【０００４】
ブレードシステムには、さらに上述の各種モジュールを管理および制御するエンクロージャマネージャが搭載されている。エンクロージャマネージャは、例えば、電源管理機能、冷却管理機能、筐体管理機能、システム情報監視機能、スイッチモジュール設定機能などを有する。
【０００５】
各ブレードサーバは、上記エンクロージャマネージャ、およびブレードサーバを格納するブレード収納ユニットの外部に、ＬＡＮ（Local Area Network）を介して接続された管理端末に搭載される管理用アプリケーションによって管理される。
【０００６】
ここで、エンクロージャマネージャを、プリミティブな機能のみを搭載した内部エンクロージャマネージャと、エンクロージャマネージャとしての大部分の機能（システム制御、状態監視、各種設定の保持、ログ機能、ユーザインタフェース等）を搭載した外部エンクロージャマネージャとに分離することを考える。内部エンクロージャマネージャは、ブレード収納ユニット内部に設け、外部エンクロージャマネージャは、ブレードシステムとＬＡＮを介して接続された管理端末に設けると仮定する。
【０００７】
このように、エンクロージャマネージャを機能別に２つのレイヤに分離する場合、例えば以下の利点が考えられる。すなわち、外部エンクロージャマネージャを搭載する管理端末に複数のブレードシステムを接続することにより、１つの外部エンクロージャマネージャによって、複数のブレードシステムを管理することが可能となる。
【０００８】
一方で、上記のようにエンクロージャマネージャを分離することにより生じる問題もある。すなわち、分離された内部エンクロージャマネージャと外部エンクロージャマネージャ間にＬＡＮを利用するので、互いのデータ送受信において、ＬＡＮに起因するデータの遅延や欠落が生じる虞がある。
【０００９】
例えば、特許文献１は、サーバ・ブレード内のサービス・プロセッサのフラッシュ更新動作中に行方不明になったサーバ・ブレードを回復するための方法を開示する。
【００１０】
また、特許文献２は、ブレードサーバを起動することなく、ブレードサーバに搭載されたすべてのファームウェアの設定データの変更およびファームウェアイメージの更新を可能とするエンクロージャマネージャを開示する。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００５−２２８３０８号公報
【特許文献２】特開２０１２−２０３４４２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
上述のように、ブレードシステムを管理および制御するエンクロージャマネージャを、ブレード収納ユニット内に搭載される内部エンクロージャマネージャと、それとＬＡＮを介して接続される管理端末に搭載される外部エンクロージャマネージャとに分離すると、互いのデータ送受信において、ＬＡＮに起因するデータの遅延や欠落が生じる虞があるという課題がある。
【００１３】
また、上記特許文献１および特許文献２では、上記虞を考慮して、エンクロージャマネージャを機能別に分離することなく、ブレード収納ユニット内でブレードサーバの管理および制御をしており、上記ＬＡＮに起因して生じる課題については開示していない。
【００１４】
本願発明は、上記課題を鑑みてなされたものであり、機能別に通信ネットワークを介して分離した際に生じるデータの遅延や欠落の発生を防ぐことができるエンクロージャマネージャ、ブレードシステム管理システム、ブレードシステム管理方法およびプログラムを提供することを主要な目的とする。
【課題を解決するための手段】
【００１５】
本発明の第１のエンクロージャマネージャは、筐体内に設けられ、当該筐体に収容される１または複数のブレードサーバを制御する第１の制御部と、通信ネットワークを介して前記第１の制御部と通信可能に接続される管理端末に設けられ、前記第１の制御部を介して前記ブレードサーバに指示を与える第２の制御部とを備え、前記第１の制御部は、前記ブレードサーバから要求を受けた場合は当該要求に関して予め前記第２の制御部から受信した命令スクリプトに従って応答し、前記第２の制御部から指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、前記第１の処理の後、前記第２の制御部からのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う。
【００１６】
本発明の第１のブレードシステム管理システムは、筐体に収容される１または複数のブレードサーバと、前記筐体内に設けられ前記ブレードサーバを制御する第１の制御部とを有するブレードシステムと、通信ネットワークを介して前記第１の制御部と通信可能に接続され、前記第１の制御部を介して前記ブレードサーバに指示を与える第２の制御部を有する管理端末とを備え、前記ブレードシステムに設けられた前記第１の制御部は、前記ブレードサーバから要求を受けた場合は当該要求に関して予め前記第２の制御部から受信した命令スクリプトに従って応答し、前記第２の制御部から指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、前記第１の処理の後、前記第２の制御部からのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う。
【００１７】
本発明の第１のブレードシステム管理方法は、筐体内に設けられ、当該筐体に収容される１または複数のブレードサーバを制御する第１のエンクロージャマネージャにより、前記ブレードサーバから要求を受けた場合は当該要求に関して、予め、通信ネットワークを介して前記第１のエンクロージャマネージャと通信可能に接続される管理端末に設けられ前記第１のエンクロージャマネージャを介して前記ブレードサーバに指示を与える第２のエンクロージャマネージャから受信した命令スクリプトに従って応答し、前記第２のエンクロージャマネージャから指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、前記第１の処理の後、前記第２のエンクロージャマネージャからのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う。
【００１８】
本発明の第２のブレードシステム管理方法は、筐体に収容される１または複数のブレードサーバから要求を受けた場合は当該要求に関して、予め、通信ネットワークを介して通信可能に接続される管理端末から受信した命令スクリプトに従って応答し、前記管理端末から指示を受けた場合は当該指示を前記ブレードサーバに与える第１の処理を行い、前記第１の処理の後、前記管理端末からのさらなる指示に応じた最終指示を前記ブレードサーバに与える第２の処理を行う。
【００１９】
なお同目的は、上記の各構成を有するブレードシステム管理方法を、コンピュータによって実現するコンピュータ・プログラム、およびそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。
【発明の効果】
【００２０】
本願発明によれば、ブレードサーバを制御するエンクロージャマネージャを、機能別に通信ネットワークを介して分離した際に生じるデータの遅延や欠落の発生を防ぐことができるという効果が得られる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１の実施形態に係るブレードシステム管理システムの構成図である。
【図２】本発明の第１の実施形態に係るブレードシステム管理システムにおけるデータ遅延への対処について説明するブロック図である。
【図３】本発明の第１の実施形態に係るブレードシステム管理システムにおけるデータ遅延への対処について説明するフローチャートである。
【図４】本発明の第２の実施形態に係るブレードシステム管理システムにおけるデータ欠落への対処について説明するブロック図である。
【図５】本発明の第２の実施形態に係るブレードシステム管理システムにおけるデータ欠落への対処について説明するフローチャートである。
【図６】本発明の第３の実施形態に係るブレードシステムの構成図である。
【図７】本発明の各実施形態に係るブレードシステム管理システムを実現可能な情報処理装置のハードウエア構成を例示する図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００２３】
第１の実施形態
図１は、本発明の第１の実施形態に係るブレードシステム管理システム１００の構成図である。図１に示すように、ブレードシステム管理システム１００は、ブレードシステム２００と、そのブレードサシステム２００とＬＡＮ３５０を介して通信可能に接続される管理ＰＣ（Personal Computer）３００とを備える。
【００２４】
ブレードシステム２００は、１または複数の、ブレードサーバ２２０、電源ユニット２２１、スイッチモジュール２２２およびファンモジュール２２３を収容する。ブレードシステム２００は、さらに、上記各構成要素を制御および管理するエンクロージャマネージャ２１０を備える。エンクロージャマネージャ２１０は、ハードウエア制御部２１１を備える。
【００２５】
管理ＰＣ３００は、ＬＡＮ３５０を介してブレードシステム２００と接続され、ユーザの操作またはエンクロージャマネージャ２１０からの信号に応じて、エンクロージャマネージャ２１０を介してブレードサーバ２２０等の管理および制御する信号を送出する。
【００２６】
管理ＰＣ３００は、エンクロージャマネージャ２１０から機能を分離されたエンクロージャマネージャ３０１を備える。エンクロージャマネージャ３０１は、システム管理部３０２を備える。
【００２７】
ブレードサーバ２２０は、１台でサーバコンピュータとしての機能を有するブレード型のサーバである。ブレードサーバ２２０は、それぞれ図示しないＣＰＵ（Central Processing Unit）等を備える。
【００２８】
電源ユニット２２１は、ブレードシステム２００内の各要素の電源管理を行う。スイッチモジュール２２２は、サーバシステムを構築するうえで必要となるネットワークスイッチ等である。ファンモジュール２２３は、ブレードシステム２００内の熱を外に排出する冷却ファン等である。
【００２９】
エンクロージャマネージャ２１０が備えるハードウエア制御部２１１は、ブレードサーバ２２０、電源ユニット２２１、スイッチモジュール２２２、ファンモジュール２２３を、管理および制御する。
【００３０】
本実施形態では、ブレードシステム２００に収容される各モジュールを管理および制御するエンクロージャマネージャを、ブレードシステム２００筐体内に収容されるエンクロージャマネージャ２１０と、ブレードシステム２００の外部にＬＡＮ３５０を介して通信可能に接続される管理ＰＣ３００に搭載されるエンクロージャマネージャ３０１とに分離する。
【００３１】
エンクロージャマネージャ２１０が備えるハードウエア制御部２１１は、ブレードシステム２００を管理および制御する機能のうちプリミティブな機能に限定した機能を搭載する。すなわち、エンクロージャマネージャ２１０（ハードウエア）およびそれを制御するファームウエアと、ブレードサーバ２２０等と管理ＰＣ３００とのインタフェースとして機能するプリミティブな機能のみが実装される。
【００３２】
一方、エンクロージャマネージャ３０１が備えるシステム管理部３０２は、ブレードシステムの制御、状態監視、各種設定の保持、ログ機能、ユーザインタフェース等、エンクロージャマネージャとしての大部分の機能を有するソフトウエアを備える。
【００３３】
このように、エンクロージャマネージャをＬＡＮを介して機能別に分離した場合、１つのシステム管理部３０２によって、複数のブレードシステムを管理することが可能となる等の利点がある。一方で、分離したシステム管理部３０２とハードウエア制御部２１１との間にＬＡＮを利用するので、互いのデータ送受信において、ＬＡＮに起因するデータの遅延や欠落が生じる虞がある。
【００３４】
そこで、本実施形態では、ＬＡＮに起因するデータの遅延を防ぐ構成について説明する。
【００３５】
上述したように、ハードウエア制御部２１１にはプリミティブな機能のみが実装されるので、ハードウエア制御部２１１が検出した事象に対処するには、ＬＡＮ３５０を経由してシステム管理部３０２に送信され、その返答（指示）を待つ必要がある。そのため、ハードウエア制御部２１１による検出から、その対処までの処理を極めて短時間で完了させる必要のある処理の実行中にＬＡＮ３５０に起因するデータ送信の遅延が発生した場合、その処理の完了までに返答が間に合わないことがある。
【００３６】
図２は、本発明の第１の実施形態に係るブレードシステム管理システム１００におけるデータ遅延への対処について説明するブロック図である。
【００３７】
管理ＰＣ３００は、システム管理部３０２を搭載する。システム管理部３０２は、ブレードシステム２００を制御する機能を実装するソフトウエアである。システム管理部３０２とハードウエア制御部２１１は、ＬＡＮ３５０で接続され、ＬＡＮ３５０を介して互いにデータの送受信を行う。図２では、システム管理部３０２は１つのハードウエア制御部２１１と接続することを示すが、本実施形態を例に説明する本発明はこれに限定されず、システム管理部３０２は、複数のハードウエア制御部２１１と通信可能に接続されると共に、複数のブレードシステムを管理することができる。
【００３８】
システム管理部３０２は、対処スクリプト３１０を備える。対処スクリプト３１０とは、エンクロージャマネージャ２１０に搭載されるハードウエア制御部２１１が実施すべき命令が記述されたスクリプトである。
【００３９】
図３は、ブレードシステム管理システム１００においてデータ遅延への対処について説明するフローチャートである。図３を参照して、ブレードシステム管理システム１００におけるデータ遅延への対処動作について説明する。
【００４０】
エンクロージャマネージャ２１０に電源が投入されると（ステップＳＴ４０１）、ハードウエア制御部２１１は、システム管理部３０２が、自己に関連する対処スクリプト３１０を備えるか否かを調べる（ステップＳＴ４０２）。自己に関連する対処スクリプト３１０がない場合、ハードウエア制御部２１１は処理を終了する。
【００４１】
自己に関連する対処スクリプト３１０がある場合、ハードウエア制御部２１１は、その対処スクリプト３１０をシステム管理部３０２からダウンロードする（ステップＳＴ４０３）。ここでは、ハードウエア制御部２１１は、ブレードサーバ２２０から電力要求を受けた場合、システム管理部３０２からの指示を受けるまで、その要求に応じて常にＢＵＳＹ応答を返却するという命令が記述された対処スクリプト３１０をダウンロードしたと仮定する。
【００４２】
ここで、ブレードサーバ２２０は、電源をオンしようとする際、電源オンのための電力確保の要求をハードウエア制御部２１１に発行する。ブレードサーバ２２０は、当該要求を発行した後、一定時間（例えば一秒間）応答を待機し、この時間内に応答を得られない場合は電源オンに失敗する。ブレードサーバ２２０の電源オンの可否については、その時点における余剰電力に従って、システム管理部３０２が判断する。つまり、電源オンの可否に関してシステム管理部３０２からの応答を待つ必要がある。しかしながら、上記のように、ハードウエア制御部２１１とシステム管理部３０２とは、ＬＡＮ３５０を経由して接続されるので、ネットワークの混雑または断線等に起因するデータ遅延が発生する虞がある。このため、上述のように、一定時間応答が得られない場合には、電源オンに失敗する。
【００４３】
それに対して、本実施形態では、上述のように、ハードウエア制御部２１１は、システム管理部３０２からダウンロードした対処スクリプト３１０に従って処理を実施する（ステップＳＴ４０４）。ここでは、ハードウエア制御部２１１は、ブレードサーバ２２０からの電力要求にＢＵＳＹ応答を返却すると共に、電力要求を受けた旨をシステム管理部３０２に通知する。これにより、ブレードサーバ２２０は、システム管理部３０２から指示があるまで、ハードウエア制御部２１１に電力要求を繰り返し発行する。
【００４４】
上記電力要求およびＢＵＳＹ応答が繰り返されている間、システム管理部３０２は、余剰電力を計算し、ブレードサーバ２２０の電源オンを可能とする電力が確保可能であるか否かを判断する。確保可能であると判断された場合、システム管理部３０２は、電源オンが可能である旨の最終指示を、ハードウエア制御部２１１に発行する（ステップＳＴ４０５）。
【００４５】
ハードウエア制御部２１１は、上記最終指示にしたがって、ブレードサーバ２２０に、電源オンを許可する最終応答を返却する（ステップＳＴ４０６）。一方で、システム管理部３０１は、電力の確保が不可能であると判断した場合、その旨を示す最終指示をハードウエア制御部２１１に発行する。ハードウエア制御部２１１は、当該最終指示に従って、ブレードサーバ２２０に電源オンを許可しない最終応答を返却する。以上により、サーバシステム２００は、ＬＡＮ３５０に起因するデータ遅延による影響、例えば、ブレードサーバ２２０の電源オンに失敗することを回避できる。
【００４６】
以上のように、本第１の実施形態によれば、ブレードシステム２００を管理および制御するエンクロージャマネージャを、ブレードシステム２００の筐体内に収容されるエンクロージャマネージャ２１０と、ブレードシステム２００の外部にＬＡＮ３５０を介して通信可能に接続される管理ＰＣ３００に搭載されるエンクロージャマネージャ３０１とに分離する。
【００４７】
エンクロージャマネージャ２１１に搭載されるハードウエア制御部２１１は、自己に関連する対処スクリプト３１０を、エンクロージャマネージャ３０１に搭載されるシステム管理部３０１からダウンロードし、ブレードサーバ２２０からの要求に応じて、対処スクリプト３１０にしたがって処理を実行する。ハードウエア制御部２１１は、システム管理部３０２からの最終指示に従って、ブレードサーバ２２０に最終応答を返却する。
【００４８】
上記構成により、ブレードサーバ２２０からの要求に対してハードウエア制御部２１１が即座に返答するので、システム管理部３０２からの最終指示がＬＡＮ３５０に起因してデータ遅延したとしても、ブレードサーバ２２０は要求への応答を得られず処理失敗となることを回避できる。
【００４９】
このように、本実施形態によれば、エンクロージャマネージャをＬＡＮ３５０を介して機能別に分離することが可能となるので、１つのシステム管理部３０２によって複数のブレードシステムを管理することが可能となり、ユーザによる複数のブレードシステムの管理が容易になるという効果が得られる。
【００５０】
また、本実施形態によれば、複数のブレードシステムを連携させる機能の実装が容易になるという効果が得られる。例えば、ブレードシステムＡが備える所定のブレードサーバの電源をオンする際に、自動的にブレードシステムＢが備える所定のブレードサーバの電源をオンする等の操作を、外部の運用管理ソフトウエアがなくてもシステム管理部３０２によって実現可能となる。
【００５１】
さらに、本実施形態によれば、ブレードシステムのメンテナンスが容易となる効果が得られる。上述のように、ハードウェア制御部２１１は、プリミティブな機能のみを搭載するので、強化すべき主な機能は、システム管理部３０２に集約されることが期待できる。したがって、機能を強化するアップデート実施の際、管理ＰＣ３００に搭載されるシステム管理部３０２のみをアップデートすればよいので、メンテナスが容易となる効果が得られる。
第２の実施形態
上記第１の実施形態では、システム管理部３０２とハードウエア制御部２１１とがＬＡＮ３５０を経由する際に生じる虞のあるデータ遅延への対処について説明したが、本第２の実施形態は、同じくデータ欠落への対処について説明する。
【００５２】
図４は、本発明の第２の実施形態に係るブレードシステム管理システム５００におけるデータ欠落への対処について説明するブロック図である。図４に示すように、ブレードシステム６００は、複数のブレードサーバ２２０１、２２０２を備える。以下の説明では、第１の実施形態と同様の構成については同じ参照番号を付与することにより、重複する説明は省略する。
【００５３】
例えば、複数で１つの処理が完了する指示のまとまりがある。このまとまりの中の指示が１つ１つ順番に発行されると共に、前の指示を実行した結果に従って次の指示が決まり、かつ、全ての指示が漏れなく実行されて初めて完了する処理がある。
【００５４】
例えば、図４に示すブレードシステム６００において、ブレードサーバ２２０１およびブレードサーバ２２０２は、一方が主サーバであり、他方が待機サーバであるといった、いずれか１台が動作していることを要求されるサーバであると仮定する。この場合、ブレードサーバ２２０１およびブレードサーバ２２０２の電源を切り替える、すなわち、電源オン状態のブレードサーバ２２０１の電源をオフすると共に、電源オフ状態のブレードサーバ２２０２の電源をオンする場合について説明する。
【００５５】
上記のように電源を切り替える場合、システム管理部３０２は、ブレードサーバ２２０１の電源オフの指示を発行し、その電源オフが成功したことを確認した後に、ブレードサーバ２２０２の電源オンの指示を発行する。そして、ブレードサーバ２２０２の電源オンが成功したことを確認すると、上記電源の切り替えは完了する。
【００５６】
これら一連の処理は途中で終わることは許されない。途中で処理に不具合が生じた場合は、これら一連の処理はすべて取りやめる必要がある。例えば、ブレードサーバ２２０１の電源がオフされた後に、ブレードサーバ２２０２の電源のオンが失敗した場合は、実施済みの処理をキャンセル、すなわち、ブレードサーバ２２０１の電源を再度オンする必要がある。
【００５７】
ＬＡＮを経由するデータ送受信では、ネットワークの混雑または断線等に起因してデータの欠落が発生する虞がある。そのため、上述のような不具合が生じる虞がある。
【００５８】
そこで、本実施形態では、一連の処理にも関わらず途中結果次第で後続する処理が変わり、かつ、ＬＡＮ障害などにより処理が途中で終わることが許されない一連の処理実行の際、システム管理部３０２は、以下のような処理を行う。すなわち、システム管理部３０２は、ＬＡＮ３５０を経由して送信する指示内容に、グループＩＤ、指示番号、全指示数、タイムアウト時間を添付する。
【００５９】
グループＩＤは、ある一連の処理に対して付される一意の値である。指示番号は、同一グループＩＤを有する各指示に付される一意の値である。全指示数は、その一連の処理を構成する指示数を示す値である。タイムアウト時間は、同一グループＩＤを有する後続の指示を受けるまでの待ち時間である。タイムアウト時間を超えて後続の指示が来なかった場合、一連の処理は全てキャンセルされる。
【００６０】
図５は、本発明の第２の実施形態に係るブレードシステム管理システム５００におけるデータ欠落への対処について説明するフローチャートである。図５を参照して、ブレードシステム管理システム５００におけるデータ欠落への対処動作について説明する。
【００６１】
システム管理部３０２は、ここでは、ブレードサーバ２２０１とブレードサーバ２２０２との間の電源の切り替え、すなわち、電源オン状態のブレードサーバ２２０１の電源をオフすると共に、電源オフ状態のブレードサーバ２２０２の電源をオンする処理を実行すると仮定する。
【００６２】
上記処理にあたり、システム管理部３０２は、まず、「ブレードサーバ２２０１の電源オフ」指示を発行する。「ブレードサーバ２２０１の電源オフ」指示には、図４に示すように、グループＩＤ＝「１」、指示番号＝「１」、全指示数＝「２」、タイムアウト時間＝「６０秒」という付加情報が添付される。
【００６３】
システム管理部３０２は、上記付加情報が添付された「ブレードサーバ２２０１の電源オフ」指示を、ＬＡＮ３５０を経由して、ハードウエア制御部２１１に送信する。
【００６４】
ハードウエア制御部２１１は、上記付加情報が添付された指示を受信すると（ステップＳＴ６０１）、その指示内容にしたがって処理を行う（ステップＳＴ６０２）。ここでは、ハードウエア制御部２１１は、ブレードサーバ２２０１に電源オフ指示を発行する。そして、ハードウエア制御部２１１は、ブレードサーバ２２０１の電源オフの成否を確認すると共に、その結果をシステム管理部３０２に返却する（ステップＳＴ６０３）。
【００６５】
ここで、システム管理部３０２は、上記指示内容に従った処理が成功であった場合で、かつ指示の終了でない場合、次の指示をハードウエア制御部２１１に送信する。ここでは、システム管理部３０２は、図４に示すように、グループＩＤ＝「１」、指示番号＝「２」、全指示数＝「２」という付加情報が添付された「ブレードサーバ２２０２の電源オン」指示を、ＬＡＮ３５０を経由して、ハードウエア制御部２１１に送信する。なお、「ブレードサーバ２２０２の電源オン」指示は、同一グループＩＤを有する指示のうち最後の指示であるので、後続の指示を待つ時間であるタイムアウト時間を保持しない。
【００６６】
ハードウエア制御部２１１は、すでに受信している指示に添付された付加情報に含まれる指示番号と全指示数とを比較し、両者が一致しなければ、すなわち、上記指示が最終指示でなければ（ステップＳＴ６０４においてＮｏ）、次の指示を待機する。一方、ハードウエア制御部２１１は、上記指示が最終指示である場合、処理を終了する。
【００６７】
ハードウエア制御部２１１は、すでに受信している指示に添付された付加情報に含まれるタイムアウト時間までに次の指示を受けた場合（ステップＳＴ６０５においてＹｅｓ）、ステップＳＴ６０２に処理を戻す。
【００６８】
一方、ハードウエア制御部２１１は、上記タイムアウト時間までに次の指示を受けなかった場合、同一のグループＩＤを持つ指示にしたがって実行した一連の処理を、すべてキャンセルする（ステップＳＴ６０６）。ここでは、ハードウエア制御部２１１は、ブレードサーバ２２０１に電源を再びオンする指示を発行する。
【００６９】
上記構成により、例えば、ブレードサーバ２２０１に対する電源オフが成功したのちに、ＬＡＮ３５０が断線する等により、それ以降の指示をハードウエア制御部２１１が受けることができない場合、ブレードサーバ２２０１および２２０２が、共に電源オフとなってしまうことを防ぐことができる。
【００７０】
以上のように、本第２の実施形態によれば、システム管理部３０２は、ブレードシステム６００において、一連の処理にも関わらず途中結果次第で後続する処理が変わり、かつ、処理が途中で終わることが許されない一連の処理を実行する指示に、付加情報を添付してハードウエア制御部２１１に送信する。
【００７１】
ハードウエア制御部２１１は、タイムアウト時間内に同一グループＩＤを付与された後続の指示を受けない場合、当該グループＩＤを付与された指示に基づく実施済みの処理をキャンセルする。
【００７２】
上記構成により、システム管理部３０２からの、一連の処理を実施する複数の指示が途中でＬＡＮ３５０に起因して欠落したとしても、ハードウエア制御部２１１は、ブレードシステム５００を不正な状態にすることを防ぐことができるという効果が得られる。また、このように、ＬＡＮに起因するデータ欠落による悪影響を防ぐことができるので、エンクロージャマネージャをＬＡＮを介して機能別に分離することが可能となり、それにより上記第１の実施形態で述べた効果を奏することができる。
第３の実施形態
図６は、本発明の第３の実施形態に係るエンクロージャマネージャ７００の構成図である。図６に示すように、エンクロージャマネージャ７００は、第１の制御部７０１と、第２の制御部７０２とを備える。第１の制御部７０１は、筐体内に設けられ、当該筐体に収容される１または複数のブレードサーバを制御する。第２の制御部７０２は、通信ネットワークを介して第１の制御部７０１と通信可能に接続される管理端末に設けられ、第１の制御部７０１を介してブレードサーバに指示を与える。
【００７３】
第１の制御部７０１は、ブレードサーバから要求を受けた場合は当該要求に関して予め第２の制御部７０２から受信した命令スクリプトに従って応答し、第２の制御部７０２から指示を受けた場合は当該指示をブレードサーバに与える第１の処理を行い、第１の処理の後、第２の制御部７０２からのさらなる指示に応じた最終指示をブレードサーバに与える第２の処理を行う。
【００７４】
第１の制御部７０１は、上記各実施形態におけるハードウエア制御部に相当し、第２の制御部７０２は、同じくシステム管理部に相当する。
【００７５】
上記構成を採用することにより、本第３の実施形態によれば、ブレードサーバを制御するエンクロージャマネージャを、機能別に通信ネットワークを介して分離した際に生じるデータの遅延や欠落の発生を防ぐことができるという効果が得られる。
【００７６】
上記図１、図２および図４に示したエンクロージャマネージャ２１０、３０１は、それぞれ、図７に例示するハードウエア資源において実現される。すなわち、図７に示す構成は、ＣＰＵ（Central Processing Unit）１０、ＲＡＭ（Random Access Memory）１１、ＲＯＭ（Read Only Memory）１２、ネットワークインタフェース１３および記憶媒体１４を備える。エンクロージャマネージャ２１０、３０１のＣＰＵ１０は、ＲＯＭ１２または記憶媒体１４に記憶された各種ソフトウエア・プログラム（コンピュータ・プログラム）を、ＲＡＭ１１に読み出して実行することにより、エンクロージャマネージャ２１０、３０１の全体的な動作を司る。すなわち、上記各実施形態において、ＣＰＵ１０は、ＲＯＭ１２または記憶媒体１４を適宜参照しながら、エンクロージャマネージャ２１０、３０１が備える各機能（各部）を実行するソフトウエア・プログラムを実行する。
【００７７】
また、上述した各実施形態では、図１、図２および図４に示したエンクロージャマネージャ２１０、３０１を、図７に示すＣＰＵ１０が実行する一例として、ソフトウエア・プログラムによって実現する場合について説明した。しかしながら、上記各図に示した各ブロックに示す機能は、一部または全部を、ハードウエアとして実現してもよい。
【００７８】
また、各実施形態を例に説明した本発明は、エンクロージャマネージャ２１０、３０１に対して、その説明において参照したフローチャート（図３、図５）の機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、ＣＰＵ１０がＲＡＭ１１に読み出して実行することによって達成される。
【００７９】
また、係る供給されたコンピュータ・プログラムは、読み書き可能なメモリ（一時記憶媒体）またはハードディスク装置等のコンピュータ読み取り可能な記憶デバイスに格納すればよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムを表すコード或いは係るコンピュータ・プログラムを格納した記憶媒体によって構成されると捉えることができる。
【産業上の利用可能性】
【００８０】
本発明は、例えば、エンクロージャマネージャによりブレードサーバの管理を行うブレードシステムに適用できる。
【符号の説明】
【００８１】
１０  ＣＰＵ
１１  ＲＡＭ
１２  ＲＯＭ
１３  ネットワークインタフェース
１４  記憶媒体
１００、５００  ブレードシステム管理システム
２００、６００  ブレードシステム
２１０、３０１  エンクロージャマネージャ
２１１  ハードウエア制御部
２２０、２２０１、２２０２  ブレードサーバ
２２１  電源ユニット
２２２  スイッチモジュール
２２３  ファンモジュール
３０２  システム管理部
３１０  対処スクリプト
３５０  ＬＡＮ
７００  エンクロージャマネージャ
７０１  第１の制御部
７０２  第２の制御部
【図１】
2015069214.tif 000003
【図２】
2015069214.tif 000004
【図３】
2015069214.tif 000005
【図４】
2015069214.tif 000006
【図５】
2015069214.tif 000007
【図６】
2015069214.tif 000008
【図７】
2015069214.tif 000009