(57)【要約】【課題】  従来はパッチ適用は頻繁に行う作業ではないにも拘らず、総合監視装置としてパッチ処理専用のコンピュータを設置する必要があるため、コスト的に無駄が多い。【解決手段】  クラスタ１００を構成するコンピュータ２００、３００、４００のうち、一台のコンピュータ２００がマスターとして動作し、他のコンピュータ３００、４００はスレーブとして動作する。コンピュータ２００のパッチ適用手段２１２は、パッチ配布サーバ６００に必要なパッチがあるか否か問い合わせ、必要なパッチがあるときは、パッチ適用指示をスレーブのコンピュータ３００、４００へ送出する。コンピュータ３００、４００は、パッチ適用指示を受けると、自コンピュータをクラスタ１００から切り離した後、パッチ配布サーバ６００からパッチを取得して自コンピュータに、取得したパッチを適用する。これにより、パッチ処理専用のコンピュータを外部に設けなくて済む。【選択図】            図１
2006252437.tif 000002
【特許請求の範囲】
【請求項１】
複数のコンピュータから構成されるクラスタが通信路を介してパッチ配布サーバに接続されたコンピュータシステムのパッチ適用方式であって、
前記複数のコンピュータは、各々パッチ管理プログラム及び記憶装置を有し、一のコンピュータがマスターコンピュータとして動作し、かつ、残りのコンピュータがスレーブコンピュータとして動作するようにされており、
前記マスターコンピュータは、自己のパッチ管理プログラムを動作させ、定期的に前記スレーブコンピュータのパッチ適用状況を確認し、前記パッチ配布サーバに必要なパッチがあるか否か問い合わせ、必要なパッチがあるときは、パッチ適用指示を前記スレーブコンピュータへ送出するパッチ適用指示手段を有し、
前記スレーブコンピュータは、前記パッチ適用指示を受けると、自コンピュータを前記クラスタから切り離した後、前記パッチ配布サーバからパッチを取得して自コンピュータに、該取得したパッチを適用するパッチ適用手段とを備えたことを特徴とするパッチ適用方式。
【請求項２】
前記マスターコンピュータは、前記パッチ適用指示を受けた前記スレーブコンピュータのすべてがパッチを適用し、アプリケーションプログラム又はオペレーティングシステムの再起動が全て終了したことを検出するパッチ適用終了検出手段と、前記パッチの適用の終了を検出すると、前記スレーブコンピュータのうちの一つに対してマスター権限を委譲して、自コンピュータがスレーブコンピュータとなる権限委譲手段と、前記マスター権限委譲後に前記パッチ配布サーバから前記パッチを取得して自コンピュータに適用する手段とを有することを特徴とする請求項１記載パッチ適用方式。
【請求項３】
前記スレーブコンピュータは、前記パッチ適用手段により前記取得したパッチを適用した後、自コンピュータを再立ち上げし、前記クラスタに自コンピュータを組み込む組み込み手段と、前記記憶装置の適応済みＯＳパッチ及びアプリケーションプログラムのバージョン情報からなるプログラム構成情報を最新の情報に更新する更新手段とを有することを特徴とする請求項１又は２記載のパッチ適用方式。
【請求項４】
前記マスターコンピュータの前記パッチ適用指示手段は、前記スレーブコンピュータに対してパッチ適用時刻を指定したパッチ適用指示を行い、前記スレーブコンピュータの前記パッチ適用手段は、前記パッチ適用時刻になった時に、前記パッチ配布サーバからパッチを取得して自コンピュータに適用することを特徴とする請求項１乃至３のうちいずれか一項記載のパッチ適用方式。
【請求項５】
複数のコンピュータから構成されるクラスタが通信路を介してパッチ配布サーバに接続されたコンピュータシステムのパッチ適用方法であって、
前記複数のコンピュータのうち、マスターとされた一のコンピュータが、スレーブとされた残りのコンピュータのパッチ適用状況を定期的に確認し、前記パッチ配布サーバに必要なパッチがあるか否か問い合わせる第１のステップと、
前記マスターとされた一のコンピュータが、前記第１のステップにより必要なパッチがあると判定したときは、パッチ適用指示を前記スレーブとされた残りのコンピュータへ送出する第２のステップと、
前記パッチ適用指示を受けた前記スレーブとされた残りのコンピュータが、自コンピュータを前記クラスタから切り離す第３のステップと、
前記スレーブとされた残りのコンピュータが、前記パッチ配布サーバからパッチを取得して自コンピュータに適用する第４のステップと
を含むことを特徴とするパッチ適用方法。
【請求項６】
前記スレーブとされた残りのコンピュータのすべてが、前記パッチ適用指示に基づくパッチを適用し、アプリケーションプログラム又はオペレーティングシステムの再起動が全て終了したことを、前記マスターとされた一のコンピュータが検出する第５のステップと、
前記マスターとされた一のコンピュータが、前記パッチの適用の終了の検出により、前記スレーブとされた残りのコンピュータのうちの一つのコンピュータに対してマスター権限を委譲して、自コンピュータがスレーブコンピュータとなる第６のステップと、
前記第６のステップにより前記スレーブコンピュータとされたコンピュータに、前記パッチ配布サーバから前記パッチを取得して適用する第７のステップとを更に含むことを特徴とする請求項５記載パッチ適用方法。
【請求項７】
前記スレーブとされた残りのコンピュータは、前記第４のステップにより前記パッチ適用指示に基づくパッチを適用し、アプリケーションプログラム又はオペレーティングシステムを再起動してから、前記クラスタに自コンピュータを組み込む第８のステップを更に含むことを特徴とする請求項５又は６記載のパッチ適用方法。
【請求項８】
前記第２のステップは、前記スレーブとされた残りのコンピュータに対してパッチ適用時刻を指定したパッチ適用指示を行い、前記第３のステップは、前記パッチ適用時刻になった時に、前記パッチ配布サーバからパッチを取得して自コンピュータに適用することを特徴とする請求項５乃至７のうちいずれか一項記載のパッチ適用方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はパッチ適用方式及びパッチ適用方法に係り、特に複数のコンピュータから構成されるクラスタシステムにおいて、システム全体を停止させないパッチ適用方式及びパッチ適用方法に関する。
【背景技術】
【０００２】
コンピュータのプログラムの修正（パッチ）は、旧プログラムに修正を施した新プログラムを旧プログラムと置き換えることにより行われる。このため、修正対象がアプリケーションプログラムであればアプリケーションプログラムの再起動が必要であり、修正対象がＯＳ（オペレーションシステム）であればＯＳの再起動が必要になる。よって、修正対象が業務に関連するアプリケーションプログラム、あるいはＯＳであった場合は、再起動の間、業務システムが停止してしまうことになる。
【０００３】
そこで、コンピュータシステム全体を停止せずにパッチ処理を行うことができるパッチ適用システムが従来、知られている（例えば、特許文献１参照）。このパッチ適用システムは、複数のコンピュータから構成されるクラスタを少なくとも一つ含むコンピュータシステムにおいて、コンピュータシステム全体を停止することなく、コンピュータシステムを構成するそれぞれのコンピュータで動作するオペレーティングシステムに対してパッチ処理を行う総合監視装置をクラスタシステムの外部に設置し、パッチ適用を一元管理する構成である。
【０００４】
一方、複数のホストコンピュータと、そのホストコンピュータを操作するコンソールと、各ホストコンピュータのデータを記憶する共有ファイルからなる情報処理装置では、各ホストコンピュータがマスターとして動作しているか否かを判定し、判定結果に応じてコンソールからのコマンドを処理するか否かを決定し、コマンドを実行し、実行結果をコンソール及び共有ファイルの少なくともいずれか一方に出力するようにしたので、マスターのホストコンピュータのみがコマンド処理を行うことができ、コンソール操作及び処理結果を一元管理することができる装置も従来、知られている（例えば、特許文献２参照）。
【０００５】
【特許文献１】特開２００３−０１５８９４号公報
【特許文献２】特開２００１−０６７３２７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかるに、前記特許文献１記載の従来のパッチ適用システムは、パッチ適用は頻繁に行う作業ではないにも拘らず、総合監視装置としてパッチ処理専用のコンピュータを設置する必要があるため、コスト的に無駄が多いという問題がある。また、前記特許文献２記載の情報処理装置は、マスターのホストコンピュータがコンソール操作及び処理結果を一元管理するものであり、コンソールを設置しなければならない。
【０００７】
本発明は上記の点に鑑みなされたもので、複数のコンピュータから構成されるクラスタシステムにおいて、クラスタシステム以外の管理コンソールを必要とせず、安価な構成によりシステム全体を停止させることなく、自律的にパッチ適用を行い得るパッチ適用方式及びパッチ適用方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するため、第１の発明は、複数のコンピュータから構成されるクラスタが通信路を介してパッチ配布サーバに接続されたコンピュータシステムのパッチ適用方式であって、複数のコンピュータは、各々パッチ管理プログラム及び記憶装置を有し、一のコンピュータがマスターコンピュータとして動作し、かつ、残りのコンピュータがスレーブコンピュータとして動作するようにされており、マスターコンピュータは、自己のパッチ管理プログラムを動作させ、定期的にスレーブコンピュータのパッチ適用状況を確認し、パッチ配布サーバに必要なパッチがあるか否か問い合わせ、必要なパッチがあるときは、パッチ適用指示をスレーブコンピュータへ送出するパッチ適用指示手段を有し、スレーブコンピュータは、パッチ適用指示を受けると、自コンピュータをクラスタから切り離した後、パッチ配布サーバからパッチを取得して自コンピュータに、取得したパッチを適用するパッチ適用手段とを備えたことを特徴とする。
【０００９】
また、上記の目的を達成するため、第２の発明は、マスターコンピュータは、パッチ適用指示を受けたスレーブコンピュータのすべてがパッチを適用し、アプリケーションプログラム又はオペレーティングシステムの再起動が全て終了したことを検出するパッチ適用終了検出手段と、パッチの適用の終了を検出すると、スレーブコンピュータのうちの一つに対してマスター権限を委譲して、自コンピュータがスレーブコンピュータとなる権限委譲手段と、マスター権限委譲後にパッチ配布サーバからパッチを取得して自コンピュータに適用する手段とを有することを特徴とする。
【００１０】
また、上記の目的を達成するため、第３の発明はスレーブコンピュータは、パッチ適用手段により取得したパッチを適用した後、自コンピュータを再立ち上げし、クラスタに自コンピュータを組み込む組み込み手段と、記憶装置の適応済みＯＳパッチ及びアプリケーションプログラムのバージョン情報からなるプログラム構成情報を最新の情報に更新する更新手段とを有することを特徴とする。
【００１１】
また、上記の目的を達成するため、第４の発明は、マスターコンピュータのパッチ適用指示手段は、スレーブコンピュータに対してパッチ適用時刻を指定したパッチ適用指示を行い、スレーブコンピュータのパッチ適用手段は、パッチ適用時刻になった時に、パッチ配布サーバからパッチを取得して自コンピュータに適用することを特徴とする。
【００１２】
また、上記の目的を達成するため、第５の発明は、複数のコンピュータから構成されるクラスタが通信路を介してパッチ配布サーバに接続されたコンピュータシステムのパッチ適用方法であって、複数のコンピュータのうち、マスターとされた一のコンピュータが、スレーブとされた残りのコンピュータのパッチ適用状況を定期的に確認し、パッチ配布サーバに必要なパッチがあるか否か問い合わせる第１のステップと、マスターとされた一のコンピュータが、第１のステップにより必要なパッチがあると判定したときは、パッチ適用指示をスレーブとされた残りのコンピュータへ送出する第２のステップと、パッチ適用指示を受けたスレーブとされた残りのコンピュータが、自コンピュータをクラスタから切り離す第３のステップと、スレーブとされた残りのコンピュータが、パッチ配布サーバからパッチを取得して自コンピュータに適用する第４のステップとを含むことを特徴とする。
【００１３】
また、上記の目的を達成するため、第６の発明は、第５の発明に更に、スレーブとされた残りのコンピュータのすべてが、パッチ適用指示に基づくパッチを適用し、アプリケーションプログラム又はオペレーティングシステムの再起動が全て終了したことを、マスターとされた一のコンピュータが検出する第５のステップと、マスターとされた一のコンピュータが、パッチの適用の終了の検出により、スレーブとされた残りのコンピュータのうちの一つのコンピュータに対してマスター権限を委譲して、自コンピュータがスレーブコンピュータとなる第６のステップと、第６のステップによりスレーブコンピュータとされたコンピュータに、パッチ配布サーバからパッチを取得して適用する第７のステップとを含むことを特徴とする。
【００１４】
また、上記の目的を達成するため、第７の発明は、スレーブとされた残りのコンピュータは、第４のステップによりパッチ適用指示に基づくパッチを適用し、アプリケーションプログラム又はオペレーティングシステムを再起動してから、クラスタに自コンピュータを組み込む第８のステップを更に含むことを特徴とする。
【００１５】
更に、上記の目的を達成するため第８の発明のパッチ適用方法は、上記の第２のステップは、スレーブとされた残りのコンピュータに対してパッチ適用時刻を指定したパッチ適用指示を行い、上記の第３のステップは、パッチ適用時刻になった時に、パッチ配布サーバからパッチを取得して自コンピュータに適用することを特徴とする。
【００１６】
本発明では、クラスタを構成する複数のコンピュータ上でそれぞれパッチ管理プログラムを動作させ、そのうちの一つのマスターとなるコンピュータのパッチ管理プログラムは、定期的にスレーブとなる他のコンピュータのパッチ適用状況を確認し、必要なパッチがあればパッチ適用指示を出す。その後、他のコンピュータのアプリケーションプログラムまたはＯＳの再起動が全て終了したら、マスターとなるコンピュータの管理プログラムは、スレーブとなる他のコンピュータのうちの一つにマスター権限を譲り、自コンピュータにパッチを適用する。スレーブとなる他のコンピュータのパッチ管理プログラムは、マスターとなるコンピュータからの指示を受けて、自コンピュータにパッチを適用する。
【発明の効果】
【００１７】
本発明によれば、マスターとなるコンピュータだけは常にクラスタに組み込まれていて業務を継続しており、スレーブとなる他のコンピュータはパッチ適用指示を受けてパッチを取得してパッチを適用しているため、業務を停止させることなくパッチの適用ができ、また、クラスタを構成する全てのコンピュータ上でパッチ管理プログラムが分散動作しているため、パッチ処理専用のコンピュータをクラスタの外部に配置する必要がない。
【００１８】
更に、本発明によれば、パッチ管理プログラムのマスターの権限の委譲が、パッチ適用が終了したスレーブコンピュータのうちの一つを選んで新しいマスターにするという非常に単純なアルゴリズムで実行されるため、複雑な排他制御なしに安価な構成でクラスタシステム全体が自律的に更新される。
【発明を実施するための最良の形態】
【００１９】
次に、本発明を実施するための最良の形態について図面と共に説明する。
【００２０】
（第１の実施の形態）
図１は本発明になるパッチ適用方式の第１の実施の形態の構成図を示す。同図において、パッチ適用方式は、プログラム制御により動作する３台のコンピュータ（中央処理装置：プロセッサ：データ処理装置）２００、３００、４００から構成されるクラスタ１００と、クラスタ１００と通信路５００によって接続されたパッチ配布サーバ６００とから構成されている。
【００２１】
コンピュータ２００は、パッチ管理プログラム２１０と記憶装置２２０を含み、パッチ管理プログラム２１０は、状態監視手段２１１と、パッチ適用手段２１２と、パッチデータ取得手段２１３を含む。また、記憶装置２２０は、動作モードマスター２２１と、システム構成情報記憶手段２２２と、プログラム構成情報記憶手段２２３を含む。
【００２２】
コンピュータ３００と４００の構成は、コンピュータ２００の構成と同様に、パッチ管理プログラム３１０、４１０と記憶装置３２０、４２０とを含み、パッチ管理プログラム３１０、４１０は、状態監視手段３１１、４１１と、パッチ適用手段３１２、４１２と、パッチデータ取得手段３１３、４１３とを含む。また、記憶装置３２０、４２０は、システム構成情報記憶手段３２２、４２２と、プログラム構成情報記憶手段３２３、４２３と、動作モードとを含む。ただし、コンピュータ２００は記憶装置２２０内に動作モードマスター２２１が記憶されているのに対して、コンピュータ３００、４００の記憶装置３２０、４２０内には動作モードスレーブ３２１、４２１が記憶されている点がコンピュータ２００と異なる。
【００２３】
また、上記の各手段はそれぞれ次のように動作する。すなわち、マスターコンピュータであるコンピュータ２００内の状態監視手段２１１は、パッチ配布サーバ６００に対して、適用すべき最新のパッチがあるかどうかを調べ、必要に応じて「スレーブ」状態のパッチ管理プログラムに対してパッチ適用を指示する。スレーブコンピュータのパッチ適用手段は、「マスター」からのパッチ適用指示を受けてパッチを適用する。パッチデータ取得手段２１３、３１３又は４１３は、パッチ配布サーバ６００から最新のパッチを取得する。
【００２４】
次に、本実施の形態の動作について、図２と、図３、図４のフローチャートとを併せ参照して詳細に説明する。図２（ａ）は、図１のシステム構成情報記憶手段２２２、３２２、４２２の内容の一例を示す。また、図２（ｂ）は、図１のプログラム構成情報記憶手段２２３、３２３、４２２の内容の一例を示す。また、図３は図１の状態監視手段２１１、３１１、４１１の動作説明用フローチャート、図４は図１のパッチ適用手段２１２、３１２、４１２の動作説明用フローチャートを示す。
【００２５】
まず、図１の状態監視手段２１１、３１１、４１１について説明する。状態監視手段２１１、３１１、４１１は、まず、自らのコンピュータの動作モード（図１の２２１または３２１または４２１）がマスターモードかどうかを調べる（図３のステップＡ１）。調べた結果マスターモードでなかった場合は、処理を終了する。
【００２６】
マスターモードであった場合は、更新すべきパッチが存在するかどうかをパッチ配布サーバ６００に対して問い合わせる（図３のステップＡ２）。この際、プログラム構成情報記憶手段２２３、３２３、４２３の記憶内容（図２（ｂ））を参照し、システム構成情報記憶手段２２２、３２２、４２２の記憶内容（図２（ａ））に登録されているパッチ配布サーバ６００に新しいパッチがないかどうかを調べる。
【００２７】
更新すべきパッチが存在しなかった場合は、処理を終了する。更新すべきパッチが存在した場合は、スレーブプログラムに対してパッチ適用を指示する（図３のステップＡ３）。スレーブプログラムとは、システム構成情報記憶手段２２２、３２２、４２３の記憶内容（図２（ａ））の中の「クラスタを構成するコンピュータ」として登録されているコンピュータのうち、自分のコンピュータ以外のコンピュータ上で動作しているパッチ管理プログラムである。
【００２８】
次に、マスターコンピュータであるコンピュータ２００の状態監視手段２１１は、スレーブコンピュータのプログラム構成情報記憶手段３２３、４２３の内容をチェックして、全てのスレーブプログラムがパッチ適用を終了したかを確認する（図３のステップＡ４）。終了していなかった場合は、数分間待ってステップＡ４を再び実行する（図３のステップＡ５）。
【００２９】
全てのスレーブコンピュータにパッチが適用され、アプリケーションプログラム又はＯＳの再起動が全て終了したことが確認できたら、マスターコンピュータであるコンピュータ２００は、スレーブコンピュータであるコンピュータ３００及び４００の一方にマスター権限を委譲し、すなわち、そのコンピュータ３００又は４００のパッチ管理プログラム３１０又は４１０の動作モードをマスターモードに変更し、コンピュータ２００はスレーブコンピュータとなる（図３のステップＡ６）。最後に、自コンピュータ２００にパッチを適用する（図３のステップＡ７）。このパッチ適用処理は、図４のステップＢ２からＢ６の処理と同一内容なので、後でまとめて説明する。以上の状態監視手段は、数十分から数時間程度の一定周期で自動実行されるものとする。
【００３０】
次に、図１のパッチ適用手段２１２、３１２、４１２の動作について、図４のフローチャートと共に説明する。初期状態では、図１に示すように、コンピュータ２００がマスターコンピュータであり、コンピュータ３００及び４００がスレーブコンピュータであるものとする。スレーブコンピュータのパッチ管理プログラム（すなわち、スレーブプログラム）３１０、４１０のパッチ適用手段３１２、４１２は、まず、マスタープログラム２１０からパッチ適用指示が来ているかどうかを調べる（図４のステップＢ１）。来ていなかった場合は、処理を終了する。指示が来ていた場合は、自コンピュータ（図１の３００、４００）をクラスタ１００から切り離す（図４のステップＢ２）。
【００３１】
次に、クラスタ１００から切り離されたコンピュータ３００又は４００のパッチ適用手段３１２又は４１２は、自コンピュータのパッチデータ取得手段（図１の３１３又は４１３）を用いて、パッチ配布サーバ６００からパッチを取得し（図４のステップＢ３）、取得したそのパッチを自コンピュータ３００又は４００に適用する（図４のステップＢ４）。
【００３２】
続いて、パッチ適用手段３１２又は４１２は自コンピュータ３００又は４００を再立ち上げし、クラスタ１００に自コンピュータ３００又は４００を組み込む（図４のステップＢ５）。最後に、パッチ適用手段３１２又は４１２は、自コンピュータのプログラム構成情報記憶手段（図１の３２３又は４２３）の記憶内容を最新の状態に更新する（図４のステップＢ６）。
【００３３】
以上のパッチ適用手段３１２又は４１２による処理は、数十分から数時間程度の一定周期で自動実行されるものとする。
【００３４】
このように、本実施の形態では、マスタープログラムが動作するコンピュータ２００だけは常にクラスタ１００に組み込まれていて業務を継続する一方、スレーブプログラムであるスレーブコンピュータのパッチ管理プログラム３１０、４１０に対してパッチ適用を指示してスレーブコンピュータにパッチ適用させるようにしたため、業務を停止させることなくパッチの適用ができる。
【００３５】
また、本実施の形態では、クラスタ１００を構成する全てのコンピュータ２００、３００及び４００上でパッチ管理プログラム２１０、３１０、４１０が分散動作しているため、パッチ処理専用のコンピュータ又は管理コンソールをクラスタ１００の外部に配置する必要がない。更に、本実施の形態では、パッチ管理プログラム２１０、３１０、４１０のマスターの権限の委譲が、パッチ適用が終了したスレーブコンピュータのうちの一つを選んで新しいマスターにするという非常に単純なアルゴリズムで実行されるため、複雑な排他制御なしにクラスタシステム全体が自律的に更新することができる。
【００３６】
（第２の実施の形態）
次に、本発明の第２の実施例の構成について図面を参照して詳細に説明する。図５は本発明になるパッチ適用方式の第２の実施の形態の構成図を示す。同図において、本実施の形態のパッチ適用方式は、プログラム制御により動作する３台のコンピュータ（中央処理装置：プロセッサ：データ処理装置）２００、３００、４００から構成されるクラスタ１００と、クラスタ１００と通信路５００によって接続されたパッチ配布サーバ６００とから構成されている。
【００３７】
コンピュータ２００は、パッチ管理プログラム２１０と記憶装置２２０を含み、パッチ管理プログラム２１０は、状態監視手段２１１と、パッチ適用手段２１２と、パッチデータ取得手段２１３を含む。また、記憶装置２２０は、動作モード２２１と、システム構成情報記憶手段２２２と、プログラム構成情報記憶手段２２３と、パッチ適用スケジュール記憶手段２２４を含む。
【００３８】
コンピュータ３００と４００の構成は、コンピュータ２００と同様であるが、動作モード２２１が「マスター」の状態であるのに対して、動作モード３２１と４２１は「スレーブ」の状態になっていることが異なる。また、本実施の形態の記憶装置２２０、３２０、４２０は、パッチ適用スケジュール記憶手段２２４、３２４、４２４を備えている点が、第１の実施の形態と異なる。
【００３９】
前記の各手段はそれぞれ次のように動作する。状態監視手段２１１は、パッチ配布サーバ６００に対して、適用すべき最新のパッチがあるかどうかを調べ、必要に応じて「スレーブ」状態のパッチ管理プログラム３１０、４１０に対してパッチ適用を指示する。この際、同時に二台以上のスレーブコンピュータ３００、４００上でパッチ適用処理が動作しないように、スレーブコンピュータ３００、４００を一台ずつ選択して、スレーブコンピュータのパッチ適用スケジュール記憶手段３２４、４２４に、パッチ適用の予定時刻を書き込み、そのスレーブコンピュータ３００又は４００のパッチ適用完了を待ってから、次のスレーブコンピュータ４００又は３００のパッチ適用指示を出すようにする。
【００４０】
パッチ適用手段２１２は、「マスター」からのパッチ適用指示を受けた時刻が来たらパッチを適用する。パッチデータ取得手段２１３は、パッチ配布サーバ６００からの最新のパッチを取得する。
【００４１】
次に、図５と図６と、図７、図８のフローチャートを参照して本発明の第２の実施の形態の動作について詳細に説明する。図６（ａ）は、図５のシステム構成情報記憶手段２２２、３２２、４２２の内容の一例を示し、図６（ｂ）は、図５のプログラム構成情報記憶手段２２３、３２３、４２３の内容の一例を示し、更に、図６（ｃ）は、図５のパッチ適用スケジュール記憶手段２２４、３２４、４２４の内容の一例を示す。また、図７は、図５の状態監視手段２１１、３１１、４１１の動作説明用フローチャート、図８は、図５のパッチ適用手段２１２、３１２、４１２の動作説明用フローチャートである。
【００４２】
まず、図５の状態監視手段２１１、３１１、４１１の動作について、図７のフローチャートと共に説明する。状態監視手段２１１、３１１、４１１は、まず、自らの動作モード（図５の２２１、３２１、４２１）がマスターモードかどうかを調べる（図７のステップＣ１）。調べた結果マスターモードでなかった場合は、処理を終了する。ここでは、図５のコンピュータ２００、３００、４００のうち、コンピュータ２００のみがマスターモードであったものとする。従って、コンピュータ３００、４００の状態監視手段３１１、４１１は動作を終了する。
【００４３】
一方、ステップＣ１でマスターモードであったと判定した場合は、状態監視手段（ここでは、コンピュータ２００の状態監視手段２１１）が、更新すべきパッチがあるかどうかをパッチ配布サーバ６００に対して問い合わせる（図７のステップＣ２）。この際、状態監視手段２１１は、プログラム構成情報記憶手段（図６（ｂ））を参照し、システム構成情報記憶手段２２２に登録されているパッチ配布サーバ（図６（ａ）の６００）に新しいパッチが存在するかどうかを調べる。更新すべきパッチが存在しなかった場合は、処理を終了する。
【００４４】
一方、更新すべきパッチが存在した場合は、状態監視手段２１１は、パッチ未適用のスレーブプログラムのうちの一つに対して、パッチ適用時刻を指示する（図７のステップＣ３）。ここで、「スレーブプログラム」とは、システム構成情報記憶手段２２２の登録内容（図６（ａ））の中の「クラスタを構成するコンピュータ」として登録されているコンピュータのうち、自分のコンピュータ２００以外のコンピュータ３００、４００上で動作しているパッチ管理プログラムである。
【００４５】
その後、状態監視手段２１１は、パッチ適用を指示したスレーブコンピュータ３００又は４００のプログラム構成情報記憶手段３２３又は４２３の内容（図６（ｂ））をチェックして、パッチ適用が完了したかどうかを確認する（図７のステップＣ４）。終了していなかった場合は、数分間待って再度確認する（図７のステップＣ５）。
【００４６】
一方、ステップＣ４でパッチ適用が完了していたと判定した場合は、状態監視手段２１１は、他のスレーブコンピュータ３００、４００のプログラム構成情報記憶手段３２３又は４２３の内容（図６（ｂ））をチェックして、全てのスレーブプログラムがパッチ適用を終了したかを確認する（図７のステップＣ６）。パッチ未適用のスレーブコンピュータがあった場合は、ステップＣ３を再び実行する。
【００４７】
このようにして、ステップＣ６で全てのスレーブコンピュータ３００及び４００にパッチが適用されたことが確認できたら、スレーブプログラムのうちの一つの動作モードをマスターモードに変更する（図７のステップＣ７）。最後に、状態監視手段２１１は、自コンピュータ２００にパッチを適用する（図７のステップＣ８）。このパッチ適用処理は、図８のステップＤ２からＤ６の処理と同一内容なので、後でまとめて説明する。以上の状態監視手段２１１の処理は、数十分から数時間程度の一定周期で自動実行されるものとする。
【００４８】
次に、スレーブコンピュータであるコンピュータ３００、４００内のパッチ適用手段３１２、４１２の動作について、図８のフローチャートと共に説明する。スレーブコンピュータのパッチ適用手段３１２、４１２は、まず、マスタープログラムからのパッチ適用指示時刻が来ているかどうかを調べる（図８のステップＤ１）。パッチ適用指示時刻が来ていなかった場合は、処理を終了する。指示されたパッチ適用指示時刻が来ていた場合は、自コンピュータをクラスタ１００から切り離す（図８のステップＤ２）。
【００４９】
パッチ適用手段３１２又は４１２は、上記のステップＤ２による切り離し処理に続いて、パッチデータ取得手段（図５の３１３又は４１３）を用いて、パッチ配布サーバ６００からパッチを取得し（図８のステップＤ３）、取得したそのパッチを自コンピュータに適用する（図８のステップＤ４）。
【００５０】
続いて、パッチ適用手段３１２又は４１２は、上記のパッチ適用後、自コンピュータを再立ち上げし、クラスタ１００に自コンピュータを組み込む（図８のステップＤ５）。最後に、パッチ適用手段３１２又は４１２は、プログラム構成情報記憶手段（図５の３２３又は４２３）の記憶内容を最新の状態に更新すると共に、パッチ適用時刻記憶手段（図５の３２４又は４２４）に、更新済みの印を付ける（図８のステップＤ６）。以上のパッチ適用手段２１２、３１２又は４１２の処理は、数十分から数時間程度の一定周期で自動実行されるものとする。
【００５１】
次に、本発明の第２の実施の形態の効果について説明する。本実施の形態では、第１の実施の形態とほぼ同様な構成をしているため、第１の実施の形態と同様の効果を有する。それに加えて、本発明の第２の実施の形態では、スレーブコンピュータが順番に更新されるようにスケジュールされるため、パッチ適用中のクラスタ全体の処理性能劣化を最小限にすることができる。
【００５２】
なお、本発明は以上の実施の形態に限定されるものではなく、クラスタ構成を取るコンピュータシステム全般において適用が可能である。
【図面の簡単な説明】
【００５３】
【図１】本発明の第１の実施の形態の構成を示すブロック図である。
【図２】図１中のシステム構成情報記憶手段及びプログラム構成情報記憶手段の各内容の一例を示す図である。
【図３】図１中の状態監視手段の動作説明用フローチャートである。
【図４】図１中のパッチ適用手段の動作説明用フローチャートである。
【図５】本発明の第２の実施の形態の構成を示すブロック図である。
【図６】図５中のシステム構成情報記憶手段及びプログラム構成情報記憶手段及びパッチ適用スケジュール記憶手段の各内容の一例を示す図である。
【図７】図５中の状態監視手段の動作説明用フローチャートである。
【図８】図５中のパッチ適用手段の動作説明用フローチャートである。
【符号の説明】
【００５４】
１００  クラスタ    
２００、３００、４００  コンピュータ
２１０、３１０、４１０  パッチ管理プログラム
２１１、３１１、４１１  状態監視手段
２１２、３１２、４１２  パッチ適用手段
２１３、３１３、４１３  パッチデータ取得手段
２２０、３２０、４２０  記憶装置
２２１  動作モードマスター
２２２、３２２、４２２  システム構成情報記憶手段
２２３、３２３、４２３  プログラム構成情報記憶手段
２２４、３２４、４２４  パッチ適用スケジュール記憶手段
３２１、４２１  動作モードスレーブ
５００  通信路
６００  パッチ配布サーバ
【図１】
2006252437.tif 000003
【図２】
2006252437.tif 000004
【図３】
2006252437.tif 000005
【図４】
2006252437.tif 000006
【図５】
2006252437.tif 000007
【図６】
2006252437.tif 000008
【図７】
2006252437.tif 000009
【図８】
2006252437.tif 000010