(57)【特許請求の範囲】
【請求項１】
最上位のマスターノードには通信媒体を介して複数のノードよりなるクラスタが接続され、末端を除くクラスタのノードには、通信媒体を介して、次段のクラスタのノードが接続される多段クラスタ構成のクラスタシステムのインストール方法において、
前記マスターノードがインストール情報を保持し、自ノードのインストールを行うとともに前記マスターノードに接続されるクラスタのノードに対して起動を指示し、
前記マスターノードに接続されたクラスタのノードから順に末端ノードまでの各ノードが、順次、該ノードの上位ノードからの起動指示を受けて起動し、前記起動指示を行った前記上位ノードから、インストール情報を取得して自ノードのインストールを行うとともに、配下にノードが存在する場合には、該配下のノードに対して、起動を指示し、
前記インストール情報として、インストール手続きと、システムの構成情報と、を有し、前記マスターノードから、配下のノードを、順次起動し、前記各ノードの起動に伴い、前記インストール情報が、順次、下位のノードにダウンロードされ、
前記インストール手続きを、互いに異なる機能ごとに、複数に分割し、各インストール手続きを栽番して記憶保持し、
前記自ノードのインストールにあたり、インストール手続き番号の若番順に、インストール手続きを順次実行する、ことを特徴とするクラスタシステムのインストール方法。
【請求項２】
前記クラスタシステムを構成する各ノードが、起動時にインストール手続きを実行するインストールモードの起動と、起動時にインストール手続きを行わない通常モードの起動とを有する、ことを特徴とする請求項１記載のクラスタシステムのインストール方法。
【請求項３】
（ａ）起動指示を受けたノードが、自ノードがマスターノードであるか否かを判断するステップと、
（ｂ）自ノードがマスターノードである場合、自ノードのインストール用マスタ媒体をマウントした上で、ステップ（ｅ）のインストール手続きの実行に移行するステップと、
（ｃ）自ノードがマスターノードでない場合、自ノードのシステム構成に、インストール用マスタ媒体があるか否か判断し、インストール用マスタ媒体が存在する場合には、インストール用マスタ媒体をマウントし、自ノードのシステム構成にインストール用マスタ媒体が存在しない場合には、起動指示を発行したノードのインストール用マスタ媒体を通信媒体を介してマウントするステップと、
（ｄ）自ノードがマスターノードでない場合、前記起動指示を発行したノードから、インストール手続きと構成情報をダウンロードし、自ノードのディスク装置に格納するステップと、
（ｅ）自ノードのインストール手続きを実行するステップと、
を含む、ことを特徴とする請求項１記載のクラスタシステムのインストール方法。
【請求項４】
インストール手続きの実行にあたり、前記マスターノードは、あらかじめ用意されている構成情報に基づき、インストール手続きを実行し、マスターノード以外のノードは、それぞれ、該ノードに対して起動指示を行ったノードからダウンロードした構成情報に基づき、前記起動指示を行ったノードからダウンロードしたインストール手続きを実行する、ことを特徴とする請求項１記載のクラスタシステムのインストール方法。
【請求項５】
インストール手続きの入力ファイルとして構成情報を有し、前記構成情報を検索して、ノードを識別する識別子によりインストールパラメータを決定し、各ノードの環境情報を作成する、ことを特徴とする請求項４記載のクラスタシステムのインストール方法。
【請求項６】
前記インストール手続きを互いに異なる機能ごとに、複数に分割して記憶保持し、機能ごとの手続きの追加、及び削除を可能とし、インストール手続きの処理を可変自在としてなる、ことを特徴とする請求項１記載のクラスタシステムのインストール方法。
【請求項７】
前記自ノードのインストール手続きを実行するステップ（ｅ）が、
（ｆ１）インストール手続きを実行するノードがノード識別情報を検出するステップと、
（ｆ２）前記ノードが、構成情報を読みこむステップと、
（ｆ３）前記ノードが、子ノードがあるかどうかを判断し、子ノードがあれば、前記子ノードに対して、インストールモードで起動するように要求を出すステップと、
（ｆ４）前記ノードは、前記構成情報を参照し、ノード識別情報をキーとして、インストールパラメータを決定するステップと、
（ｆ５）インストール手続き番号の若番順に、インストール手続きを順次実行するステップと、
を含む、ことを特徴とする請求項４記載のクラスタシステムのインストール方法。
【請求項８】
複数のノードよりなるクラスタシステムであって、最上位のマスターノードには通信媒体を介して複数のノードよりなるクラスタが接続され、末端を除くクラスタのノードには、通信媒体を介して、次段のクラスタのノードが接続される多段クラスタ構成のクラスタシステムにおいて、
前記マスターノードが、インストール情報を記憶保持する記憶手段を備え、自ノードのインストールを行うとともに、前記マスターノードに通信媒体を介して接続されるノードに対して起動を指示する手段を備え、
前記マスターノードに通信媒体を介して接続されるノードから、末端ノードまでの各ノードが、それぞれ、前記ノードの上位ノードから起動指示を受けた際に、前記起動指示を行った前記上位ノードから、インストール情報を受け取って記憶する手段と、前記インストール情報に基づき、自ノードのインストールを行うとともに、配下のノードが存在する場合には、該配下のノードに対して起動を指示する手段と、を備え、
前記インストール情報は、インストール手続きと、システムの構成情報と、を有し、
前記インストール手続きを、互いに異なる機能ごとに、複数に分割し、各インストール手続きを栽番しておき、
前記各ノードが、インストール手続き番号の若番順に、インストール手続きを順次実行する手段を含む、ことを特徴とするクラスタシステムのインストールシステム。
【請求項９】
前記クラスタシステムを構成するノードが、起動時にインストール手続きを実行するインストールモードの起動と、起動時にインストール手続きを行わない通常モードの起動とを有する、ことを特徴とする請求項８記載のクラスタシステムのインストールシステム。
【請求項１０】
インストールモードの起動指示を受けたノードが、
自ノードがマスターノードであるか否かを判断する手段を有し、マスターノードの場合、自ノードのインストール用マスタ媒体をマウントした上でインストール手続きの実行に移行し、
マスターノードでない場合には、自ノードのシステム構成に、インストール用マスタ媒体があるか否か判断し、インストール用マスタ媒体が存在する場合、インストール用マスタ媒体をマウントする手段と、
自ノードのシステム構成にインストール用マスタ媒体が存在しない場合、起動指示を発行したノードのインストール用マスタ媒体を通信媒体を介してマウントする手段と、
前記起動指示を発行したノードから、インストール手続きと構成情報をダウンロードしディスクに格納する手段と、
自ノードのインストール手続きを実行する手段と、
を含む、ことを特徴とする請求項８記載のクラスタシステムのインストールシステム。
【請求項１１】
インストール手続きの実行にあたり、前記マスターノードは、あらかじめ用意されている構成情報に基づき、インストール手続きを実行し、マスターノード以外のノードは、それぞれ、該ノードに対してインストールモードの起動指示を行ったノードからダウンロードした構成情報に基づき、前記起動指示を行ったノードからダウンロードしたインストール手続きを実行する、ことを特徴とする請求項８記載のクラスタシステムのインストールシステム。
【請求項１２】
前記各ノードは、インストール手続きの入力ファイルとして、構成情報を有し、前記構成情報を参照し、ノードを識別する識別子によって、インストールパラメータを決定する各ノードの環境情報を作成する手段を備える、ことを特徴とする請求項８記載のクラスタシステムのインストールシステム。
【請求項１３】
前記ノードが、自ノードのノード識別情報の検出をする手段と、
前記ノードが構成情報を読み込む手段と、
子ノードが存在するか否かを判断し、子ノードが存在すれば、前記子ノードに対して、インストールモードで起動するように要求を出す手段と、
前記構成情報を参照して、前記ノード識別情報をキーとして、インストールパラメータを決定する手段と、
前記接続するディスク装置の初期設定を行い、自ノードのインストール用マスタ媒体に含まれるインストール用パッケージか、あるいはノードが末端ノードの場合には、起動指示を行った上位ノードのインストール用パッケージを、自ノードの前記ディスク装置に格納する手段と、
前記決定されたインストールパラメータの値に基づき、ノード固有の値を設定することで、システム起動時に動作する環境情報を作成する手段と、
を含む、ことを特徴とする請求項８記載のクラスタシステムのインストールシステム。
【請求項１４】
前記インストール手続きを、互いに異なる機能ごとに、複数に分割しておき、必要な機能ごとの手続きを追加、及び削除可能とし、インストール手続きの処理を可変自在としてなる、ことを特徴とする請求項８記載のクラスタシステムのインストールシステム。
【請求項１５】
前記各ノードが、ノード識別情報を検出する手段と、
前記構成情報を読み込み、該ノードに子ノードがあるかどうかを判断し、子ノードがあれば、前記子ノードに対して、インストールモードで起動するように要求を出す手段と、
前記構成情報を参照し、ノード識別情報をキーとして、インストールパラメータを決定する手段と、
インストール手続き番号の若番順に、インストール手続きを順次実行する手段と、
を含む、ことを特徴とする請求項８記載のクラスタシステムのインストールシステム。
【請求項１６】
複数のノードよりなるクラスタシステムであって、最上位のマスターノードには通信媒体を介して複数のノードよりなるクラスタが接続され、末端を除くクラスタのノードには、通信媒体を介して、次段のクラスタのノードが接続される多段クラスタ構成とされ、
前記マスターノードは、インストール情報を記憶保持し、自ノードのインストールを行うとともに、前記マスターノードに通信媒体を介して接続されるノードに対して起動を指示し、前記マスターノードに通信媒体を介して接続されるノードから末端ノードの各ノードは、それぞれ、前記ノードの上位ノードからの起動指示を受けた際に、前記起動指示を行った前記上位ノードからインストール情報を受けとり、自ノードのインストールを行うとともに、配下のノードが存在する場合には、該配下のノードに対して起動を指示し、前記インストール情報は、インストール手続きと、システムの構成情報と、を有し、前記インストール手続きを、互いに異なる機能ごとに、複数に分割し、各インストール手続きを栽番しておくクラスタシステムのノードのコンピュータで実行するためのプログラムであって、
インストールモードでの起動指示を受けると、
（ａ）自ノードがマスターノードであるか否かを判断する処理、
（ｂ）自ノードがマスターノードである場合、自ノードのインストール用マスタ媒体をマウントした上で（ｅ）のインストール手続きの実行に移行する処理、
（ｃ）自ノードがマスターノードでない場合には、自ノードのシステム構成に、インストール用マスタ媒体があるか否か判断し、インストール用マスタ媒体が存在する場合、インストール用マスタ媒体をマウントし、自ノードのシステム構成にインストール用マスタ媒体が存在しない場合、起動指示を発行したノードのインストール用マスタ媒体を通信媒体を介してマウントする処理、
（ｄ）自ノードがマスターノードでない場合、前記起動指示を発行したノードから、インストール手続きと構成情報をダウンロードし、自ノードのディスク装置に格納する処理、及び、
（ｅ）自ノードのインストール手続きを実行するにあたり、インストール手続きファイル番号の若番順に、インストール手続きを順次実行する処理と、
の前記（ａ）乃至（ｅ）の各処理を前記ノードのコンピュータで実行するためのプログラム。
【請求項１７】
請求項１６記載のプログラムにおいて、
（ｅ１）前記ノードが、自ノードのノード識別情報の検出をする処理、
（ｅ２）前記ノードが、前記構成情報を読み込み、子ノードが存在するか否かを判断し、子ノードが存在すれば、前記子ノードに対して、インストールモードで起動するように要求を出す処理、
（ｅ３）前記ノードが、前記構成情報を参照して、前記ノード識別情報をキーとして、インストールパラメータを決定する処理、
（ｅ４）前記ノードが、自ノードのインストール用マスタ媒体に含まれるインストール用パッケージか、あるいはノードが末端ノードの場合には、起動指示を行った上位ノードのインストール用パッケージを、自ノードのディスクにロードする処理、及び、
（ｅ５）前記決定されたインストールパラメータの値に基づき、ノード固有の値を設定することで、システム起動時に動作する環境情報を作成する処理、
の前記（ｅ１）乃至（ｅ５）の各処理をノードのコンピュータで実行するためのプログラム。
【請求項１８】
請求項１６記載のプログラムにおいて、
前記インストール手続きを、互いに異なる機能ごとに、複数に分割し、各インストール手続きを栽番して記憶保持し、
（ｆ１）前記ノードが、ノード識別情報を検出する処理、
（ｆ２）前記ノードが、前記構成情報を読み込み、該ノードに子ノードがあるかどうかを判断し、子ノードがあれば、前記子ノードに対して、インストールモードで起動するように要求を出す処理、
（ｆ３）前記ノードが、前記構成情報を参照し、ノード識別情報をキーとして、インストールパラメータを決定する処理、及び、
（ｆ４）前記ノードが、インストール手続きファイル番号の若番順に、インストール手続きを順次実行する処理と、
の前記（ｆ１）乃至（ｆ４）の各処理をノードのコンピュータで実行するためのプログラム。
【発明の詳細な説明】
【０００１】
本発明は、情報処理システムに関し、特に、複数の情報処理装置（ノード）が通信接続されてなるクラスタシステムのインストール方法及びシステム並びにプログラムに関する。
【０００２】
【従来の技術】
複数の計算機ノードから構成されるクラスタシステムにおいて従来より用いられているインストール方法では、同一内容のシステムボリュームを、クラスタを構成するノードの個数分だけ、あらかじめ作成しておくなどの事前の処理が必要とされている。
【０００３】
かかる従来の手法は、ノード数の増加により、必要な記憶媒体（容量）、インストールのための作業工数が増大する、という問題点を有している。
【０００４】
また、クラスタの各ノードのインストールを実行した後の再インストールや、システムファイルを変更するなど、インストールの後にインストール時のシステムファイルを変更することは、困難であった。
【０００５】
なお、複数ノードへのインストール作業を容易化するシステムとして、例えば特開平１１−２９６３４９号公報には、並列計算機の各ノードのシステムディスクのすべてにソフトウエアとデータをインストールする時間を短縮する方式として、インストール対象をシステム起動に必要な基本部分と、システム起動してから、逐次インストールすればよい拡張部分に分類し、基本部分だけをインストールして、短時間でシステム起動できるようにし、インストールが完了したノードを自動的に次々にサーバとすることで操作を自動化させ、複数のインストールを並列化するようにしたインストール方式が提案されている。
【０００６】
【発明が解決しようとする課題】
本発明が解決しようとする課題は、複数のノードから構成されるクラスタシステムを一括してインストールするとともに、インストール手続きの修正等を容易化するための方法及びシステム並びにプログラムを提供するものである。
【０００７】
【課題を解決するための手段】
上記課題を解決するための手段を提供する本発明は、最上位ノード配下には１又は複数のノードが接続されており、末端ノードを除く各ノードの配下には１又は複数のノードが接続される階層型構成とされてなるクラスタシステムのインストール方法において、前記最上位ノードが、インストール情報を保持し、自ノードのインストールを行うとともに、配下のノードに対して起動を指示し、前記最上位ノード配下のノードから順に末端ノードまでの各ノードが、順次、該ノードの上位ノードからの起動指示を受けて起動し、前記起動指示を行った前記上位ノードから、インストール情報を取得して自ノードのインストールを行うとともに、配下にノードが存在する場合には、該配下のノードに対して、起動を指示する、というものである。以下の説明からも明らかとされるように、上記課題は、特許請求の範囲の各請求項の発明によっても、同様にして解決される。
【０００８】
【発明の実施の形態】
本発明の実施の形態について説明する。本発明の実施の形態において、複数の計算機ノードよりなるクラスタシステムは、図１を参照すると、最上位のマスターノード（１）には、通信媒体（４）を介して、複数のノードよりなるクラスタ（２）が接続されており、末端を除くクラスタ（２）のノード（２０１と２１１）は、通信媒体（５、６）を介して、次段のクラスタ（３１、３２）のノード（３０１、３１１と、３２１、３３１）が接続される多段クラスタ構成よりなる。
【０００９】
マスターノード（１）は、インストール情報（インストール手続きとシステム構成情報）を保持し、自ノードのインストールを行うとともに、前記マスターノードに接続されるクラスタ（２）のノード（２０１と２１１）に対して、インストールモードでの起動を指示する。マスターノード（１）に接続されたクラスタのノード（２０１と２１１）から、順に、末端のノード（３０１、３１１と、３２１、３３１）までの各ノードは、以下の処理を、順次、繰り返して行う。すなわち、上位ノードからの起動指示を受けたノードが起動すると、前記起動したノードは、前記起動指示を行った前記上位ノードから、インストール情報を受け取り、自ノードのインストールを行うとともに、配下のノードが存在する場合には、該配下のノードに対して起動を指示する。末端ノード（３０１、３１１と、３２１、３３１）は、配下のノードが存在しないため、前記起動指示を行った前記上位ノードから、インストール情報を受け取り、自ノードのインストールだけを行う。
【００１０】
マスターノード（１）をなすノード（１０１）において、ディスク（１０２）上に、インストール手続き（１０３）およびクラスタシステム全体の構成情報（システム構成情報）（１０４）をあらかじめ記憶しておく。
【００１１】
インストール手続き（１０３）は、構成情報（１０４）を参照することにより、クラスタシステムを構成するすべてのノード（１０１、２０１、２１１、３０１、３１１、３２１、３３１）をインストールすることができる。
【００１２】
また、マスターノード（１）のノード（１０１）には、インストール用マスタ媒体（１０５）を用意しておく。インストール用マスタ媒体（１０５）には、システム起動時に、ノードのメインメモリにロードされて、一時的なシステムボリュームとなる、システム起動用データ（１０６）と、実際のインストール用のためのデータであるインストール用パッケージ（１０７）が記憶されている。
【００１３】
マスターノード（１）のノード（１０１）が起動すると、システム起動用データ（１０６）を、ノード（１０１）上のメインメモリに読み込み、インストール用の機能限定システムが起動する。
【００１４】
ノード（１０１）は、入力ファイルを、構成情報（１０４）として、自ノードをインストールする手順が記述されているインストール手続き（１０３）を実行する。インストール手続き（１０３）には、自ノードをインストールする手続きに加えて、同時に、マスターノード（１）に通信媒体（４）を介して接続されるクラスタ（２）に含まれるノードを起動するための手続きが記述されており、インストール手続き（１０３）の実行において、ノード（１０１）は、ノード（２０１）とノード（２１１）を起動する。
【００１５】
クラスタ（２）のノード（２０１）とノード（２１１）が起動すると、ノード（２０１）とノード（２１１）は、起動指示を行ったノード（１０１）から、インストール手続き（１０３）と構成情報（１０４）をダウンロードして、自らのインストール手続きを開始する。
【００１６】
同時に、ノード（２０１）は、通信媒体（５）を介して接続されるクラスタ（３１）に含まれるノード（３０１、３１１）を起動し、ノード（２１１）は、通信媒体（６）を介して接続されるクラスタ（３２）に含まれるノード（３２１、３３１）を起動する。
【００１７】
ノード（３０１）とノード（３１１）は、起動の指示を行ったノード（２０１）から、インストール手続き（２０３）と構成情報（２０４）をダウンロードして自ノードのインストールを開始する。
【００１８】
ノード（３２１）とノード（３３１）は、起動の指示を行ったノード（２１１）から、インストール手続き（２１３）と構成情報（２１４）をダウンロードして自ノードのインストールを開始する。
【００１９】
このように、クラスタシステムを、多段クラスタ構成とし、元となるインストール手続き（１０３）を、マスターノード（１）をなすノード（１０１）上に用意しておき、インストール手続きを実行するノードが、該ノードの起動指示を行った上位ノード（「親ノード」ともいう）から、インストールに必要なデータ（インストール手続き、および構成情報）を取得する処理を、ノード起動時の振る舞いに加えることにより、再帰的に、クラスタのすべてのノードをインストールすることができる。この結果、効率的なクラスタシステムのインストールを実現している。
【００２０】
【実施例】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の実施例について図面を参照して以下に説明する。
【００２１】
図１は、本発明の一実施例のシステム構成を示す図である。図１を参照すると、本発明の一実施例において、プログラム制御により動作するマスターノード１は、ノード（中央処理装置；プロセッサ；データ処理装置）１０１と、ディスク装置１０２と、インストール用マスタ媒体１０５と、を備えている。ディスク装置１０２には、インストール手続き１０３と、クラスタシステム全体の構成情報１０４が格納されている。インストール用マスタ媒体１０５には、システム起動時にロードされてメインメモリ上で、一時的なシステムボリュームとなる、システム起動用データ１０６と、実際のインストール用のためのデータであるインストール用パッケージ１０７と、が記憶されている。
【００２２】
図２は、本発明の一実施例におけるノード１０１（図１参照）の構成の一例の詳細を示す図である。図２を参照すると、ノード１０１は、メインプロセッサ１０１１と、サービスプロセッサ１０１２と、通信機構１０１３と、ブートコード１０１４と、入出力機構１０１５と、メインメモリ１０１６と、を含んでいる。
【００２３】
メインメモリ１０１６の領域は、オペレーティングシステム（ＯＳ）が利用するためのＯＳ領域１０１６１と、システム起動データをロードするための、システム起動データロード領域１０１６２と、に分割して利用する。
【００２４】
ノード１０１に接続される周辺機器であるディスク１０２の領域は、手続き格納領域１０２２と、インストール用領域１０２１と、に分かれている。インストール手続き１０３と構成情報１０４は、ディスク１０２の手続き格納領域１０２２に格納されている。
【００２５】
ノード１０１において、サービスプロセッサ１０１２が通信機構１０１３を経由してシステム起動要求を受信する。サービスプロセッサ１０１２は、システム起動要求としては、インストールモードの起動要求と、通常起動モードとを受け付ける。
【００２６】
インストールモードの起動要求を受け付けると、サービスプロセッサ１０１２は、ブートコード１０１４をメインメモリ１０１６にダウンロードして、メインプロセッサ１０１１を起動する。
【００２７】
ブートコード１０１４は、メインプロセッサ１０１１で稼動する必要最低限の機能をもったプログラムである。ブートコード１０１４は、入出力機構１０１５を経由して、インストール用マスタ媒体１０５に格納されている、システム起動用データ１０７をメインメモリ１０１６に展開する。このほかにも、必要に応じて、通信機構１０１３を経由して、通信媒体を介して、ある遠隔ノード上のインストール用マスタ媒体に格納されている、システム起動用データを、メインメモリ１０１６上に展開する。
【００２８】
ブートコード１０１４は、その後、ＯＳ領域１０１６１に格納されているカーネルコードに実行を引き渡し、インストール限定機能をもったシステムが、メインプロセッサ１０１１上で起動する。
【００２９】
図１における、ノード２０１、２１１、ノード３０１、３１１、ノード３２１、３３１のノード構成は、図２を参照して説明したノード１０１と同様の構成とされている。なお、図１に示す例では、クラスタ３１のノード３０１、３１１、クラスタ３２のノード３２１、３３１は、周辺機器として、ディスク装置を備えているが、インストール用マスタ媒体は具備していない。
【００３０】
クラスタ２は、ノード２０１と、ノード２０２から構成されている。ノード２０１は、周辺機器として、ディスク２０２とインストール用マスタ媒体２０５が接続されている。ノード２０２は、周辺機器として、ディスク２１２と、インストール用マスタ媒体２１５が接続されている。
【００３１】
インストール用マスタ媒体２０５と、インストール用マスタ媒体２０６にそれぞれ記憶されている内容は、インストール用マスタ媒体１０５と同一の内容である。したがって、システム起動データ２０６と、システム起動データ２０７と、システム起動データ１０６は同一の内容であり、インストール用パッケージ２０７と、インストール用パッケージ２１７と、インストール用パッケージ１０７は同一の内容である。インストール用マスタ媒体は、好ましくは、磁気テープやCD-ROM等のように、可搬記録媒体であり、かつ、複製が容易な媒体とされる。インストール用マスタ媒体は、一般に、該媒体に記憶されるデータ量が多く、このデータを通信回線を介して伝送することは、システムのスループット低下を招く可能性があるため、インストール用マスタ媒体は、できれば、自ノード内のローカル装置として持つことが好ましい。
【００３２】
マスターノード１のノード１０１と、クラスタ２のノード２０１及びノード２１１は、通信媒体４で接続されている。
【００３３】
クラスタ３１は、ノード３０１と、ノード３１２から構成されている。ノード３０１は、周辺機器としてディスク３０２が接続されており、ノード３１２は、周辺機器としてディスク３１２が接続されている。クラスタ２のノード２０１と、クラスタ３１のノード３０１とノード３１１は通信媒体５で接続されている。
【００３４】
クラスタ３２は、ノード３２１と、ノード３３２から構成されている。ノード３２１は、周辺機器としてディスク３１２が接続されており、ノード３２２は、周辺機器としてディスク３３２が接続されている。クラスタ２のノード２１１と、クラスタ３２のノード３２１とノード３３１は、通信媒体６で接続されている。
【００３５】
ノードに接続される周辺機器として、末端のノード３０１、ノード３１１、ノード３２１、ノード３３１は、インストール用マスタ媒体は持っていない。このように、インストールマスタ媒体を具備しない末端のノードは、親ノードのインストールマスタ媒体にアクセスする。親ノードとは、自ノードを起動指示するノードである。
【００３６】
ノード３０１、ノード３１１の親ノードはノード２０１であり、ノード３２１、ノード３３１の親ノードはノード２１１である。
【００３７】
子ノードは、親ノードとは逆の定義であり、たとえば、マスターノード１のノード１０１の子ノードは、ノード２０１とノード２０２であり、ノード２０１の子ノードは、ノード３０１とノード３０２であり、ノード２１１の子ノードは、ノード３２１とノード３３１である。
【００３８】
図３、及び図４は、本発明の一実施例の動作を説明するためのフローチャートである。図１乃至図４を参照して、本発明の一実施例の動作について説明する。
【００３９】
まず、インストールモードのシステム起動要求に従い、ノード上でインストール用システムが起動する。システム起動要求は、通信媒体（図１の通信媒体４、５、または６）を介して、親ノードから子ノードに対して発行されるものと、親ノード自身がもつスイッチ等の物理的なインタフェースにより、ユーザから直接指示されるかのいずれかの方法を用いることができる。いずれの方法も、最終的には、ノードのメインメモリ（図２の１０１６）上に、インストール用マスタ媒体のシステム起動用データがロードされて、メインプロセッサ（図２の１０１１）上で、インストール用の機能限定システムが起動する。
【００４０】
次に、ノードは、自ノードがマスターノードであるか否かを判断する（図３のステップＡ１）。自ノードが、マスターノードであるか否かは、システム起動要求が、通信媒体４、通信媒体５、通信媒体６のいずれを経由したかで判断することができる。
【００４１】
マスターノードの場合（図３のステップＡ１のＹＥＳ分岐）、自ノードのインストール用マスタ媒体をマウントし（図３のステップＡ４）、インストール手続きの実行（図３のステップＡ７）に移行する。
【００４２】
次に、自ノードのシステム構成に、インストール用マスタ媒体があるか否か判断する（図３のステップＡ２）。自ノードのシステム構成にインストール用マスタ媒体が存在すれば（図３のステップＡ２のＹＥＳ分岐）、インストール用マスタ媒体をマウントする（図３のステップＡ３）。
【００４３】
自ノードのシステム構成にインストール用マスタ媒体がなければ（図３のステップＡ１のＮＯ分岐）、親ノードのインストール用マスタ媒体をマウントする（図３のステップＡ５）。
【００４４】
次に、親ノードから、インストール手続きと構成情報をダウンロードし、ディスクに格納する（図３のステップＡ６）。
【００４５】
最後に、自ノードのインストール手続きを実行する（図３のステップＡ７）。なお、図３の各ステップの処理は、ノードを構成するコンピュータ（プロセッサ）上で実行されるプログラム制御によって実現される。
【００４６】
図４は、図３のステップＡ７のインストール手続きの処理手順を示す流れ図である。
【００４７】
まず、マスターノード（図１のノード１０１）の場合、あらかじめ用意されている構成情報（図１の１０４）を入力ファイルとして、インストール手続き（図１の１０３）を実行する。
【００４８】
マスターノード以外のノード（図２の２０１、２１１、３０１、３１１、３２１、３３１）は、それぞれ、該ノードに対して起動指示を行った親ノードからダウンロードした構成情報（図２の２０４、２１４、３０４、３１４、３２４、３３４）を入力ファイルとして、親ノードからダウンロードしたインストール手続き（図２の２０３、２１３、３０３、３１３、３２３、３３３）を実行する。
【００４９】
最初に、ノードのノード番号の検出をする（図４のステップＢ１）。このノード番号とは、クラスタシステム内でユニークに割り当てられている番号である。ノード番号としては、例えば、通信機構（図２の１０１３）が有するＭＡＣ（Media  Access  Control）−ＩＤや、ノード自身が保持するシリアル番号、クラスタシステム用のハードウェアに埋め込まれたノード番号が用いられる。
【００５０】
次に、当該ノード（図２の１０１、２０１、２１１、３０１、３１１、３２１、３３１）は、ダウンロードした構成情報（図２の１０４、２０４、２１４、３０４、３１４、３２４、３３４）を読み込む（図４のステップＢ２）。
【００５１】
次に、当該ノードは、子ノードが存在するか否かを判断する（図４のステップＢ３）。子ノードが存在すれば、子ノードに対して、インストールモードで起動するように要求を出す（図４のステップＢ８）。
【００５２】
次に、当該ノード（図２の１０１、２０１、２１１、３０１、３１１、３２１、３３１）は、構成情報（図２の１０４、２０４、２１４、３０４、３１４、３２４、３３４）を参照して、ノード番号をキーとして、インストールパラメータを決定する（図４のステップＢ４）。インストールパラメータで決定される内容としては、これからインストールするディスクのＳＣＳＩ−ＩＤや、ＬＵＮ（Logical  Unit  Number）、あるいは、通信機構のＩＰ（Internet  Protocol）アドレス、ノード名等がある。
【００５３】
次に、当該ノード（図２の１０１、２０１、２１１、３０１、３１１、３２１、３３１）は、接続するディスク（図２の１０２、２０２、２１２、３０２、３１２、３２２、３３２）の初期設定を行う（図４のステップＢ５）。このステップでは、システムをインストールするために、インストール領域を確保して（図２の１０２１）、初期化したりする。
【００５４】
次に、インストールパッケージをインストールする（図４のステップＢ６）。インストールパッケージは、自ノードのインストール用マスタ媒体に含まれるインストール用パッケージ（図１の１０７、２０７、２１７）か、末端ノード（図１の３０１、３１１、３２１、３３１）の場合には、親ノードのインストール用パッケージをディスクにロードする。なお、このステップでロードされたパッケージは、環境ファイル等が初期値のままであるため、そのままシステムを起動しても、動作しない。
【００５５】
なお、インストールパッケージをロードするための過程は、一般に、最も時間を必要とするため、各ノードで並列処理を行うためには、このパッケージのロードよりも前に、子ノードの起動要求（図４のステップＢ８）を行っておく必要がある。
【００５６】
最後に、環境ファイルの設定をする（図４のステップＢ７）。このステップＢ７では、インストールパラメータの決定（図４のステップＢ４）で決定された値に基づき、初期値の値に変更を加え、ノード固有の値（たとえばＩＰアドレスや、ノード名や、ファイルシステムをマウントするための設定ファイルなど）を設定する。これにより、システム起動時に動作する環境が作成される。図４のインストール手続きの各ステップの処理は、ノードを構成するコンピュータ（プロセッサ）上で実行されるプログラム制御によって実現される。
【００５７】
次に、具体例を用いて説明する。あらかじめディスク１０２上にインストール手続き１０３およびクラスタシステム全体の構成情報１０４を用意しておく。
【００５８】
ノード１０１は、インストールモードで起動されると、入力ファイルを構成情報１０４として、インストール手続き１０３を実行する。このインストール手続きの中には、ノード１０１をインストールする手続きと、ノード２０１およびノード２１１をインストールモードで起動する手続きが含まれている。
【００５９】
ノード２０１は、ノード１０１により起動されると、ノード１０１のディスク１０２より、インストール手続き１０３および構成情報１０４を、通信回線４を経由して、ノード２０１のディスク２０２に、インストール手続き２０３と構成情報２０４として、複製する。そして、ノード２０１は、複製した構成情報２０４を入力ファイルとして、インストール手続き２０３を実行する。インストール手続き２０３は、ノード２０１をインストールする手続きと、ノード３０１およびノード３１１をインストールモードで起動する手続きが含まれている。
【００６０】
同様に、ノード２１１は、ノード１０１によって起動されると、ノード１０１のディスク１０２より、インストール手続き１０３および構成情報１０４を、通信回線４を経由して、ノード２１１のディスク２１２に、インストール手続き２１３と構成情報２１４として複製する。そしてノード２１１は、複製した構成情報２１４を入力ファイルとしてインストール手続き２１３を実行する。インストール手続き２１３は、ノード２１１をインストールする手続きと、ノード３２１および３３１をインストールモードで起動する手続きが含まれている。
【００６１】
ノード３０１は、ノード２０１によって起動されると、ノード２０１のディスク２０２より、インストール手続き２０３および構成情報２０４を、通信回線５を経由して、ノード３０１のディスク３０２に、インストール手続き３０３と構成情報３０４として複製する。そしてノード３０１は、複製した構成情報３０４を入力ファイルとしてインストール手続き３０３を実行する。インストール手続き３０３は、ノード３０１をインストールする手続きを含む。
【００６２】
同様に、ノード３１１は、ノード２０１により起動されると、ノード２０１のディスク２０２より、インストール手続き３１３および構成情報３１４を、通信回線５を経由して、ノード３１１のディスク３１２に、インストール手続き３１３と構成情報３１４として複製する。そしてノード３１１は、複製した構成情報３１４を入力ファイルとしてインストール手続き３１３を実行する。インストール手続き３１３は、ノード３１１をインストールする手続きを含む。
【００６３】
ノード３２１は、ノード２１１により起動されると、ノード２１１のディスク２１２より、インストール手続き２１３および構成情報２１４を、通信回線６を経由して、ノード３２１のディスク３２２に、インストール手続き３２３と構成情報３２４として複製する。そして、ノード３２１は、複製した構成情報３２４を入力ファイルとしてインストール手続き３２３を実行する。インストール手続き３２３は、ノード３２１をインストールする手続きを含む。
【００６４】
同様に、ノード３３１は、ノード２１１により起動されると、ノード２１１のディスク２１２より、インストール手続き２１３および構成情報２１４を、通信回線６を経由して、ノード３３１のディスク３３２に、インストール手続き３３３と構成情報３３４として複製する。そして、ノード３３１は、複製した構成情報３３４を入力ファイルとしてインストール手続き３３３を実行する。インストール手続き３３３は、ノード３３１をインストールする手続きを含む。
【００６５】
このように、クラスタシステムを多段クラスタ構成にし、元となるインストール手続き１０３を、マスターノードのノード１０１上に用意しておき、インストールするノードが、起動要求を発行したノード（親ノード）からインストールに必要なデータ（インストール手続き、および構成情報）を自立的に取得するロジックを、ノード起動時の振る舞いに加えることにより、再帰的に、ノードをインストールすることが可能となる。
【００６６】
次に、本発明の第２の実施例について説明する。図５は、本発明の第２の実施例を説明するための図である。図５を参照すると、図３のインストール手続き７について、インストール処理を分割した、手続き００（図５の８）、手続き０１（図５の９）、手続き０２（図５の１０）に分割されている。それぞれの手続きは機能ごとに細分化されており、例えば手続き００はディスクの設定、手続き０１は、パッケージのインストール、手続き０２は、環境ファイルの作成、というようになる。手続きには、番号が付加されており、若番順に実行される。
【００６７】
図６は、本発明の第２の実施例におけるインストール手続きの処理手順を示す流れ図である。インストール手続きは、最初に、ノードはノード番号の検出をする（図６のステップＣ１）。
【００６８】
次に、ノードは、構成情報（図２の１０４、２０４、２１４、３０４、３１４、３２４、３３４）を読み込む（図６のステップＣ２）。
【００６９】
次に、当該ノードに子ノードがあるかどうかを判断する（図６のステップＣ３）。子ノードがあれば、子ノードに対して、インストールモードで起動するように要求を出す（図６のステップＣ８）。
【００７０】
次に、ノードは、構成情報（図２の１０４、２０４、２１４、３０４、３１４、３２４、３３４）に、ノード番号をキーとして、インストールパラメータを決定する（図６のステップＣ４）。
【００７１】
次に、手続きファイル番号の若番順に、手続きを順次実行する（図６のステップＣ４、ステップＣ５、ステップＣ６）。この例では、手続き００（図５の８）、手続き０１（図５の９）、手続き（図５の１０）の順で実行される。
【００７２】
このように、インストール手続きを、機能ごとに分割することにより、たとえばディスクの設定（図５の８、図４のステップＢ５に相当）をインストール手続き（図５の７）から削除することで、インストール手続きは、インストール後のシステムファイルの変更をするための手続きとしても利用することができる。
【００７３】
多段クラスタ構成のクラスタ段数は、上記実施例で示している３段以上でもよい。また、各クラスタに含まれるノードの数は、２ノード以上であってもよいことは勿論である。
【００７４】
【発明の効果】
以上説明したように、本発明によれば、下記記載の効果を奏する。
【００７５】
本発明の第１の効果は、クラスタシステムにおいて、インストールするためのインストール手続きの修正を容易化する、ということである。
【００７６】
その理由は、本発明においては、クラスタを多段クラスタ構成にし、システムの起動時に、親ノードのインストール手続きを、自ノード内に複製して実行するため、マスターノードにインストール手続きの修正を反映しておきさえすれば、インストール時にそれぞれの子ノード上で実行されるインストール手続きに修正内容が反映される、ためである。
【００７７】
本発明の第２の効果は、インストールするための構成情報を、マスターノード上の１箇所にだけおけばよく、構成情報を一元管理することができる、ということである。
【００７８】
その理由は、本発明においては、クラスタを多段クラスタ構成とし、システムの起動時に、親ノードの構成情報を自ノード内に複製して持つとともに、ノード固有情報を与えることにより、ノード固有の環境情報（環境ファイル）を設定できるようにしている、ためである。
【００７９】
本発明の第３の効果は、インストールに要する時間を短縮することができる、ということである。
【００８０】
その理由は、本発明においては、クラスタを多段クラスタ構成とし、ダウンロードに最も時間を要するパッケージのインストールを行う前に、子ノードを起動する処理を行うことにより、子ノードと親ノードのインストール手続きを並列に実行させることができる、ためである。また、本発明においては、各クラスタ内のノードも並列にインストール手続きを実行することができる、ためである。
【図面の簡単な説明】
【図１】本発明の一実施例のクラスタシステムの構成を示す図である。
【図２】本発明の一実施例のノードの構成を示す図である。
【図３】本発明の一実施例の処理手順を説明するための流れ図である。
【図４】本発明の一実施例のインストール手続きを説明するための流れ図である。
【図５】本発明の他の実施例を説明するための図である。
【図６】本発明の他の実施例のインストール手続きを説明するための流れ図である。
【符号の説明】
１  マスターノード
２、３１、３２  クラスタ
４、５、６  通信媒体
７  インストール手続き
８、９、１０  手続き
１０１、２０１、２１１、３０１、３１１、３２１、３３１  ノード
１０２、２０２、２１２、３０２、３１２、３２２、３３２  ディスク
１０３、２０３、２１３、３０３、３１３、３２３、３３３  インストール手続き
１０４、２０４、２１４、３０４、３１４、３２４、３３４  構成情報
１０５、２０５、２１５  インストール用マスタ媒体
１０６、２０６、２１６  システム起動用データ
１０７、２０７、２１７  インストール用パッケージ
１０１１  メインプロセッサ
１０１２  サービスプロセッサ
１０１３  通信機構
１０１４  ブートコード
１０１５  入出力機構
１０１６  メインメモリ
１０１６１  ＯＳ領域
１０１６２  システム起動データロード領域
１０２１  インストール用領域
１０２２  手続き格納領域
【図１】
0003692960.tif 000002
【図２】
0003692960.tif 000003
【図３】
0003692960.tif 000004
【図４】
0003692960.tif 000005
【図５】
0003692960.tif 000006
【図６】
0003692960.tif 000007