(57)【要約】【課題】  自動的に順次起動するコンピュータの起動方法および自動的に順次停止するコンピュータの停止方法ならびにこれらの方法を実行するコンピュータシステムを提供する。【解決手段】  Ｎ（Ｎは２以上の整数）個のグループの各グループ（１〜Ｎ）には、他のグループに含まれるコンピュータと主従関係を有するコンピュータ１０が少なくと一つ含まれるシステムである。このシステムは、第Ｊ（Ｊは１以上且つＮ以下）のグループに属し、第Ｊ−１以下のグループに属するコンピュータの少なくとも一つに対し従の関係を有する（ただし、第１のグループに属するコンピュータは、他のコンピュータに対して従の関係を有さない）コンピュータ１０を備える。また、コンピュータの主従関係の情報を保持する記憶装置７０と、主従関係の情報に基づいて、コンピュータを順次、起動または／および停止する制御を行う管理装置４０と、を備える。【選択図】  図１
2005242693.tif 000002
【特許請求の範囲】
【請求項１】
Ｎ（Ｎは２以上の整数）個のグループのいずれかに属するコンピュータを複数台備え、
前記コンピュータがどのグループに属するかについての帰属情報を保持する記憶装置と、
前記帰属情報に基づき、第Ｊ（Ｊは１以上且つＮ−１以下）のグループに属する全てのコンピュータに対して起動の処理を行った後に、第Ｊ＋１のグループに属するコンピュータに対して起動の処理を行う管理装置と、
を備えることを特徴とするコンピュータシステム。
【請求項２】
Ｎ（Ｎは２以上の整数）個のグループのいずれかに属するコンピュータを複数台備え、
前記コンピュータがどのグループに属するかについての帰属情報を保持する記憶装置と、
前記帰属情報に基づき、第Ｊ（Ｊは１以上且つＮ−１以下）のグループに属する全てのコンピュータに対して停止の処理を行った後に、第Ｊ＋１のグループに属するコンピュータに対して停止の処理を行う管理装置と、
を備えることを特徴とするコンピュータシステム。
【請求項３】
Ｎ（Ｎは２以上の整数）個のグループの各グループには、他のグループに含まれるコンピュータと主従関係を有するコンピュータが少なくとも一つ含まれるコンピュータシステムであって、
第Ｊ（Ｊは１以上且つＮ以下）のグループに属し、第Ｊ−１以下のグループに属するコンピュータの少なくとも一つに対し従の関係を有する（ただし、第１のグループに属するコンピュータは、他のコンピュータに対して従の関係を有さない）コンピュータと、
前記コンピュータの主従関係の情報を保持する記憶装置と、
前記主従関係の情報に基づいて、前記コンピュータを順次、起動または／および停止する制御を行う管理装置と、
を備えることを特徴とするコンピュータシステム。
【請求項４】
管理装置は、主となるコンピュータの動作状態を確認し、前記動作状態に基づき、前記主となるコンピュータに対応する従となるコンピュータに対して起動または／および停止の処理を実行するか否かを決定することを特徴とする請求項３記載のコンピュータシステム。
【請求項５】
前記動作状態が、稼動中である場合には前記従となるコンピュータに対して起動の処理を実行し、稼動中でない場合には前記従となるコンピュータに対して何もしないことを特徴とする請求項４記載のコンピュータシステム。
【請求項６】
前記動作状態が、停止中である場合には前記従となるコンピュータに対して停止の処理を実行し、停止中でない場合には前記従となるコンピュータに対して何もしないことを特徴とする請求項４記載のコンピュータシステム。
【請求項７】
管理装置は、前記第Ｊのグループに含まれるすべてのコンピュータに対して起動の処理を実行した後、前記第Ｊ＋１のグループに含まれるすべてのコンピュータに対して起動の処理を実行することを特徴とする請求項３又は５に記載のコンピュータシステム。
【請求項８】
管理装置は、前記第Ｊのグループに含まれるすべてのコンピュータに対して停止の処理を実行した後、前記第Ｊ＋１のグループに含まれるすべてのコンピュータに対して停止の処理を実行することを特徴とする請求項３又は６に記載のコンピュータシステム。
【請求項９】
Ｎ（Ｎは２以上の整数）個のグループのいずれかに属するコンピュータを複数台備え、
前記コンピュータがどのグループに属するかについての帰属情報を保持するシステムにおけるコンピュータの起動方法であって、
前記帰属情報に基づき、第Ｊ（Ｊは１以上且つＮ−１以下）のグループに属する全てのコンピュータに対して起動の処理を行うステップと、
第Ｊ＋１のグループに属するコンピュータに対して起動の処理を行うステップと、
を含むことを特徴とするコンピュータの起動方法。
【請求項１０】
Ｎ（Ｎは２以上の整数）個のグループの各グループには、他のグループに含まれるコンピュータと主従関係を有するコンピュータが少なくとも一つ含まれるシステムにおけるコンピュータの起動方法であって、
第Ｊ（Ｊは１以上且つＮ以下）のグループに属し、第Ｊ−１以下のグループに属するコンピュータの少なくとも一つに対し従の関係を有する（ただし、第１のグループに属するコンピュータは、他のコンピュータに対して従の関係を有さない）コンピュータについての主従関係の情報を読込むステップと、
前記コンピュータに対し主となるコンピュータの動作状態を確認するステップと、
前記動作状態に基づいて、前記主となるコンピュータに対応する従となるコンピュータの起動の処理を実行するステップと、
を含むことを特徴とするコンピュータの起動方法。
【請求項１１】
管理装置は、前記第Ｊのグループに含まれるすべてのコンピュータに対して起動の処理を実行した後、前記第Ｊ＋１のグループに含まれるすべてのコンピュータに対して起動の処理を実行することを特徴とする請求項１０記載のコンピュータの起動方法。
【請求項１２】
Ｎ（Ｎは２以上の整数）個のグループのいずれかに属するコンピュータを複数台備え、
前記コンピュータがどのグループに属するかについての帰属情報を保持するシステムにおけるコンピュータの停止方法であって、
前記帰属情報に基づき、第Ｊ（Ｊは１以上且つＮ−１以下）のグループに属する全てのコンピュータに対して停止の処理を行うステップと、
第Ｊ＋１のグループに属するコンピュータに対して停止の処理を行うステップと、
を含むことを特徴とするコンピュータの停止方法。
【請求項１３】
Ｎ（Ｎは２以上の整数）個のグループの各グループには、他のグループに含まれるコンピュータと主従関係を有するコンピュータが少なくとも一つ含まれるシステムにおけるコンピュータの停止方法であって、
第Ｊ（Ｊは１以上且つＮ以下）のグループに属し、第Ｊ−１以下のグループに属するコンピュータの少なくとも一つに対し従の関係を有する（ただし、第１のグループに属するコンピュータは、他のコンピュータに対して従の関係を有さない）コンピュータについての主従関係の情報を読込むステップと、
前記コンピュータに対し主となるコンピュータの動作状態を確認するステップと、
前記動作状態に基づいて、前記主となるコンピュータに対応する従となるコンピュータの停止の処理を実行するステップと、
を含むことを特徴とするコンピュータの停止方法。
【請求項１４】
管理装置は、前記第Ｊのグループに含まれるすべてのコンピュータに対して停止の処理を実行した後、前記第Ｊ＋１のグループに含まれるすべてのコンピュータに対して停止の処理を実行することを特徴とする請求項１３記載のコンピュータの停止方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータの起動方法および停止方法ならびにコンピュータシステムに関し、特に複数のコンピュータの起動順序または停止順序が、他のコンピュータの状態に基づいて定まる起動方法または停止方法ならびにコンピュータシステムに関する。
【背景技術】
【０００２】
コンピュータシステムでは、サービスの高度化、処理の高速化に伴い、処理の負荷分散、機能分散が可能なように複数台のコンピュータを分散配置することが行われている。このようなシステムをより効率的に管理運用する方法の一つに、ジョブを複数台の処理装置に分散させて実行する分散情報処理方法及びシステムが知られている。あるジョブを実行するにあたり、時刻や先行する他のジョブの終了を起動条件とするような実行制御を行う場合、一台から数十台の処理装置において、制御を可能とするシステムである。これは、クラスタ接続という構成により、複数の処理装置で資源を共有し合い、複数台の処理装置をあたかも一台の装置のように管理可能とする技術である。
【０００３】
さらに、分散システム全体としてのスループットを向上し、数十台から数百台の処理装置における数千個から数万個のジョブの実行制御と異常制御及び複数日に跨がる実行制御を可能とし、実行状況の監視を容易に実現できる大規模分散情報処理方法及びシステムが特許文献１に開示されている。このシステムは、実行すべき複数のジョブを階層的にグループ化されたジョブグループを単位として分散情報処理装置に実行させるジョブグループを指示し、分散情報処理装置は、統括管理装置からの指示に基づいてジョブグループのジョブを実行するものである。
【０００４】
一方、他の技術分野においては、複数の機器を連動させて、特定の条件において所定の機器を起動させる方法が知られている。例えば、特許文献２には、オーディオ・ビジュアル機器等の電子機器システムを連動させる技術が開示されている。このシステムでは、複数の電子機器が相互にデータ通信可能なように接続され、これらの電子機器がデータ通信により動作状態を変更可能なように構成されている。複数の電子機器のうちの１個の電子機器の状態変化に連動させて他の電子機器を所定の連動条件に従った状態にさせる連動手段と、ユーザの操作により連動条件の内容を表示画面に出力させながら連動条件を設定可能とする連動条件設定手段とを備えるものである。
【０００５】
また、特許文献３には、一連の定型的な順序に従った制御操作が一括起動でき、操作が簡略で、きめ細かな自動制御が可能なビル管理装置が開示されている。このビル管理装置は、制御機器データを登録する制御機器登録手段、連動条件データを登録する連動条件登録手段、制御続行条件データを登録する制御続行条件登録手段、制御開始を指示する制御指示手段、および連動条件が整っているときに、制御機器データの最初に登録されている設備機器の制御の要求を行い、その後、制御続行条件が成立したことを確認しながら、制御機器データの２番目以降に登録されている設備機器の制御の要求を順次行う連動制御実行手段を備えたものである。このビル管理装置は、制御続行条件を登録し、その登録内容に従って連動制御を実行することにより、制御条件を満たしている場合には定型的な順序に従って制御操作を簡略に行うことを可能とし、制御条件を満たさない場合には連動制御を自動的に中止して、安全性の高い制御を実行することを可能にするとともに、次の設備機器の制御までの制御待ち時間も設定可能とすることにより、制御対象となる各設備機器の起動時の特性に合わせた制御を可能とするものである。
【０００６】
【特許文献１】特開平９−１６５２７号公報  （図２）
【特許文献２】特開２００３−１４３６６６号公報  （図３）
【特許文献３】特開平８−１６１０１１号公報  （図１）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
複数台のコンピュータからなるシステムでは、例えばサーバのようなコンピュータから提供されるサービスは、他のサービスに依存していることが多い。そのため、特定のサービスを提供するコンピュータが予め起動していないと、このサービスに依存している他のサービスを提供するコンピュータを起動しても他のサービスを提供できない場合がある。従来、そのようなコンピュータ間の依存関係に従って複数のコンピュータを起動または停止する場合、作業者が全て手動で操作するか、または予めスケジューリングした時間に従ってプログラム実行するかであった。しかし、予めスケジューリングした時間に従ってプログラム実行する場合、コンピュータの稼動状況を何ら考慮せずにスケジューリングした時間に従って、コンピュータを起動または停止してしまう。すなわち、スケジューリングされたプログラム実行は、設定された時間に従って実行する機能であり、コンピュータの稼動状況を何ら考慮しないものであった。したがって、コンピュータを適切に起動又は停止することができない場合が生じることがあった。そこで、複数のコンピュータを自動的に順次、起動又は停止して操作性を高めることが望まれていた。
【０００８】
特許文献１に開示されているシステムは、実行すべき複数のジョブを階層的にグループ化し、ジョブグループを単位として実行するように構成されている。しかしながら、このシステムではジョブの起動を目的としており、コンピュータそのもの起動については触れられていない。すなわち、複数のコンピュータが起動したことを確認した後、このコンピュータに連動して特定のコンピュータを起動させるような技術は、何ら開示していない。
【０００９】
また、特許文献２の電子機器システムは、電子機器の連動関係がユーザにより設定され、電子機器の電源オン・オフが可能となっている。すなわち、連動関係をユーザによって容易に設定することが目的であって、階層的にグループ化された機器を自動的に順次起動する技術とは異なるものである。
【００１０】
さらに、特許文献３のビル管理装置は、一連の定型的な順序に従った制御操作が一括起動でき、操作が簡略で、きめ細かな自動制御が可能な装置であり、階層的にグループ化された機器を自動的に順次起動する技術とは異なるものである。
【００１１】
一方、コンピュータシステムでは、保守点検、異常処理、あるいは定期的なサービス休止等のために、コンピュータシステムを順次停止させる必要がある。このような場合、停止するにあたって、再起動の際の正常動作を確保するために、個々のコンピュータの停止順を所定の順序で行う必要がある。しかしながら、従来のシステムでは、起動方法について、種々の技術を開示しているが、自動的に順次停止する方法については何ら開示していない。
【００１２】
本発明の目的は、自動的に順次起動するコンピュータの起動方法および自動的に順次停止するコンピュータの停止方法ならびにこれらの方法を実行するコンピュータシステムを提供することにある。
【課題を解決するための手段】
【００１３】
前記目的を達成するために、本発明に係るコンピュータシステムは、第１のアスペクトによれば、Ｎ（Ｎは２以上の整数）個のグループのいずれかに属するコンピュータを複数台備える。また、コンピュータがどのグループに属するかについての帰属情報を保持する記憶装置と、帰属情報に基づき、第Ｊ（Ｊは１以上且つＮ−１以下）のグループに属する全てのコンピュータに対して起動の処理を行った後に、第Ｊ＋１のグループに属するコンピュータに対して起動の処理を行う管理装置と、を備える。
【００１４】
本発明に係るコンピュータシステムは、第２のアスペクトによれば、Ｎ（Ｎは２以上の整数）個のグループのいずれかに属するコンピュータを複数台備える。また、コンピュータがどのグループに属するかについての帰属情報を保持する記憶装置と、帰属情報に基づき、第Ｊ（Ｊは１以上且つＮ−１以下）のグループに属する全てのコンピュータに対して停止の処理を行った後に、第Ｊ＋１のグループに属するコンピュータに対して停止の処理を行う管理装置と、を備える。
【００１５】
本発明に係るコンピュータシステムは、第３のアスペクトによれば、Ｎ（Ｎは２以上の整数）個のグループの各グループには、他のグループに含まれるコンピュータと主従関係を有するコンピュータが少なくとも一つ含まれるシステムである。このシステムは、第Ｊ（Ｊは１以上且つＮ以下）のグループに属し、第Ｊ−１以下のグループに属するコンピュータの少なくとも一つに対し従の関係を有する（ただし、第１のグループに属するコンピュータは、他のコンピュータに対して従の関係を有さない）コンピュータを備える。また、コンピュータの主従関係の情報を保持する記憶装置と、主従関係の情報に基づいて、コンピュータを順次、起動または／および停止する制御を行う管理装置と、を備える。
【００１６】
本発明に係るコンピュータの起動方法は、第４のアスペクトによれば、Ｎ（Ｎは２以上の整数）個のグループのいずれかに属するコンピュータを複数台備え、コンピュータがどのグループに属するかについての帰属情報を保持するシステムにおける方法である。この方法は、帰属情報に基づき、第Ｊ（Ｊは１以上且つＮ−１以下）のグループに属する全てのコンピュータに対して起動の処理を行うステップと、第Ｊ＋１のグループに属するコンピュータに対して起動の処理を行うステップと、を含む。
【００１７】
本発明に係るコンピュータの起動方法は、第５のアスペクトによれば、Ｎ（Ｎは２以上の整数）個のグループの各グループには、他のグループに含まれるコンピュータと主従関係を有するコンピュータが少なくとも一つ含まれるシステムにおける方法である。この方法は、第Ｊ（Ｊは１以上且つＮ以下）のグループに属し、第Ｊ−１以下のグループに属するコンピュータの少なくとも一つに対し従の関係を有する（ただし、第１のグループに属するコンピュータは、他のコンピュータに対して従の関係を有さない）コンピュータについての主従関係の情報を読込むステップと、コンピュータに対し主となるコンピュータの動作状態を確認するステップと、動作状態に基づいて、主となるコンピュータに対応する従となるコンピュータの起動の処理を実行するステップと、を含む。
【００１８】
本発明に係るコンピュータの停止方法は、第６のアスペクトによれば、Ｎ（Ｎは２以上の整数）個のグループのいずれかに属するコンピュータを複数台備え、コンピュータがどのグループに属するかについての帰属情報を保持するシステムにおける方法である。この方法は、帰属情報に基づき、第Ｊ（Ｊは１以上且つＮ−１以下）のグループに属する全てのコンピュータに対して停止の処理を行うステップと、第Ｊ＋１のグループに属するコンピュータに対して停止の処理を行うステップと、を含む。
【００１９】
本発明に係るコンピュータの停止方法は、第７のアスペクトによれば、Ｎ（Ｎは２以上の整数）個のグループの各グループには、他のグループに含まれるコンピュータと主従関係を有するコンピュータが少なくとも一つ含まれるシステムにおける方法である。この方法は、第Ｊ（Ｊは１以上且つＮ以下）のグループに属し、第Ｊ−１以下のグループに属するコンピュータの少なくとも一つに対し従の関係を有する（ただし、第１のグループに属するコンピュータは、他のコンピュータに対して従の関係を有さない）コンピュータについての主従関係の情報を読込むステップと、コンピュータに対し主となるコンピュータの動作状態を確認するステップと、動作状態に基づいて、主となるコンピュータに対応する従となるコンピュータの停止の処理を実行するステップと、を含む。
【発明の効果】
【００２０】
本発明のシステムは、予め設定されていたコンピュータ依存関係に基づき、単一または複数のコンピュータの起動処理を実行し、その結果に基づいて他の特定のコンピュータの起動処理を行うように動作する。したがって、コンピュータが自動的に順次起動することとなり、コンピュータシステムにおける操作性を高めることができる。
【００２１】
また、予め設定されていたコンピュータ依存関係に基づき、単一または複数のコンピュータの停止処理を実行し、その結果に基づいて他の特定のコンピュータの停止処理を行うように動作する。したがって、コンピュータが自動的に停止することとなり、コンピュータシステムにおける操作性を高めることができる。
【発明を実施するための最良の形態】
【００２２】
本発明に係るコンピュータシステムの構成について説明する。図１は、本発明の実施形態に係るコンピュータシステムの構成を示すブロック図である。図１において、コンピュータシステムは、コンピュータ１０を制御および監視する管理装置４０と、コンピュータ１０に関する情報を記憶する記憶装置７０と、一台以上のコンピュータ１０からなるコンピュータのグループ１〜Ｎ（Ｎは１以上の整数）とを含む。ここで、コンピュータ１０とは、物理的なハードウェアから構成される物理的なコンピュータのみならず、物理的なハードウェアおよびソフトウェアによって実現された仮想的なハードウェアから構成される仮想コンピュータを含んでいてもよい。
【００２３】
管理装置４０は、制御部５０と、監視部６０とを備えている。また、記憶装置７０は、依存関係記憶部８０と、設定情報記憶部９０とを備えている。制御部５０は、依存関係記憶部８０と設定情報記憶部９０から読み出した情報に従い、監視部６０に各コンピュータ１０の状態を問い合わせる。制御部５０は、問い合わせの結果に応じて、各コンピュータ１０に対して起動処理または停止処理を実行する。
【００２４】
監視部６０は、制御部５０からの問い合わせに対し指定されたコンピュータ１０の現在の状態の情報を取得し、取得失敗した場合も含めて、取得した情報を制御部５０へ提供する。コンピュータの状態の例としては、“起動途中”、“停止途中”、“稼動中”、“異常”、“停止”、“不明”等がある。ここで、“稼動中”とは、コンピュータが起動され、正常に動作している状態のことを指す。
【００２５】
依存関係記憶部８０には、起動順序および停止順序を表すために、各コンピュータの主従関係が、コンピュータ依存関係の情報として予め記憶されている。ここで、グループＮ（Ｎは２以上の整数）は、グループ（Ｎ−１）以下の全てのコンピュータに起動処理が実行されて初めて起動処理が行われるコンピュータの集合であり、あるいは、グループ（Ｎ−１）以下の全てのコンピュータに停止処理が実行されて初めて停止処理が行われるコンピュータの集合である。ただし、グループ１は、他のコンピュータが起動または停止していなくても単独で起動または停止できるコンピュータの集合である。
【００２６】
設定情報記憶部９０は、制御部５０がコンピュータを起動するときに、該当コンピュータがすでに稼動中であった場合の“再起動する”、“停止する”、“電源オフする”、“何もしない”等の設定動作内容と、コンピュータの状態が“稼動中”になるまで待機するためのタイムアウト時間等の一連の動作に必要な設定情報を各コンピュータに対して予め記憶している。
【００２７】
以上のようなコンピュータシステムにおいて、Ｎ（Ｎは２以上の整数）個のグループの各グループには、他のグループに含まれるコンピュータと主従関係を有するコンピュータが少なくとも一つ含まれる。また、第Ｊ（Ｊは１以上且つＮ以下）のグループには、第Ｊ−１以下のグループに属するコンピュータの少なくとも一つに対し従の関係を有するコンピュータが含まれている。ただし、第１のグループに属するコンピュータは、他のコンピュータに対して従の関係を有さない。この主従関係（依存関係）の情報は、依存関係記憶部８０に記憶され、記憶されている主従関係の情報に基づいて、制御部５０は、コンピュータを順次起動するように動作する。また、制御部５０は、主従関係の情報に基づいて、コンピュータを順次停止するように動作する。
【実施例１】
【００２８】
次に、図１、図２を参照して、コンピュータの起動方法について詳細に説明する。図２は、本発明の第１の実施例に係るコンピュータの起動方法を表すフローチャート図である。
【００２９】
コンピュータを順次起動する場合、まず制御部５０は、依存関係記憶部８０および設定情報記憶部９０から各コンピュータに対するコンピュータ依存関係や設定動作等の情報を読み込む（ステップＳ１）。
【００３０】
ステップＳ２は、ステップＳ１５と対になって、ステップＳ２からステップＳ１５までの処理を、所定のグループについて実行することを意味する。
【００３１】
また、ステップＳ３は、ステップＳ１４と対になって、ステップＳ３からステップＳ１４までの処理を、所定のコンピュータについて実行することを意味する。
【００３２】
制御部５０は、グループＴ（Ｔは１以上の整数）に含まれる各コンピュータの現在の状態を監視部６０に問い合わせ、状態の情報を取得する。監視部６０は、後に説明する処理（処理Ｐ）を実行して状態の情報を制御部５０に与える。すなわち、監視部６０は、コンピュータの状態の情報の取得に成功した場合には、このコンピュータの状態の情報を制御部５０へ提供し、取得に失敗した場合には、このコンピュータの状態を“不明”として制御部５０へ提供する（ステップＳ４）。
【００３３】
制御部５０は、監視部６０から提供された、グループＴに含まれる各コンピュータの状態が“稼動中”であるか否かを判断する（ステップＳ５）。
【００３４】
コンピュータの状態が“稼動中”である場合、設定情報記憶部９０からの情報に従い、“再起動する”または“何もしない”等の動作を実行して、このコンピュータの起動処理を完了し（ステップＳ６）、ステップＳ３に戻り、次のコンピュータの起動の処理に移る。
【００３５】
コンピュータの状態が“稼動中”でない場合、このコンピュータの全ての親コンピュータ（主となるコンピュータ）の状態を監視部６０に問い合わせ、状態の情報を取得する。監視部６０は、後に説明する処理（処理Ｐ）を実行して状態の情報を制御部５０に与える（ステップＳ７）。ただし、コンピュータがグループ１に属する場合には、親コンピュータが存在しないので、全ての親コンピュータは“稼動中”であるとみなして何もせず、グループ２以上の場合のみ親コンピュータの状態を取得する。
【００３６】
コンピュータがグループ１に属するために親コンピュータが存在しない場合、またはグループ２以上で全ての親コンピュータが“稼動中”である（ステップＳ８）場合に、制御部５０は、コンピュータを起動する（ステップＳ９）。それ以外の場合は、このコンピュータに対し何もしないで起動処理を完了し、ステップＳ３に戻り、次のコンピュータの起動の処理に移る。
【００３７】
制御部５０は、起動したコンピュータの状態が“稼動中”になるまで、ステップＳ１０、Ｓ１１、Ｓ１２を繰り返し、状態を定期的に監視部６０に問い合わせる。なお、監視部６０は、後に説明する処理（処理Ｐ）を実行して状態の情報を制御部５０に与える。
【００３８】
ステップＳ１１で、起動したコンピュータの状態が“稼動中”となった場合、このコンピュータに対する起動処理を完了し、ステップＳ１４に進む。また、ステップＳ１２で、設定情報記憶部９０から得た情報であるタイムアウト時間を超えてしまった場合、設定情報記憶部９０からの情報に従い、“停止する”または“何もしない”等の動作を実行して起動処理を完了し（ステップＳ１３）、ステップＳ１４に進む。
【００３９】
グループＴに含まれる各コンピュータに対して起動処理を行い（ステップＳ３からＳ１４まで）、グループＴに含まれる全てのコンピュータに対して、起動処理が完了したら、次にグループ（Ｔ＋１）に含まれる各コンピュータに対して同様の処理を実行する。
【００４０】
各グループに対する起動処理を行い（ステップＳ２からＳ１５まで）、全てのグループに対して、起動処理が完了したら、コンピュータの順次起動は終了する。
【００４１】
次に監視部６０で実行される処理Ｐについて説明する。図３は、本発明の実施例に係る監視部の処理を表すフローチャート図である。監視部６０は、制御部５０から指定されたコンピュータに現在の状態を要求する（ステップＳ２１）。取得成功した場合は、このコンピュータの現在の状態、または取得失敗した場合は“不明”として状態を取得する（ステップＳ２２）。取得したコンピュータの状態を制御部５０に提供する（ステップＳ２３）。
【００４２】
次に、図４を参照し、具体例を用いて第１の実施例の動作を説明する。図４は、コンピュータの主従関係の例を表すブロック図である。図４において、グループＳ（Ｓは２または３）は、グループ（Ｓ−１）以下の全てのコンピュータが起動していて初めて起動または停止できるコンピュータの集合である。ただし、グループ１は、他のコンピュータが起動または停止していなくても単独で起動または停止できるコンピュータの集合である。また、コンピュータ依存関係を表現する図４の矢印の向きにおいて、矢元のコンピュータが親コンピュータ（主となるコンピュータ）、矢先のコンピュータが子コンピュータ（従となるコンピュータ）に該当する。例えば、図４のコンピュータ２１の親コンピュータは、コンピュータ１１および１２である。また、コンピュータ３１の親コンピュータは、コンピュータ２１であり、コンピュータ３２の親コンピュータは、コンピュータ２１および１３が該当する。
【００４３】
今、図４に示すようなコンピュータ依存関係が依存関係記憶部８０に予め記憶してあり、グループ１から３のいずれかにコンピュータが属するように分類されているとする。また、設定情報記憶部９０には設定動作内容やタイムアウト時間等の一連の動作に必要な設定情報が各コンピュータに対して記憶されているとする。
【００４４】
制御部５０は、依存関係記憶部８０と、設定情報記憶部９０から各コンピュータに対するコンピュータ依存関係や設定動作等の情報を読み込む。制御部５０は、コンピュータ１１、１２および１３の状態を監視部６０に問い合わせる。
【００４５】
今、コンピュータ１３のみが“稼動中”であれば、設定情報記憶部９０からの情報に従い、“再起動する”または“何もしない”等の動作を実行し、コンピュータ１３に対する起動処理が完了する。コンピュータ１１および１２が“稼動中”でなければ、コンピュータ１１および１２の親コンピュータの状態を取得するが、コンピュータ１１および１２はグループ１に属するため親コンピュータは存在しない。したがってコンピュータ１１および１２の親コンピュータは全て“稼動中”とし、“稼動中”でないコンピュータ１１および１２に対して起動を実行する。
【００４６】
制御部５０は、設定情報記憶部９０からの情報であるタイムアウト時間を超えてしまうまで起動させたコンピュータ１１および１２の状態が“稼動中”であるか否かを、定期的に監視部６０に問い合わせる。タイムアウト時間以内に“稼動中”になった場合、コンピュータ１１、１２に対しての起動処理は完了する。タイムアウト時間を超えてしまった場合、設定情報記憶部９０からの情報に従い、“停止する”または“何もしない”等の動作を実行して、コンピュータ１１、１２に対しての起動処理は完了する。グループ１に含まれる全てのコンピュータの起動処理を完了したら、グループ２に起動処理を移す。
【００４７】
コンピュータ２１は、親コンピュータとしてコンピュータ１１および１２を持つ。コンピュータ２１が“稼動中”である場合、設定情報記憶部９０からの情報に従い、“再起動する”または“何もしない”等の動作を実行し、コンピュータ２１に対する起動処理が完了する。また、コンピュータ１１または１２のうち少なくとも一方が“稼動中”でない場合もコンピュータ２１に対して何もしないで起動処理は完了する。
【００４８】
コンピュータ２１が“稼動中”でない場合で、かつコンピュータ１１および１２の両方が“稼動中”である場合、コンピュータ２１に対して起動を実行する。制御部５０は、設定情報記憶部９０からの情報であるタイムアウト時間を超えてしまうまで起動させたコンピュータ２１の状態が“稼動中”であるか否かを、定期的に監視部６０に問い合わせる。タイムアウト時間以内に“稼動中”になった場合、コンピュータ２１に対する起動処理が完了する。タイムアウト時間を超えてしまった場合、設定情報記憶部９０からの情報に従い、“停止する”または“何もしない”等の動作を実行して、コンピュータ２１に対する起動処理が完了する。グループ２に含まれるコンピュータは、コンピュータ２１のみであるので、次に、グループ３に起動処理を移す。
【００４９】
コンピュータ３１は、親コンピュータとしてコンピュータ２１を持つ。コンピュータ３２は、親コンピュータとしてコンピュータ１３および２１を持つ。コンピュータ３１および３２に対しても、先に説明したコンピュータ２１と同様の起動処理を実行する。全てのコンピュータに対して起動処理を完了後、一連の順次起動処理が完了する。
【実施例２】
【００５０】
次に、コンピュータの停止方法について、図１および図５を参照して詳細に説明する。図５は、本発明の第２の実施例に係るコンピュータの停止方法を表すフローチャート図である。第２の実施例では、図２に示した第１の実施例における順次起動が順次停止に変更されている点で異なる。なお、以下の説明において、“停止”は、特に記述しない限り“異常”、“不明”の状態を含むとする。
【００５１】
コンピュータを順次停止する場合、まず制御部５０は、依存関係記憶部８０および設定情報記憶部９０から各コンピュータに対するコンピュータ依存関係や設定動作等の情報を読み込む（ステップＳ３１）。
【００５２】
ステップＳ３２は、ステップＳ４５と対になって、ステップＳ３２からステップＳ４５までの処理を、所定のグループについて実行することを意味する。
【００５３】
また、ステップＳ３３は、ステップＳ４４と対になって、ステップＳ３３からステップＳ４４までの処理を、所定のコンピュータについて実行することを意味する。
【００５４】
制御部５０は、グループＴ（Ｔは１以上の整数）に含まれる各コンピュータの現在の状態を監視部６０に問い合わせ、状態の情報を取得する。監視部６０は、図３で説明した処理Ｐを実行して状態の情報を制御部５０に与える。すなわち、監視部６０は、コンピュータの状態の情報の取得に成功した場合には、このコンピュータの状態の情報を制御部５０へ提供し、取得に失敗した場合には、このコンピュータの状態を“不明”として制御部５０へ提供する（ステップＳ３４）。
【００５５】
制御部５０は、監視部６０から提供された、グループＴに含まれる各コンピュータの状態が“停止”であるか否かを判断する（ステップＳ３５）。
【００５６】
コンピュータの状態が“停止”である場合、設定情報記憶部９０からの情報に従い、“電源オフする”または“何もしない”等の動作を実行して、このコンピュータの停止処理を完了し（ステップＳ３６）、ステップＳ３３に戻り、次のコンピュータの停止の処理に移る。
【００５７】
コンピュータの状態が“停止”でない場合、このコンピュータの全ての親コンピュータの状態を監視部６０に問い合わせ、状態の情報を取得する。監視部６０は、図３で説明した処理Ｐを実行して状態の情報を制御部５０に与える（ステップＳ３７）。ただし、コンピュータがグループ１に属する場合、親コンピュータが存在しないので、全ての親コンピュータは“停止”であるとみなして何もせず、グループ２以上の場合のみ親コンピュータの状態を取得する。
【００５８】
コンピュータがグループ１に属するために親コンピュータが存在しない場合、またはグループ２以上で全ての親コンピュータが“停止”である（ステップＳ３８）場合、制御部５０は、コンピュータを停止する（ステップＳ３９）。それ以外の場合は、このコンピュータに何もしないで停止処理を完了し、ステップＳ３３に戻り、次のコンピュータの停止の処理に移る。
【００５９】
制御部５０は、停止処理を開始したコンピュータの状態が“停止”になるまで、ステップＳ４０、Ｓ４１、Ｓ４２を繰り返し、状態を定期的に監視部６０に問い合わせる。なお、監視部６０は、図３で説明した処理Ｐを実行して状態の情報を制御部５０に与える。
【００６０】
ステップＳ４１で、停止処理を開始したコンピュータの状態が“停止”となった場合、このコンピュータに対する停止処理を完了し、ステップＳ４４に進む。また、ステップＳ４２で、設定情報記憶部９０からの情報であるタイムアウト時間を超えてしまった場合、設定情報記憶部９０からの情報に従い、“電源オフする”または“何もしない”等の動作を実行して停止処理を完了し（ステップＳ４３）、ステップＳ４４に進む。
【００６１】
グループＴに含まれる各コンピュータに対して、停止処理を行い（ステップＳ３３からＳ４４まで）、グループＴに含まれる全てのコンピュータに対して、停止処理が完了したら、グループ（Ｔ＋１）に含まれる各コンピュータに対して同様の処理を実行する。
【００６２】
各グループに対する起動処理を行い（ステップＳ３２からＳ４５まで）、全てのグループに対して、停止処理が完了したら、コンピュータの順次停止は終了する。
【００６３】
次に、図４を参照し、具体例を用いて第２の実施例の動作を説明する。
【００６４】
例えば、図４に示すようなコンピュータ依存関係が依存関係記憶部８０に予め記憶してあり、グループ１から３のいずれかにコンピュータが属するように分類されているとする。また、設定情報記憶部９０には設定動作内容やタイムアウト時間等の一連の動作に必要な設定情報が各コンピュータに対して記憶されているとする。
【００６５】
制御部５０は、依存関係記憶部８０と、設定情報記憶部９０から各コンピュータに対するコンピュータ依存関係や設定動作等の情報を読み込む。制御部５０は、コンピュータ１１および１２および１３の状態を監視部６０に問い合わせる。
【００６６】
今、コンピュータ１３のみが“停止”であれば、設定情報記憶部９０からの情報に従い、“電源オフする”または“何もしない”等の動作を実行し、コンピュータ１３に対しての停止処理は完了する。コンピュータ１１および１２が“停止”でなければ、コンピュータ１１および１２の親コンピュータの状態を取得するが、コンピュータ１１および１２はグループ１に属するため親コンピュータは存在しない。したがってコンピュータ１１および１２の親コンピュータは全て“停止”とし、“停止”でないコンピュータ１１および１２に対して停止を実行する。
【００６７】
制御部５０は、設定情報記憶部９０からの情報であるタイムアウト時間を超えてしまうまで停止させたコンピュータ１１および１２の状態が“停止”であるか否かを、定期的に監視部６０に問い合わせる。タイムアウト時間以内に“停止”になった場合、このコンピュータに対しての停止処理は完了する。タイムアウト時間を超えてしまった場合、設定情報記憶部９０からの情報に従い、“停止する”または“何もしない”等の動作を実行して、このコンピュータに対しての停止処理は完了する。グループ１に含まれる全てのコンピュータの停止処理を完了したら、グループ２に停止処理を移す。
【００６８】
コンピュータ２１は、親コンピュータとしてコンピュータ１１および１２を持つ。コンピュータ２１が“停止”である場合、設定情報記憶部９０からの情報に従い、“電源オフする”または“何もしない”等の動作を実行し、コンピュータ２１に対しての停止処理は完了する。また、コンピュータ１１または１２のうち少なくとも一方が“停止”でない場合もコンピュータ２１に対して何もしないで停止処理は完了する。
【００６９】
コンピュータ２１が“停止”でない場合で、かつコンピュータ１１および１２の両方が“停止”である場合、コンピュータ２１に対して停止を実行する。制御部５０は、設定情報記憶部９０からの情報であるタイムアウト時間を超えてしまうまで停止させたコンピュータ２１の状態が“停止”であるか否かを、定期的に監視部６０に問い合わせる。タイムアウト時間以内に“停止”になった場合、コンピュータ２１に対しての停止処理は完了する。タイムアウト時間を超えてしまった場合、設定情報記憶部９０からの情報に従い、“停止する”または“何もしない”等の動作を実行して、このコンピュータに対しての停止処理は完了する。グループ２に含まれるコンピュータは、コンピュータ２１のみであるので、次にグループ３に停止処理を移す。
【００７０】
コンピュータ３１は、親コンピュータとしてコンピュータ２１を持つ。コンピュータ３２は、親コンピュータとしてコンピュータ１３および２１を持つ。コンピュータ３１および３２に対しても、先に説明したコンピュータ２１と同様の停止処理を実行する。全てのコンピュータに対して停止処理を完了後、一連の順次停止処理が完了する。
【産業上の利用可能性】
【００７１】
コンピュータのメンテナンス等の保守整備のときに適用できる。また、クラスタ技術によりサービスを提供するコンピュータ自身がクラスタリソースとして扱われる用途に適用可能である。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施形態に係るコンピュータシステムの構成を示すブロック図である。
【図２】本発明の第１の実施例に係るコンピュータの起動方法を表すフローチャート図である。
【図３】本発明の実施例に係る監視部の処理を表すフローチャート図である。
【図４】コンピュータ主従関係の例を表すブロック図である。
【図５】本発明の第２の実施例に係るコンピュータの停止方法を表すフローチャート図である。
【符号の説明】
【００７３】
１〜Ｎ  グループ
１０、１１、１２、１３、２１、３１、３２  コンピュータ
４０  管理装置
５０  制御部
６０  監視部
７０  記憶装置
８０  依存関係記憶部
９０  設定情報記憶部
【図１】
2005242693.tif 000003
【図２】
2005242693.tif 000004
【図３】
2005242693.tif 000005
【図４】
2005242693.tif 000006
【図５】
2005242693.tif 000007