(57)【特許請求の範囲】
【請求項１】
複数のホストコンピュータと、前記各ホストコンピュータにより共有される第１の制御部及び第２の制御部からなる制御装置とによって構成されるクラスタシステムにおいて、
前記各ホストコンピュータは、前記第１の制御部及び前記第２の制御部とのインタフェースを制御するソフトウェアを備え、
前記第１の制御部及び前記第２の制御部は、前記各ホストコンピュータとのインタフェースを制御するソフトウェアを備え、
前記各ホストコンピュータは、前記第１の制御部のソフトウェアのアップデートが完了するのに応じて、自コンピュータのソフトウェアをアップデートし、
前記第２の制御部は、前記複数のホストコンピュータのソフトウェアのアップデートが完了するのに応じて、前記第２の制御部のソフトウェアをアップデートすることを特徴とするクラスタシステム。
【請求項２】
前記第１の制御部及び前記第２の制御部のソフトウェアは、前記複数のホストコンピュータにおけるホストコンピュータとの接続処理を試行する場合に、前記ホストコンピュータのリビジョンを読み出し、そのソフトウェアが備える互換性のあるリビジョンの範囲情報と比較し、前記ホストコンピュータのリビジョンが範囲内の場合はそのホストコンピュータとの前記接続処理を完了し、前記ホストコンピュータのリビジョンが範囲外の場合はそのホストコンピュータとの前記接続処理を保留する、請求項１に記載のクラスタシステム。
【請求項３】
前記各ホストコンピュータは、自コンピュータのソフトウェアをアップデートする際、前記第１の制御部及び前記第２の制御部との通信接続を切断し、自コンピュータのソフトウェアのアップデートが完了すると、アップデートを完了した自コンピュータが個別に前記接続処理を試行する、請求項１または請求項２のいずれかに記載のクラスタシステム。
【請求項４】
複数のホストコンピュータと、前記各ホストコンピュータにより共有される第１の制御部及び第２の制御部からなる制御装置とによって構成されるクラスタシステムにおいて、
前記各ホストコンピュータは、前記第１の制御部及び前記第２の制御部とのインタフェースを制御するソフトウェアを備え、
前記第１の制御部及び前記第２の制御部は、前記各ホストコンピュータとのインタフェースを制御するソフトウェアを備える場合に、
前記クラスタシステムによって、
前記第１の制御部のソフトウェアのアップデートが完了するのに応じて、前記各ホストコンピュータのソフトウェアをアップデートし、
前記複数のホストコンピュータのソフトウェアのアップデートが完了するのに応じて、前記第２の制御部のソフトウェアをアップデートすることを特徴とするクラスタシステムのアップデート方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラスタシステムにおけるソフトウェアをアップデートする技術に関する。
【背景技術】
【０００２】
クラスタシステムにおいて、障害が発生した場合またはソフトウェアのアップデートを行う場合においても、システムを停止させることなく処理を続行する技術が知られている。
【０００３】
例えば、特許文献１には、システムバスに通信可能に接続される、複数のプロセッサボードが故障した場合に、システムを停止することなくプロセッサボードを交換する技術が開示されている。
【０００４】
特許文献２には、複数のプロセッサを有するシステムにおけるプロセッサのソフトウェアのアップデート方式に関する技術が開示されている。具体的に、特許文献２には、稼動系と待機系とのプロセッサにおいて、同等の処理を行うことにより、稼動系の制御状態を待機系に反映させ、両プロセッサ間においてデータを一致させる技術が開示されている。
【０００５】
特許文献３には、ホストコンピュータとＭＳＣＰ装置（Multi-System Control Processor：排他制御装置）とを有する疎結合のコンピュータシステムに関する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−１５７１５１
【特許文献２】特開２００２−４９５０２
【特許文献３】特開２０１１−２１６０５９
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１には、障害が発生した場合の技術、すなわち故障時にシステムを停止させることなく部品交換を行う技術が開示されている。特許文献２には、プロセッサのソフトウェアのアップデートに関する技術について記載されている。
【０００８】
特許文献３に開示されたコンピュータシステムにおいて、ホストコンピュータとＭＳＣＰ装置の間のインタフェース仕様の変更を伴うアップデートを行う場合、上述した特許文献１及び特許文献２に開示された技術を適用すると、システムを停止しなければならない。その理由は、インタフェース仕様の変更を伴うアップデートを行う場合、ホストコンピュータ側のソフトウェアとＭＳＣＰ装置側のソフトウェアの双方を同時にアップデートする必要があるからである。
【０００９】
本発明は、上記課題を鑑み、ホストコンピュータと制御装置との間のインタフェース仕様の変更を伴うホストコンピュータのソフトウェアおよび制御装置のソフトウェアのアップデートを行う場合において、システム全体を停止することなく双方のアップデートを行うことができるクラスタシステムなどを提供することを１つの目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明に係るクラスタシステムは、複数のホストコンピュータと、前記各ホストコンピュータにより共有される第１の制御部及び第２の制御部からなる制御装置とによって構成されるクラスタシステムにおいて、前記ホストコンピュータは、前記第１の制御部及び前記第２の制御部とのインタフェースを制御するソフトウェアを備え、前記第１の制御部及び前記第２の制御部は、前記ホストコンピュータとのインタフェースを制御するソフトウェアを備え、前記ホストコンピュータは、前記第１の制御部のソフトウェアのアップデートが完了するのに応じて、自コンピュータのソフトウェアを１台ずつアップデートし、前記第２の制御部は、前記ホストコンピュータの全てのソフトウェアのアップデートが完了するのに応じて、前記第２の制御部のソフトウェアをアップデートすることを特徴とする。
【００１１】
上記目的を達成するために、本発明に係るクラスタシステムのアップデート方法は、複数のホストコンピュータと、前記各ホストコンピュータにより共有される第１の制御部及び第２の制御部からなる制御装置とによって構成されるクラスタシステムにおいて、前記ホストコンピュータは、前記第１の制御部及び前記第２の制御部とのインタフェースを制御するソフトウェアを備え、前記第１の制御部及び前記第２の制御部は、前記ホストコンピュータとのインタフェースを制御するソフトウェアを備え、前記第１の制御部のソフトウェアのアップデートが完了するのに応じて、前記ホストコンピュータのソフトウェアを１台ずつアップデートし、前記ホストコンピュータの全てのソフトウェアのアップデートが完了するのに応じて、前記第２の制御部のソフトウェアをアップデートする。
【発明の効果】
【００１２】
本発明に係るクラスタシステムは、ホストコンピュータと制御装置との間のインタフェース仕様の変更を伴うホストコンピュータのソフトウェアおよび制御装置のソフトウェアのアップデートを行う場合において、システム全体を停止することなく双方のアップデートを行うことができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１の実施形態に係るクラスタシステム１の構成を示す図である。
【図２】第１の実施形態に係るクラスタシステム１の動作を示すフローチャートである。
【図３】第１の実施形態に係るクラスタシステム１のステップＳ１０４の詳細を示すフローチャートである。
【図４】第１の実施形態に係るクラスタシステム１のステップＳ１０８の詳細を示すフローチャートである。
【図５】第１の実施形態に係るクラスタシステム１のステップＳ１１４の詳細を示すフローチャートである。
【図６】第１の実施形態に係るクラスタシステム１のアップデート途中における、各ホスト１０Ａ〜１０ｎと制御装置２０との接続状況を表す図である。
【発明を実施するための形態】
【００１４】
以下、本発明を、図面を参照して詳細に説明する。
【００１５】
＜第１の実施形態＞
はじめに、本発明の第１の実施形態に係るクラスタシステムについて説明する。
【００１６】
図１は、本発明の第１の実施形態に係るクラスタシステム１の構成を示す図である。図１に示すように、クラスタシステム１は、プログラム制御により動作する複数のホストコンピュータ（以下、「ホスト」と称する）１０と、第１の制御部２２及び第２の制御部２４を有する制御装置２０とによって構成される。
【００１７】
複数のホスト１０は、各々独立したコンピュータである。各ホスト１０は、第１の制御部２２及び第２の制御部２４とそれぞれ通信可能に接続されている（以下、本願においては、「接続」と略称する）。ホスト１０の一例として、サーバー等が挙げられる。また、複数のホスト１０は、それぞれ第１の制御部２２及び第２の制御部２４との通信インタフェース（以下、本願においては、「インタフェース」と略称する）１４を制御するソフトウェア（以下、「ＳＷ」と略称する）１２を備える。ホスト１０は、ＳＷ１２をアップデートする際に、第１の制御部２２及び第２の制御部２４との接続を切断する。ホスト１０は、ＳＷ１２のアップデートが完了した際に、第１の制御部２２及び第２の制御部２４との接続を試行する。
【００１８】
ホスト１０は、第１の制御部２２及び第２の制御部２４の両方と接続が確立している場合、第１の制御部２２及び第２の制御部２４の両方の負荷がほぼ均等になるよう分散して処理を行う（負荷分散）。一方、ホスト１０は、第１の制御部２２及び第２の制御部２４のどちらか一方とのみ接続が確立している場合、接続が確立している制御部とだけ処理を行う。
【００１９】
制御装置２０は、第１の制御部２２と第２の制御部２４とを有し、クラスタシステムにおいて、共有される装置である。第１の制御部２２及び第２の制御部２４は、互いに接続されている。
【００２０】
制御装置２０の一例として、排他制御装置が挙げられる。排他制御装置は、複数のプロセスが利用する共有資源に対して、それらのプロセスからの同時アクセスにより競合が発生する場合に、あるプロセスに資源を独占的に利用させている間は、他のプロセスが利用できないようにすることで整合性を保つ。
【００２１】
第１の制御部２２と第２の制御部２４は、例えば、同様の構成である。第１の制御部２２及び第２の制御部２４は、それぞれが独立して排他制御処理を実行し処理結果を互いにバックアップする。第１の制御部２２及び第２の制御部２４は、処理結果を互いへバックアップすることにより、片方の装置が障害で停止した場合、残った装置によってシステムの運用を継続できるよう構成されている。
【００２２】
第１の制御部２２及び第２の制御部２４は、ホスト１０とのインタフェース２８及びインタフェース３２を制御するＳＷ２６及びＳＷ３０を備える。第１の制御部２２及び第２の制御部２４は、ＳＷ２６及びＳＷ３０をアップデートする際に、各ホスト１０との接続を切断する。第１の制御部２２及び第２の制御部２４は、ＳＷ２６及びＳＷ３０のアップデートが完了した場合、各ホスト１０との接続を試行する。第１の制御部２２及び第２の制御部２４は、各ホスト１０のＳＷ１２のリビジョン（バージョン）を読み出し、アップデートされたＳＷ２６及びＳＷ３０が備える互換性のあるリビジョンの範囲情報と比較する。第１の制御部２２及び第２の制御部２４は、ホスト１０のリビジョンが範囲内の場合はそのホスト１０との接続を確立し、ホスト１０のリビジョンが範囲外の場合はそのホスト１０との接続を保留する
次に、クラスタシステム１の動作を説明する。
【００２３】
図２は、本発明の第１の実施形態に係るクラスタシステム１の動作を示すフローチャートである。
【００２４】
図２に示すように、ステップＳ１０２において、第１の制御部２２は、ＳＷ２６をアップデートする。
【００２５】
ステップＳ１０４において、第１の制御部２２は、ＳＷ２６のアップデートが完了すると、各ホスト１０との接続を試行する。ステップＳ１０４についての詳細は、後述する。
【００２６】
ステップＳ１０６において、各ホスト１０は、ＳＷ１２をアップデートする。
【００２７】
ステップＳ１０８において、ＳＷ１２をアップデートしたホスト１０は、第１の制御部２２及び第２の制御部２４との接続を試行する。ステップＳ１０８についての詳細は、後述する。
【００２８】
ステップＳ１１０において、全てのホスト１０のＳＷ１２のアップデートが完了した場合、ステップＳ１１２に進む。全てのホスト１０のＳＷ１２のアップデートが完了していない場合、ステップＳ１０６に進む。
【００２９】
ステップＳ１１２において、第２の制御部２４は、ＳＷ３０をアップデートする。
【００３０】
ステップＳ１１４において、第２の制御部２４は、ＳＷ３０のアップデートが完了すると、各ホスト１０との接続を試みる。ステップＳ１１４についての詳細は、後述する。
【００３１】
図３は、本発明の第１の実施形態に係るクラスタシステム１のステップＳ１０４の詳細を示すフローチャートである。
【００３２】
図３に示すように、ステップＳ２０２において、ＳＷ２６のアップデートが完了した第１の制御部２２は、ホスト１０との接続を試行する。
【００３３】
ステップＳ２０４において、第１の制御部２２は、ホスト１０のＳＷ１２のリビジョンを読み出し、アップデートされたＳＷ２６が備える互換性のあるリビジョンの範囲情報と比較する。
【００３４】
ステップＳ２０６において、第１の制御部２２は、アップデートされたＳＷ２６が備える互換性のあるリビジョンの範囲内にホスト１０のリビジョンが含まれる場合、処理をＳ２０８に進める。一方、第１の制御部２２は、アップデートされたＳＷ２６が備える互換性のあるリビジョンの範囲内にホスト１０のリビジョンが含まれない場合、処理をＳ２１０に進める。
【００３５】
ステップＳ２０８において、第１の制御部２２は、互換性のあるＳＷ１２を備えるホスト１０との接続を確立する（接続を完了する）。
【００３６】
ステップＳ２１０において、第１の制御部２２は、互換性のないＳＷ１２を備えるホスト１０との接続を保留する。
【００３７】
ステップＳ２１２において、第１の制御部２２は、全てのホスト１０に対して、上記Ｓ２０２〜Ｓ２１０を行った場合、処理をＳ１０６に進める。一方、第１の制御部２２は、全てのホスト１０に対して、上記Ｓ２０２〜Ｓ２１０の動作を行っていない場合、処理をＳ２０２に戻す。
【００３８】
図４は、本発明の第１の実施形態に係るクラスタシステム１のステップＳ１０８の詳細を示すフローチャートである。
【００３９】
図４に示すように、ステップＳ３０２において、ＳＷ１２のアップデートが完了したホスト１０は、第１の制御部２２と接続を試行する。
【００４０】
ステップＳ３０４において、第１の制御部２２は、ＳＷ１２のアップデートが完了したホスト１０からの接続を認識することにより、そのホスト１０のＳＷ１２のリビジョンを読み出し、ＳＷ２６が備える互換性のあるリビジョンの範囲情報と比較する。
【００４１】
ステップＳ３０６において、第１の制御部２２は、ＳＷ２６が備える互換性のあるリビジョンの範囲内にそのホスト１０のリビジョンが含まれる場合、処理をＳ３０８に進める。一方、第１の制御部２２は、ＳＷ２６が備える互換性のあるリビジョンの範囲内にそのホスト１０のリビジョンが含まれない場合、処理をＳ３１０に進める。
【００４２】
ステップＳ３０８において、第１の制御部２２は、互換性のあるＳＷ１２を備えるホスト１０との接続を確立する（接続を完了する）。
【００４３】
ステップＳ３１０において、第１の制御部２２は、互換性のないＳＷ１２を備えるホスト１０との接続を保留する。
【００４４】
ステップＳ３１２において、ＳＷ１２のアップデートが完了したホスト１０は、第２の制御部２４と接続を試行する。
【００４５】
ステップＳ３１４において、第２の制御部２４は、ＳＷ１２のアップデートが完了したホスト１０からの接続を認識することにより、そのホスト１０のＳＷ１２のリビジョンを読み出し、ＳＷ３０が備える互換性のあるリビジョンの範囲情報と比較する。
【００４６】
ステップＳ３１６において、第２の制御部２４は、ＳＷ３０が備える互換性のあるリビジョンの範囲内にそのホスト１０のリビジョンが含まれる場合、処理をＳ３１８に進める。一方、第２の制御部２４は、ＳＷ３０が備える互換性のあるリビジョンの範囲内にそのホスト１０のリビジョンが含まれない場合、処理をＳ３２０に進める。
【００４７】
ステップＳ３１８において、第２の制御部２４は、互換性のあるＳＷ１２を備えるホスト１０との接続を確立する（接続を完了する）。
【００４８】
ステップＳ３２０において、第２の制御部２４は、互換性のないＳＷ１２を備えるホスト１０との接続を保留する。
【００４９】
図５は、本発明の第１の実施形態に係るクラスタシステム１のステップＳ１１４の詳細を示すフローチャートである。
【００５０】
図５に示すように、ステップＳ４０２において、ＳＷ３０のアップデートが完了した第２の制御部２４は、ホスト１０との接続を試行する。
【００５１】
ステップＳ４０４において、第２の制御部２４は、ホスト１０のＳＷ１２のリビジョンを読み出し、アップデートされたＳＷ３０が備える互換性のあるリビジョンの範囲情報と比較する。
【００５２】
ステップＳ４０６において、第２の制御部２４は、アップデートされたＳＷ３０が備える互換性のあるリビジョンの範囲内にホスト１０のリビジョンが含まれる場合、処理をＳ４０８に進める。一方、第２の制御部２４は、アップデートされたＳＷ３０が備える互換性のあるリビジョンの範囲内にホスト１０のリビジョンが含まれない場合、処理をＳ４１０に進める。
【００５３】
ステップＳ４０８において、第２の制御部２４は、互換性のあるＳＷ１２を備えるホスト１０との接続を確立する（接続を完了する）。
【００５４】
ステップＳ４１０において、第２の制御部２４は、互換性のないＳＷ１２を備えるホスト１０との接続を保留する。
【００５５】
ステップＳ４１２において、第２の制御部２４は、全てのホスト１０に対して、上記Ｓ４０２〜Ｓ４１０を行った場合、処理を終了する。一方、第２の制御部２４は、全てのホスト１０に対して、上記Ｓ４０２〜Ｓ４１０の動作を行っていない場合、処理をＳ４０２に戻す。
【００５６】
ここで、制御装置２０を介して、異なるホスト１０の間における情報交換を行う場合について説明する。図１に示すように、各ホスト１０と制御装置２０の備える第１の制御部２２及び第２の制御部２４との接続が確立されている場合には、異なるホスト間における情報交換は、第１の制御部２２及び第２の制御部２４のいずれか一方を介して行う。
【００５７】
一方、図６は、クラスタシステムのアップデート途中における、各ホスト１０Ａ〜１０ｎと制御装置２０との接続状況を表す図である。図６に示すように、第１の制御部２２のＳＷ２６及び複数のホスト１０Ａ〜１０ｎのうちの１つのホスト１０ＡのＳＷ１２Ａのアップデートが完了した場合を考える。このとき、第１の制御部２２とホスト１０Ａとの接続は確立していることとする。また、第２の接続部２４とその他のホスト１０Ｂ〜１０ｎとの接続は確立していることとする。
【００５８】
ここで、ホスト１０Ｂが、ホスト１０Ａと情報交換を行う場合を考える。ホスト１０Ｂは、第２の制御部２４に、ホスト１０Ａと情報交換を行う指示を出す。しかし、第２の制御部２４は、ホスト１０Ａとの接続がないことを認識し、第１の制御部２２にホスト１０Ｂからの指示を転送する。指示を転送された第１の制御部２２は、ホストＡとの接続が確立していることを認識し、ホスト１０Ａに指示を転送する。上記のように、ホストＢは、第１の制御部２２及び第２の制御部２４を介して、ホストＡと情報交換を行う。
【００５９】
したがって、第１の実施形態に係るクラスタシステム１は、ホストコンピュータと制御装置との間のインタフェース仕様の変更を伴う機能強化を行うホストコンピュータのＳＷおよび制御装置のＳＷのアップデートを行う場合において、システム全体を停止することなく双方のアップデートを行うことができる。その理由は、第１の制御部２２、各ホスト１０、第２の制御部２４の順にアップデートを行うからである。また、第１の制御部２２及び第２の制御部２４は、アップデートを行った際に、各ホスト１０との接続を試行し、互換性のあるＳＷ１２を有するホスト１０と接続するからである。また、各ホスト１０は、アップデートを行った際に、第１の制御部２２及び第２の制御部２４との接続を試行することにより、第１の制御部２２及び第２の制御部が、互換性のあるＳＷ１２を有するホスト１０と接続するからである。
【符号の説明】
【００６０】
１    クラスタシステム
１０    ホストコンピュータ（ホスト）
１２、２６、３０    ソフトウェア（ＳＷ）
１４、２８、３２    通信インタフェース（インタフェース）
２０    制御装置
２２    第１の制御部
２４    第２の制御部
【要約】      （修正有）【課題】ホストコンピュータ（ホスト）と制御装置との間のインタフェース（ＩＦ）仕様の変更を伴うホストのソフトウェア（ＳＷ）および制御装置のＳＷのアップデートを行う場合において、システム全体を停止することなく双方のアップデートを行うことができるクラスタシステムなどを提供する。【解決手段】クラスタシステム１は、複数のホストと、各ホストにより共有される第１の制御部及び第２の制御部からなる制御装置とによって構成されるクラスタシステムにおいて、ホストは、第１の制御部及び第２の制御部とのＩＦを制御するＳＷを備え、第１の制御部及び第２の制御部は、ホストとのＩＦを制御するＳＷを備え、ホストは、第１の制御部のＳＷのアップデートが完了するのに応じて、自コンピュータのＳＷを１台ずつアップデートし、第２の制御部は、ホストの全てのＳＷのアップデートが完了するのに応じて、第２の制御部のＳＷをアップデートする。【選択図】図１【図１】
0005447626.tif 000002
【図２】
0005447626.tif 000003
【図３】
0005447626.tif 000004
【図４】
0005447626.tif 000005
【図５】
0005447626.tif 000006
【図６】
0005447626.tif 000007