(57)【特許請求の範囲】
【請求項１】
管理ネットワークを介して、管理サーバと、複数の管理対象サーバに接続される復旧サーバであって、
第１ブート、第２ブート、ＳＡＮブートの順に優先順位が定められた前記管理対象サーバにおける、前記第１ブートの要求である第１ブート要求を送信する第１の送受信手段のアドレスと、前記第２ブートの要求である第２ブート要求を送信する第２の送受信手段のアドレスとを格納する復旧管理テーブルと、
前記管理サーバからの前記第１ブート要求に対する応答である第１ブート応答を監視する監視手段と、
前記管理対象サーバに対する復旧処理を行わないＮＯＰプログラムと、前記復旧処理を行う復旧プログラムとを格納する記憶手段とを備え、
前記監視手段が、
前記管理サーバからの前記第１ブート応答を受信した場合に、前記復旧管理テーブルに当該受信時刻を格納し、
前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記復旧管理テーブルに格納された前記受信時刻から予め定められた時間が経過していない場合に、前記管理サーバは正常であると判断して、前記ＮＯＰプログラムを前記管理対象サーバに送信し、前記予め定められた時間が経過している場合に、前記管理サーバは停止していると判断して、前記復旧プログラムを前記管理対象サーバに送信する
ことを特徴とする復旧サーバ。
【請求項２】
前記復旧プログラムは、送信先の前記管理対象サーバにおいて、当該管理対象サーバが使用するストレージエリアネットワークにおける固有のＩＤを予めエンコードした値をデコードすることにより、新たな固有のＩＤを得る
ことを特徴とする請求項１に記載の復旧サーバ。
【請求項３】
前記監視手段が、前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記ＮＯＰプログラム又は前記復旧プログラムの送信の前に、当該復旧サーバが正常であるか否かを判断して、当該復旧サーバが正常でない場合に、前記正常でないことを示す情報を出力する
ことを特徴とする請求項１に記載の復旧サーバ。
【請求項４】
管理ネットワークを介して、管理サーバと、複数の管理対象サーバに接続される復旧サーバにおいて実行される復旧処理プログラムであって、
コンピュータである復旧サーバに、
第１ブート、第２ブート、ＳＡＮブートの順に優先順位が定められた前記管理対象サーバにおける、前記第１ブートの要求である第１ブート要求を送信する第１の送受信手段のアドレスと、前記第２ブートの要求である第２ブート要求を送信する第２の送受信手段のアドレスとを、復旧管理テーブルに格納する格納ステップと、
前記管理サーバからの前記第１ブート要求に対する応答である第１ブート応答を監視する監視ステップと、
前記管理サーバからの前記第１ブート応答を受信した場合に、前記復旧管理テーブルに当該受信時刻を格納する格納ステップと、
前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記復旧管理テーブルに格納された前記受信時刻から予め定められた時間が経過していない場合に、前記管理サーバは正常であると判断して、前記管理対象サーバに対する復旧処理を行わないＮＯＰプログラムを前記管理対象サーバに送信する送信ステップと、
前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記受信時刻から前記予め定められた時間が経過している場合に、前記管理サーバは停止していると判断して、前記復旧処理を行う復旧プログラムを前記管理対象サーバに送信する送信ステップとを実行させる
ことを特徴とする復旧処理プログラム。
【請求項５】
管理サーバと、復旧サーバと、複数の管理対象サーバと、これらの間を接続する管理ネットワークとを備える計算機システムであって、
前記管理対象サーバが、
第１ブート、第２ブート、ＳＡＮブートの順に優先順位を定めるブート優先順位設定手段と、
前記第１ブートの要求である第１ブート要求を送信する第１の送受信手段と、
前記第２ブートの要求である第２ブート要求を送信する第２の送受信手段と、
前記第１の送受信手段から前記第１ブート要求を行い、前記第２の送受信手段から前記第２ブート要求を行うブート要求手段とを備え、
前記管理サーバが、
前記管理対象サーバにおいてブート処理を実行するブート処理プログラムを格納する記憶手段と、
前記管理対象サーバからの前記第１ブート要求を受信した場合に、前記ブート処理プログラムを当該管理対象サーバに送信する送信手段とを備え、
前記復旧サーバが、
前記第１ブート要求を送信する第１の送受信手段のアドレスと、前記第２ブート要求を送信する第２の送受信手段のアドレスとを格納する復旧管理テーブルと、
前記管理サーバからの前記第１ブート要求に対する応答である第１ブート応答を監視する監視手段と、
前記管理対象サーバに対する復旧処理を行わないＮＯＰプログラムと、前記復旧処理を行う復旧プログラムとを格納する記憶手段とを備え、
前記監視手段が、
前記管理サーバからの前記第１ブート応答を受信した場合に、前記復旧管理テーブルに当該受信時刻を格納し、
前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記復旧管理テーブルに格納された前記受信時刻から予め定められた時間が経過していない場合に、前記管理サーバは正常であると判断して、前記ＮＯＰプログラムを前記管理対象サーバに送信し、前記予め定められた時間が経過している場合に、前記管理サーバは停止していると判断して、前記復旧プログラムを前記管理対象サーバに送信する
ことを特徴とする計算機システム。
【請求項６】
前記送信手段が、前記管理対象サーバからの前記第１ブート要求を受信した場合に、前記第１ブート要求に対する応答である前記第１ブート応答を、前記管理ネットワークに送信する
ことを特徴とする請求項５に記載の計算機システム。
【請求項７】
前記送信手段が、前記管理対象サーバからの前記第１ブート要求を受信した場合において、前記第１ブート応答の送信の前に、当該管理サーバが正常であるか否かを判断して、当該管理サーバが正常でない場合に、前記正常でないことを示す情報を出力する
ことを特徴とする請求項６に記載の計算機システム。
【請求項８】
前記管理サーバが、前記複数の管理対象サーバを管理するサーバ管理手段を備え、
前記送信手段が、前記管理対象サーバからの前記第１ブート要求を受信した場合において、前記第１ブート応答の送信の前に、前記サーバ管理手段が正常であるか否かを判断して、前記サーバ管理手段が正常でない場合に、前記正常でないことを示す情報を出力する
ことを特徴とする請求項７に記載の計算機システム。
【請求項９】
前記送信手段が、前記サーバ管理手段が正常でない場合に、前記サーバ管理手段を再起動する
ことを特徴とする請求項８に記載の計算機システム。
【請求項１０】
前記監視手段が、前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記ＮＯＰプログラム又は前記復旧プログラムの送信の前に、当該復旧サーバが正常であるか否かを判断して、当該復旧サーバが正常でない場合に、前記正常でないことを示す情報を出力する
ことを特徴とする請求項５に記載の計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復旧サーバ、復旧処理プログラム及び計算機システムに関し、特に、冗長化された計算機システムにおいて高い信頼性でブート制御を行うことができる復旧サーバ、復旧処理プログラム及び計算機システムに関する。
【背景技術】
【０００２】
ストレージエリアネットワーク（ＳＡＮ）からのブートを行う計算機システム（ＳＡＮ環境における計算機システム）が知られている。ＳＡＮ環境における計算機システムにおいては、各々のサーバが、ＳＡＮを介してストレージの外部ディスク装置からＯＳ（オペレーティングシステム）等のプログラムを読み込む。これにより、各々のサーバがブートされる。
【０００３】
ＳＡＮ環境における計算機システムにおいては、その信頼性を向上するために、例えば、あるサーバ（現用系計算機）に障害が発生すると、他のサーバ（待機系計算機）が障害のあるサーバの業務を継続して実行するようにされる。即ち、サーバの冗長化が図られている。
【０００４】
また、ＳＡＮ環境における冗長化された計算機システムにおいて、同様の目的で、ＳＡＮを構成するネットワークスイッチ及び外部ディスク装置に障害が発生しても、待機系計算機が現用系計算機の業務を継続することができるようにされる（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２９３４２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ＳＡＮ環境における計算機システムは、種々の構成により、その信頼性の向上が図られている。しかし、前述のように、サーバ（管理対象サーバ）、ネットワークスイッチ及び外部ディスク装置の障害については種々の考慮が払われているが、管理サーバ（ブートサーバ）の障害については考慮されていない。
【０００７】
即ち、ＳＡＮ環境における冗長化された計算機システムにおいても、管理サーバにハードウェア障害又はソフトウェア障害が発生する場合がある。本発明者の検討によれば、この場合、管理対象サーバは、管理サーバから固有のＩＤであるＷＷＮ（World Wide Name ）値を取得することができないので、そのＨＢＡにＷＷＮ値を設定することができない。このため、管理対象サーバは、ＳＡＮを介してストレージからＯＳ（オペレーティングシステム）等のプログラムをブートすることができない。
【０００８】
本発明は、管理サーバに障害が発生した場合でも管理対象サーバのブートを可能とする復旧サーバを提供することを目的とする。
【０００９】
また、本発明は、管理サーバに障害が発生した場合でも管理対象サーバのブートを可能とする復旧処理プログラムを提供することを目的とする。
【００１０】
また、本発明は、管理サーバに障害が発生した場合でも管理対象サーバのブートを可能とする計算機システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
この復旧サーバは、管理ネットワークを介して、管理サーバと、複数の管理対象サーバに接続される。この復旧サーバは、復旧管理テーブルと、監視手段と、記憶手段とを備える。復旧管理テーブルは、第１ブート、第２ブート、ＳＡＮブートの順に優先順位が定められた前記管理対象サーバにおける、前記第１ブート要求を送信する第１の送受信手段のアドレスと、前記第２ブート要求を送信する第２の送受信手段のアドレスとを格納する。監視手段は、前記管理サーバからの前記第１ブート要求に対する応答である第１ブート応答を監視する。記憶手段は、前記管理対象サーバに対する復旧処理を行わないＮＯＰプログラムと、前記復旧処理を行う復旧プログラムとを格納する。前記監視手段が、前記管理サーバからの前記第１ブート応答を受信した場合に、前記復旧管理テーブルに当該受信時刻を格納する。また、前記監視手段が、前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記復旧管理テーブルに格納された前記受信時刻から予め定められた時間が経過していない場合に、前記管理サーバは正常であると判断して、前記ＮＯＰプログラムを前記管理対象サーバに送信し、前記予め定められた時間が経過している場合に、前記管理サーバは停止していると判断して、前記復旧プログラムを前記管理対象サーバに送信する。
【００１２】
この復旧処理プログラムは、管理ネットワークを介して、管理サーバと、複数の管理対象サーバに接続される復旧サーバにおいて実行される。この復旧処理プログラムは、コンピュータである復旧サーバに、以下のステップを実行させる。即ち、第１の格納ステップは、第１ブート、第２ブート、ＳＡＮブートの順に優先順位が定められた前記管理対象サーバにおける、前記第１ブート要求を送信する第１の送受信手段のアドレスと、前記第２ブート要求を送信する第２の送受信手段のアドレスとを、復旧管理テーブルに格納する。監視ステップは、前記管理サーバからの前記第１ブート要求に対する応答である第１ブート応答を監視する。第２の格納ステップは、前記管理サーバからの前記第１ブート応答を受信した場合に、前記復旧管理テーブルに当該受信時刻を格納する。第１の送信ステップは、前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記復旧管理テーブルに格納された前記受信時刻から予め定められた時間が経過していない場合に、前記管理サーバは正常であると判断して、前記管理対象サーバに対する復旧処理を行わないＮＯＰプログラムを前記管理対象サーバに送信する。第２の送信ステップは、前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記受信時刻から前記予め定められた時間が経過している場合に、前記管理サーバは停止していると判断して、前記復旧処理を行う復旧プログラムを前記管理対象サーバに送信する。
【００１３】
この計算機システムは、管理サーバと、復旧サーバと、複数の管理対象サーバと、これらの間を接続する管理ネットワークとを備える。この計算機システムにおいて、前記管理対象サーバが、ブート優先順位設定手段と、第１の送受信手段と、第２の送受信手段と、ブート要求手段とを備える。ブート優先順位設定手段は、第１ブート、第２ブート、ＳＡＮブートの順に優先順位を定める。第１の送受信手段は、前記第１ブート要求を送信する。第２の送受信手段は、前記第２ブート要求を送信する。前記ブート要求手段は、前記第１又は第２の送受信手段からブート要求を行う。前記管理サーバは、ブート処理プログラムと、送信手段とを備える。前記ブート処理プログラムは、前記管理対象サーバにおいてブート処理を実行する。前記送信手段は、前記管理対象サーバからの前記第１ブート要求を受信した場合に、前記ブート処理プログラムを当該管理対象サーバに送信する。前記復旧サーバが、復旧管理テーブルと、監視手段と、記憶手段とを備える。復旧管理テーブルは、前記管理対象サーバの第１及び第２の送受信手段のアドレスを格納する。監視手段は、前記管理サーバからの前記第１ブート要求に対する応答である第１ブート応答を監視する。記憶手段は、前記管理対象サーバに対する復旧処理を行わないＮＯＰプログラムと、前記復旧処理を行う復旧プログラムとを格納する。前記監視手段が、前記管理サーバからの前記第１ブート応答を受信した場合に、前記復旧管理テーブルに当該受信時刻を格納する。また、前記監視手段が、前記管理対象サーバからの前記第２ブート要求を受信した場合において、前記復旧管理テーブルに格納された前記受信時刻から予め定められた時間が経過していない場合に、前記管理サーバは正常であると判断して、前記ＮＯＰプログラムを前記管理対象サーバに送信し、前記予め定められた時間が経過している場合に、前記管理サーバは停止していると判断して、前記復旧プログラムを前記管理対象サーバに送信する。
【発明の効果】
【００１４】
この復旧サーバ及び復旧処理プログラムによれば、管理対象サーバの第１の送受信手段からのブート要求（第１ブート要求）に対する管理サーバのブロードキャスト応答（第１ブート応答）を受信した受信時刻を基準として、管理サーバの状態についての判断処理が実行される。
【００１５】
即ち、管理対象サーバの第２の送受信手段からブート要求（第２ブート要求）を受信した場合において、前記受信時刻から所定の時間が経過していない場合には、管理サーバは正常であると判断する。これは、第１の送受信手段からのブート要求に対する第１ブート応答から所定の時間内に、その次に実行されるべき第２の送受信手段からのブート要求が実行されているからである。この場合、復旧処理を行わないＮＯＰプログラムが管理対象サーバに送信される。これにより、第２の送受信手段からのブート要求の次に実行すべきブート要求（例えば、ＳＡＮからのブート）を実行することができる。
【００１６】
一方、前記受信時刻から所定の時間が経過している場合には、管理サーバは停止していると判断される。これは、第１の送受信手段からのブート要求に対する第１ブート応答から所定の時間を経過しても、その次に実行されるべき第２の送受信手段からのブート要求が実行されていないからである。この場合、復旧処理を行う復旧プログラムが管理対象サーバに送信される。これにより、管理対象サーバは、管理サーバの停止にも拘わらず、復旧プログラムにより、第１及び第２の送受信手段からのブート要求の次に実行すべきブート要求（例えば、ＳＡＮからのブート）を実行することができる。
【００１７】
以上により、例えばＳＡＮ環境における冗長化された計算機システムにおいて、管理サーバがハードウェア障害又はソフトウェア障害により停止した場合でも、管理対象サーバは、ＳＡＮを介してストレージからＯＳ等のプログラムをブートすることができる。
【００１８】
この計算機システムによれば、管理ネットワークが管理サーバと前述の復旧サーバとにより二重化されているので、管理サーバが正常である場合には、管理サーバが実行する処理により管理対象サーバがブートできるようにし、管理サーバが停止した場合には、当該停止にも拘わらず、復旧サーバが実行する処理により、前述のように、管理対象サーバがブートできるようにすることができる。
【図面の簡単な説明】
【００１９】
【図１】ＳＡＮ環境における冗長化された計算機システムの構成の一例を示す。
【図２】ＳＡＮ環境における冗長化された計算機システムにおける管理サーバ及び管理対象サーバの構成の一例を示す。
【図３】ブート優先順位情報及びＷＷＮ値について示す。
【図４】サーバ管理テーブルの一例を示す。
【図５】サーバ定義ファイルの一例を示す。
【図６】復旧管理テーブルの一例を示す。
【図７】管理サーバ、復旧サーバが正常である場合の処理を示す。
【図８】管理サーバ、復旧サーバは正常である場合の、管理対象サーバにおけるブート処理を示す。
【図９】管理サーバが停止し、復旧サーバが正常に動作する場合の、管理対象サーバにおけるブート処理を示す。
【図１０】サーバ管理手段が実行するブート処理の処理フローを示す。
【図１１】ＨＢＡベンダ判別プログラムが実行するベンダ判別処理の処理フローを示す。
【図１２】ＨＢＡベンダ専用プログラムが実行するベンダ専用処理の処理フローを示す。
【図１３】復旧管理手段が実行するブート処理の処理フローを示す。
【図１４】管理対象サーバが実行するブート処理の処理フローを示す。
【図１５】管理対象サーバが実行するブート処理の処理フローを示す。
【図１６】管理サーバ、復旧サーバは正常である場合の、管理対象サーバにおけるブート処理の他の一例を示す。
【図１７】図１６の処理において、正ブート制御手段が実行するブート処理の処理フローを示す。
【図１８】図１６の処理において、サーバ管理手段が実行するブート処理の処理フローを示す。
【図１９】図１６の処理において、副ブート制御手段が実行するブート処理の処理フローを示す。
【図２０】図１６の処理において、復旧管理手段が実行するブート処理の処理フローを示す。
【発明を実施するための形態】
【００２０】
（第１の実施態様）
図１は、この例のＳＡＮ環境における冗長化された計算機システムの構成の一例を示す図である。
【００２１】
この計算機システムは、管理サーバ１、復旧サーバ２、管理ネットワーク３、複数の管理対象サーバ４、ストレージエリアネットワーク（ＳＡＮ：Storage Area Network ）５、ストレージ（ストレージ装置）６を備える。管理サーバ１及び復旧サーバ２は、管理ネットワーク３を介して、複数の管理対象サーバ４に接続される。複数の管理対象サーバ４は、ＳＡＮ５を介して、ストレージ６に接続される。
【００２２】
管理ネットワーク３は、２個のネットワークスイッチ３１により二重化されている。このために、管理サーバ１は２個のＮＩＣ（Network Interface Card）１１を備え、復旧サーバ２は２個のＮＩＣ２１を備え、複数の管理対象サーバ４の各々は、２個のＮＩＣ４１を備える。これにより、管理サーバ１及び復旧サーバ２と複数の管理対象サーバ４とは、図１に示すように、二重化されて接続される。
【００２３】
ＳＡＮ５は、２個のＦＣ（ファイバーチャネル：Fibre Channel ）スイッチ５１により二重化されている。このために、複数の管理対象サーバ４は、各々、２個のＨＢＡ（ホストバスアダプタ：Host Bus Adopter ）４２を備える。これにより、複数の管理対象サーバ４とストレージ６とは、図１に示すように、二重化されて接続される。管理対象サーバ４は、ＳＡＮ５を介して、ストレージ６からＯＳ等のプログラム（これらをソフトウェアイメージと言う）をブートし、また、ＳＡＮ５を介して、ストレージ６のデータにアクセスする。
【００２４】
ストレージ６は、複数の論理ユニット（ＬＵ：Logical Unit）６１を備える。管理対象サーバ４が使用するＦＣスイッチ５１のポートには、固有のＩＤであるＷＷＰＮ値が予め割り当てられる。ＳＡＮ５は、当該管理対象サーバ４のＯＳが格納されたＬＵ６１と、管理対象サーバ４のＨＢＡ４２のＷＷＮＮ値及びその使用するＦＣスイッチ５１のポートのＷＷＰＮ値とを対応付ける。これにより、ＳＡＮ５は、ブート処理において、当該ＷＷＮＮ値のＨＢＡ４２及びＷＷＰＮ値のポートのみから、当該ＬＵ６１へのアクセスを実行する。
【００２５】
図２は、この例のＳＡＮ環境における冗長化された計算機システムにおける管理サーバ１及び管理対象サーバ４の構成の一例を示す図である。
【００２６】
この例の管理対象サーバ４は、図２に示すように、２個のＮＩＣ４１、２個のＨＢＡ４２、ＢＩＯＳ（Basic Input-Output System ）４３を備える。
【００２７】
ＮＩＣ４１は、各々の管理対象サーバ４において、管理ネットワーク３を介して、管理サーバ１又は復旧サーバ２との間で送受信処理を行う送受信手段又はインタフェースである。ＮＩＣ４１は、第１の送受信手段又はインタフェースであるＮＩＣ４１−１と、第２の送受信手段又はインタフェースであるＮＩＣ４１−２とを含む。管理対象サーバ４においては、ＮＩＣ４１−１とＮＩＣ４１−２とは、相互に区別される。即ち、管理対象サーバ４の起動時においては、ＯＳの機能であるチーミング（Teaming ）機能は用いることができないので、ＮＩＣ４１−１及びＮＩＣ４１−２は、各々、個別に動作する。ＮＩＣ４１−１は管理サーバ１に対応し、ＮＩＣ４１−２は復旧サーバ２に対応する。
【００２８】
ＨＢＡ４２は、各々の管理対象サーバ４において、ＳＡＮ５を介して、ストレージ６との間で送受信処理を行う送受信手段又はインタフェースである。
【００２９】
ＢＩＯＳ４３は、管理対象サーバ４のＯＳの一部を構成する制御プログラムであり、ＮＩＣ４１−１又はＮＩＣ４１−２からブート要求を行うブート要求手段である。ＢＩＯＳ４３は、ブート優先順位情報４４を備える。ブート優先順位情報４４は、予め用意され、不変である。
【００３０】
図３（Ａ）は、ＢＩＯＳ４３の備えるブート優先順位情報４４の一例を示す。ブート優先順位情報４４は、管理対象サーバ４におけるブート処理の実行の優先順位を定める情報であり、例えば管理対象サーバ４のＢＩＯＳ４３が管理する所定のメモリに保持される。ＢＩＯＳ４３はブート優先順位設定手段である。ブート処理の優先順位は、ブート優先順位情報４４により、図３（Ａ）に示す優先順位に固定される。即ち、第１優先順位が「ＮＩＣ１ブート」とされ、以下、「ＮＩＣ２ブート」「ＳＡＮブート」「その他」の順とされる。
【００３１】
「ＮＩＣ１ブート」は、ＮＩＣ４１−１からのネットワークブートである。即ち、二重化された管理ネットワーク３における第１のネットワークブートである。「ＮＩＣ２ブート」はＮＩＣ４１−２からの第２のネットワークブートである。即ち、二重化された管理ネットワーク３における第２のネットワークブートである。「ＳＡＮブート」はＳＡＮ５におけるブートである。「その他」は前記３つのブート以外のブート（例えば、ローカルブート）である。
【００３２】
管理対象サーバ４においては、ブート優先順位情報４４により、ブート優先順位が、少なくとも、管理サーバ１に対応するＮＩＣ４１−１からのブート、復旧サーバ２に対応するＮＩＣ４１−２からのブート、ＳＡＮ５からのブートの順に固定される。その他のブートは、省略しても良い。
【００３３】
図３（Ｂ）は、ＨＢＡ４２の備えるＷＷＮ値について示す。ＨＢＡ４２は、ＷＷＮ値を格納する格納領域４２０を備える。格納領域４２０は、Ｆ−ＷＷＮ値を格納する格納領域４２１であるＦ−ＷＷＮ、Ｖ−ＷＷＮ値を格納する格納領域４２２であるＶ−ＷＷＮ、ＮＶ−ＷＷＮ値を格納する格納領域４２３であるＮＶ−ＷＷＮを備える。
【００３４】
Ｆ−ＷＷＮは、例えばＲＯＭの所定の領域であり、その値であるＦ−ＷＷＮ値は、工場から当該管理対象サーバ４が出荷される際に当該領域に書き込まれる。Ｆ−ＷＷＮ値は工場出荷値である。Ｖ−ＷＷＮは、ＤＲＡＭ等の揮発性のメモリの所定の領域であり、その値であるＶ−ＷＷＮ値は、例えばブート処理により当該領域に書き込まれる。ＮＶ−ＷＷＮは、フラッシュメモリ等の不揮発性のメモリの所定の領域であり、その値であるＮＶ−ＷＷＮ値は、例えばブート処理により当該領域に書き込まれる。
【００３５】
ＨＢＡ４２において、ＷＷＮ値は、優先順位に従って有効とされる。この優先順位は、Ｖ−ＷＷＮ値、ＮＶ−ＷＷＮ値、Ｆ−ＷＷＮ値の順とされる。Ｆ−ＷＷＮ値は、Ｖ−ＷＷＮ値及びＮＶ−ＷＷＮ値が設定されていない場合にのみ、有効である。ＮＶ−ＷＷＮ値は、Ｖ−ＷＷＮ値が設定されていない場合にのみ、有効である。
【００３６】
なお、前述のように、ＷＷＮ値には、ノード（即ち、ＨＢＡ４２）毎に割り当てられるＷＷＮＮ値と、ＨＢＡ４２が備える複数のポート毎に割り当てられるＷＷＰＮ値とがある。単に、ＷＷＮ値という場合には、ＷＷＮＮ値とＷＷＰＮ値の双方を指す。
【００３７】
図２に戻って、この例の管理サーバ１は、２個のＮＩＣ１１、サーバ管理手段１２、正ブート制御手段１３を備える。サーバ管理手段１２はサーバ管理テーブル１４を備える。正ブート制御手段１３は、正ブート制御オブジェクト１５を備える。正ブート制御オブジェクト１５は、正ブート制御手段１３の使用する記憶手段（例えばファイル）であり、１個のＨＢＡベンダ判別プログラム１６、複数のＨＢＡベンダ専用プログラム１７、複数のサーバ定義ファイル１８を備える。
【００３８】
ＮＩＣ１１は、管理サーバ１において、管理ネットワーク３を介して、管理対象サーバ４との間で送受信処理を行う送受信手段又はインタフェースである。ＮＩＣ１１は、第１の送受信手段（ＮＩＣ１）と第２の送受信手段（ＮＩＣ２）とを含む。第１の送受信手段は、本来であれば、第２の送受信手段と相互に区別される。しかし、この例においては、管理サーバ１のＯＳの処理により区別されない。即ち、２個のＮＩＣ１１は、当該管理サーバ１のＯＳにより、チーミングする。即ち、２個のＮＩＣ１１は、協働して１個のＮＩＣ１１として動作する。
【００３９】
サーバ管理手段１２は、管理サーバ１の全体を制御し、また、管理対象サーバ４を管理する。このために、サーバ管理テーブル１４が用いられる。
【００４０】
図４は、サーバ管理テーブル１４の一例を示す。サーバ管理テーブル１４は、管理対象サーバ４（のサーバ名）毎に、ＭＡＣアドレス、ＩＰアドレス、ＷＷＮ値、状態情報、電源情報、ＢＭＣ（Baseboard Management Controller ）情報、予備サーバ情報を格納する。
【００４１】
ＭＡＣアドレスは、当該管理対象サーバ４のＮＩＣ４１−１のＭＡＣアドレスであるＭＡＣ１と、ＮＩＣ４１−２のＭＡＣアドレスであるＭＡＣ２とを含む。ＩＰアドレス（ｉｐ）は、当該管理対象サーバ４のＩＰアドレスである。ＷＷＮ値は、前述のように、ＷＷＮＮ値（ＷＷＮＮ）とＷＷＰＮ値（ＷＷＰＮ）とを含む。状態情報は、当該管理対象サーバ４が正常である（ｏｋ）か、異常である（ｎｇ）かを示す。電源情報は、当該管理対象サーバ４の電源がオンであるか、オフであるかを示す。ＢＭＣ情報は、当該管理対象サーバ４が接続されるＢＭＣのＩＰアドレスを示す。予備サーバ情報は、当該管理対象サーバ４が停止した場合にこれに変わって業務を引き継ぐべきサーバ即ち待機系計算機（のサーバ名）を示す。
【００４２】
正ブート制御手段１３は、管理対象サーバ４からのブート要求を受信してこれを監視する第１の監視手段である。正ブート制御手段１３は、ブート要求の監視結果に基づいて、管理対象サーバ４の第１の送受信手段ＮＩＣ４１−１からブート要求を受信した場合に、ブート処理プログラムを当該管理対象サーバ４に送信する。即ち、正ブート制御手段１３は、サーバ管理テーブル１４に登録されたＭＡＣ１を持つ管理対象サーバ４からのブート要求にのみ応答する。
【００４３】
ＨＢＡベンダ判別プログラム１６及びＨＢＡベンダ専用プログラム１７は、管理対象サーバ４においてブート処理を実行するブート処理プログラムである。ブート処理プログラムは、ブート処理を行い、ブート優先順位を次の順位とするプログラムである。サーバ定義ファイル１８は、管理対象サーバ４のＷＷＮ値を定義する。
【００４４】
ＨＢＡベンダ判別プログラム１６は、ＨＢＡ４２のベンダを判別し、その結果に基づいて、当該ＨＢＡ４２に対応するＨＢＡベンダ専用プログラム１７を求める。ＨＢＡベンダ専用プログラム１７は、ＷＷＮ値をＶ−ＷＷＮに記憶し、更にＷＷＮ値をエンコードしてＮＶ−ＷＷＮに記憶する。
【００４５】
ＨＢＡベンダ判別プログラム１６は予め用意される。ＨＢＡベンダ専用プログラム１７は、ＨＢＡベンダの数の分だけ、ＨＢＡベンダ毎に予め用意される。サーバ定義ファイル１８は、管理対象サーバ４の数の分だけ、管理対象サーバ４毎に作成される。ＨＢＡベンダ判別プログラム１６及びＨＢＡベンダ専用プログラム１７は、例えばファームウェアである。
【００４６】
図５は、サーバ定義ファイル１８の一例を示す。サーバ定義ファイル１８は、図５（Ａ）に示すように、当該管理対象サーバ４（のサーバ名）毎に、当該管理対象サーバ４のＨＢＡ４２のＷＷＮ値（ＷＷＮＮ）、当該管理対象サーバ４のＨＢＡ４２の備えるポートのＷＷＮ値（ＷＷＰＮ）を格納する。例えば、図５（Ｂ）は、管理対象サーバ４ｓｒｖ−２のサーバ定義ファイル１８と、その予備サーバｓｒｖ−１０のサーバ定義ファイル１８とを示す。
【００４７】
図２に戻って、この例の復旧サーバ２は、２個のＮＩＣ２１、復旧管理手段２２、副ブート制御手段２３、ブート監視手段２４を備える。復旧管理手段２２は復旧管理テーブル２５を備える。ブート監視手段２４は、副ブート制御オブジェクト２６を備える。副ブート制御オブジェクト２６は、復旧プログラム２７、ＮＯＰプログラム２８を備える。これらは予め用意される。
【００４８】
ＮＩＣ２１は、復旧サーバ２において、管理ネットワーク３を介して、管理対象サーバ４との間で送受信処理を行う送受信手段又はインタフェースである。ＮＩＣ２１は、管理サーバ１のＮＩＣ１１と同様の構成とされる。即ち、２個のＮＩＣ２１は、復旧サーバ２のＯＳの処理により、協働して１個のＮＩＣ２１として動作する。
【００４９】
復旧管理手段２２は、復旧サーバ２の全体を制御し、また、管理対象サーバ４を管理する。このために、復旧管理テーブル２５が用いられる。復旧管理テーブル２５は、少なくとも、管理対象サーバ４の第１及び第２の送受信手段ＮＩＣ４１−１及び４１−２のアドレスを格納するテーブルである。
【００５０】
図６は、復旧管理テーブル２５の一例を示す。復旧管理テーブル２５は、当該管理対象サーバ４（のサーバ名）毎に、ＭＡＣ１、ＭＡＣ２、ＩＰアドレス、ＭＡＣ１ブート時刻を格納する。ＭＡＣ１ブート時刻は、後述するように、当該ＭＡＣ１からのブート要求に対する管理サーバ１のブロードキャスト応答（第１ブート応答）の受信時刻（以下、ＮＩＣ４１−１ブート時刻）である。
【００５１】
副ブート制御手段２３（及びブート監視手段２４）は、管理対象サーバ４からのブート要求と、管理対象サーバ４からのブート要求に対する管理サーバ１のブロードキャスト応答（第１ブート応答）とを受信して、これらを監視する第２の監視手段である。副ブート制御手段２３は、ブート要求及びブート応答（以下、単にブート要求）の監視結果に基づいて、管理対象サーバ４の第２の送受信手段ＮＩＣ４１−２からブート要求を受信した場合に、復旧プログラム２７を当該管理対象サーバ４に送信する。即ち、副ブート制御手段２３は復旧管理テーブル２５に登録されたＭＡＣ２を持つ管理対象サーバ４からのブート要求にのみ応答する。
【００５２】
復旧プログラム２７は、復旧処理を行い、ブート優先順位を次の順位とする復旧プログラムである。復旧処理は、副ブート制御手段２３によって、管理サーバ１が動作していない時のみ実行される。即ち、管理対象サーバ４のＮＶ−ＷＷＮが読み込まれ、これに値が設定されていた場合に、これがデコードされてＶ−ＷＷＮに復元され、ＨＢＡ４２が再初期化される。ＮＯＰプログラム２８は、この復旧処理を行わず（オペレーションを実行せず）、ブート優先順位を次の順位とするプログラムである。復旧プログラム２７及びＮＯＰプログラム２８は、例えばファームウェアである。
【００５３】
ブート監視手段２４は、副ブート制御手段２３でのブート要求の監視結果に基づいて、管理対象サーバ４の第１の送受信手段ＮＩＣ４１−１からのブート要求に対する管理サーバ１のブロードキャスト応答（第１のブート応答）を受信した場合に、このブート応答を復旧管理テーブル２５に記録する。具体的には、復旧管理テーブル２５に当該受信時刻が格納される。
【００５４】
副ブート制御手段２３は、管理対象サーバ４の第２の送受信手段ＮＩＣ４１−２からブート要求を受信した場合において、復旧管理テーブル２５に格納された受信時刻から予め定められた時間が経過していない場合に、管理サーバ１は正常であると判断する。この場合、副ブート制御手段２３は、ＮＯＰプログラム２８を管理対象サーバ４に送信する。また、副ブート制御手段２３は、管理対象サーバ４の第２の送受信手段ＮＩＣ４１−２からブート要求を受信した場合において、復旧管理テーブル２５に格納された受信時刻から予め定められた時間が経過している場合に、管理サーバ１は停止していると判断する。この場合、副ブート制御手段２３は、復旧プログラム２７を管理対象サーバ４に送信する。
【００５５】
図７〜図９は、この例のＳＡＮ環境における冗長化された計算機システムにおける処理について示す。
【００５６】
図７は、管理サーバ１、復旧サーバ２が正常である場合の処理を示す。この場合、管理対象サーバ４はブート処理を実行しない。従って、復旧サーバ２が管理サーバ１へのポーリングを定期的に実行するのみである。
【００５７】
復旧サーバ２が処理を開始すると、復旧管理手段２２が、管理ネットワーク３を介して、管理サーバ１のサーバ管理手段１２に対してポーリングを実行する（＃１１）。ポーリングは、予め定められた時間間隔で、繰り返し実行される。この時間間隔は、例えば１分とされるが、これ以外の値であっても良い。
【００５８】
復旧サーバ２の復旧管理手段２２は、このポーリングの結果として、管理サーバ１からサーバ管理テーブル１４の内容を取得し、これに基づいて、復旧管理テーブル２５を更新する。取得されるサーバ管理テーブル１４の内容は、例えば、サーバ名、ＭＡＣ１、ＭＡＣ２、ＩＰを含む。
【００５９】
図８は、管理サーバ１、復旧サーバ２は正常であるが、管理対象サーバ４がブート処理を実行する場合の処理を示す。なお、この場合でも、復旧サーバ２は管理サーバ１へのポーリングを実行するが、図８においてはその図示を省略する。
【００６０】
管理対象サーバ４が、ＮＩＣ４１−１からブート要求を発行することにより、ＮＩＣ１からネットワークブートしようとする（＃２１）。このブート要求は、管理ネットワーク３の全体にブロードキャストされる。この場合、管理サーバ１は、正常であるので、ＮＩＣ４１−１からのブート要求を受信する。
【００６１】
管理サーバ１において、正ブート制御手段１３は、ＮＩＣ４１−１からの第１ブート要求を受信して、管理対象サーバ４のＮＩＣ４１−１に第１ブート応答を返す（＃２２）。この応答は、管理ネットワーク３の全体にブロードキャストされる。更に、正ブート制御手段１３は、受信したＮＩＣ４１−１からのブート要求をサーバ管理手段１２に送る（＃２３）。
【００６２】
一方、復旧サーバ２において、副ブート制御手段２３は、ＮＩＣ４１−１からのブート要求（第１ブート要求）に対する管理サーバ１のブロードキャスト応答（第１ブート応答）を受信して、ブート監視手段２４に送る。ブート監視手段２４は、受信したブート応答がＮＩＣ４１−１へのブート応答であるので、当該ブート応答の受信時刻（ＮＩＣ４１−１ブート時刻）を復旧管理手段２２に送る。復旧管理手段２２は、復旧管理テーブル２５のＭＡＣ１ブート時刻に、受信したＮＩＣ４１−１ブート時刻を記録させる（＃２３’）。
【００６３】
管理サーバ１において、サーバ管理手段１２は、正ブート制御手段１３からブート要求を受信すると、正ブート制御オブジェクト１５にサーバ定義ファイル１８を作成して（＃２４）、ＨＢＡベンダ判別プログラム１６を読み出して管理対象サーバ４のＮＩＣ４１−１に送信する（＃２５）。
【００６４】
管理対象サーバ４は、受信したＨＢＡベンダ判別プログラム１６を実行し、ベンダ種別が判明した場合は、管理サーバ１からＨＢＡベンダ専用プログラム１７を読み出して管理対象サーバ４のＮＩＣ４１−１で受信する（＃２６）。
【００６５】
これにより、管理対象サーバ４は、ＨＢＡベンダ専用プログラム１７を実行し、これにより、ＷＷＮ値を更新し、ＨＢＡ４２を初期化した後、ブート処理の優先順位を、予め定められた（固定された）順位に従って次の順位に更新する（インクリメントする）。即ち、その時点で設定されているブート優先順位の次の優先順位のブート処理に制御が移され、当該ブート処理が実行される。この場合、＃２１においてＮＩＣ４１−１からブート要求を発行したのであるから、この時点の優先順位の処理は「ＮＩＣ１ブート」であり、従って、次の優先順位の処理である「ＮＩＣ２ブート」が実行される。
【００６６】
この後、管理対象サーバ４が、ＨＢＡ４２が初期化されたので、新しい優先順位であるＮＩＣ４１−２からブート要求を発行すると（＃２７）、復旧サーバ２の副ブート制御手段２３が、ＮＩＣ４１−２に応答を返す（＃２８）。
【００６７】
この後、復旧サーバ２において、副ブート制御手段２３は、受信したＮＩＣ４１−２からのブート要求を、ブート監視手段２４に送る。ブート監視手段２４は、受信したブート要求がＮＩＣ４１−２のブート要求であるので、ＮＩＣ４１−１ブート時刻に基づく処理を実行する。
【００６８】
即ち、ＮＩＣ４１−２からのブート要求を受信した時刻（ＮＩＣ４１−２ブート時刻）がＮＩＣ４１−１ブート時刻から所定の時間以内である場合、ブート監視手段２４は、管理サーバ１が正常に動作しており、ＮＩＣ４１−１からのブート処理でのＷＷＮ値の書換えが成功したと判断する。そこで、ブート監視手段２４は、ＮＯＰプログラムを管理対象サーバ４に送信し（＃２９）、復旧管理テーブル２５のＭＡＣ１ブート時刻に記録したＮＩＣ４１−１ブート時刻をクリアする。所定の時間は、例えば１０分とされるが、これ以外の値であっても良い。
【００６９】
管理対象サーバ４は、ＮＯＰプログラム２８を受信すると、これに制御（制御権）を移してこれをＢＩＯＳ４３上で実行する。ＮＯＰプログラム２８は、次のブート優先順位の処理に制御を移す。この場合、ＮＩＣ４１−２におけるブート処理においてＮＯＰプログラム２８を受信したのであるから、この時点の優先順位の処理は「ＮＩＣ２ブート」であり、従って、次の優先順位である「ＳＡＮブート」の処理が実行される。これにより、ＮＯＰプログラム２８は、予め定められたブート優先順位に従ってブート処理を変更することができ、管理対象サーバ４は、書き換えられたＷＷＮ値を用いてＳＡＮブートすることができる。
【００７０】
図９は、管理サーバ１が停止し、復旧サーバ２が正常に動作し、管理対象サーバ４がブート処理を実行する場合の処理を示す。なお、この場合でも、復旧サーバ２は管理サーバ１へのポーリングを実行するが、図９においてはその図示を省略する。
【００７１】
管理対象サーバ４が、ＮＩＣ４１−１からブート要求（第１ブート要求）を発行することにより、ＮＩＣ４１−１からネットワークブートしようとする（＃３１）。しかし、この場合、管理サーバ１が停止しているので、管理サーバ１がＮＩＣ４１−１からのブート要求を受信することはない。従って、管理対象サーバ４のＮＩＣ４１−１が管理サーバ１から応答を受信することも無い。
【００７２】
そこで、管理対象サーバ４が、ＮＩＣ４１−２からブート要求（第２ブート要求）を発行する（＃３２）。このブート要求は、管理ネットワーク３の全体にブロードキャストされる。この場合、復旧サーバ２は、正常であるので、ＮＩＣ４１−２からのブート要求を受信する。
【００７３】
復旧サーバ２において、副ブート制御手段２３は、ＮＩＣ４１−２からのブート要求を受信して、管理対象サーバ４のＮＩＣ４１−２に応答（第２ブート応答）を返す（＃３３）。この応答は、管理ネットワーク３の全体にブロードキャストされる。
【００７４】
副ブート制御手段２３は、ＮＩＣ４１−２からのブート要求を受信して、ブート監視手段２４に送る。ブート監視手段２４は、受信したブート要求がＮＩＣ４１−２のブート要求であるので、副ブート制御オブジェクト２６から復旧プログラム２７を読み出して管理対象サーバ４のＮＩＣ４１−２に送信する（＃３４）。
【００７５】
ＮＩＣ４１−２ブート時刻がＮＩＣ４１−１ブート時刻から所定の時間だけ経過している場合、又は、ＮＩＣ４１−１ブート時刻が「０」である場合、ブート監視手段２４は、管理サーバ１が停止していると判断する。この停止は何らかの原因によって生じる。従って、管理サーバ１は正常に動作しておらず、ＮＩＣ４１−１でのＷＷＮ値の書き換えは失敗したと考えられる。そこで、ブート監視手段２４は、復旧プログラム２７を管理対象サーバ４に送信し、ＭＡＣ１ブート時刻に記録したＮＩＣ４１−１ブート時刻をクリアする。
【００７６】
なお、ＮＩＣ４１−１ブート時刻が「０」である場合とは、例えば、工場出荷の後において、Ｆ−ＷＷＮ値のみが設定されており、管理サーバ１が一度も正常に動作していない場合等である。
【００７７】
管理対象サーバ４は、復旧プログラム２７を受信すると、これに制御を移してこれをＢＩＯＳ４３上で実行する。復旧プログラム２７は、ＨＢＡ４２のＮＶ−ＷＷＮに値があるか否かをチェックし、値がある場合には、ＮＶ−ＷＷＮ（ＮＶ−ＷＷＮＮ及びＮＶ−ＷＷＰＮ）をデコードし、デコードの結果（デコード）値をＶ−ＷＷＮに設定する。この後、復旧プログラム２７は、ＨＢＡ４２を初期化して、次のブート優先順位の処理に制御を移す。この場合、この時点の優先順位の処理は「ＮＩＣ２ブート」であり、従って、次の優先順位である「ＳＡＮブート」が実行される。これにより、管理対象サーバ４は、書き換えられたＷＷＮ値を用いてＳＡＮブートすることができる。
【００７８】
なお、管理対象サーバ４は、ＨＢＡ４２のＮＶ−ＷＷＮに値が無い場合、そのまま、次のブート優先順位の処理に制御を移す。これは、ＨＢＡ４２のＷＷＮ値として、Ｆ−ＷＷＮ値を用いる場合であり、ＷＷＮ値を制御しない場合即ち管理対象サーバ４のアドレス（Ｉ／Ｏアドレス）を仮想制御しない場合である。
【００７９】
図１０〜図１２は、管理サーバ１において実行されるサーバ管理処理フローを示す。
【００８０】
図１０は、管理サーバ１が動作している場合に、管理サーバ１のサーバ管理手段１２が実行するブート処理の処理フローを示す。
【００８１】
サーバ管理手段１２は、正ブート制御手段１３を介して、管理対象サーバ４からのブート要求を受信すると（ステップＳ１１）、当該ブート要求がＮＩＣ４１−１からのものか否かを調べる（ステップＳ１２）。当該ブート要求がＮＩＣ４１−１からのものでない場合、管理サーバ１は、当該ブート要求を廃棄した後（ステップＳ１３）、ステップＳ１１以下を繰り返す。当該ブート要求がＮＩＣ４１−１からのものである場合、管理サーバ１は、サーバ定義ファイル１８を作成して（ステップＳ１４）、当該ブート要求をＨＢＡベンダ判別プログラム１６へ送信する（ステップＳ１５）。
【００８２】
図１１は、管理対象サーバ４に送信されたＨＢＡベンダ判別プログラム１６が、管理対象サーバ４のＢＩＯＳ４３上で実行するベンダ判別処理の処理フローを示す。
【００８３】
ＨＢＡベンダ判別プログラム１６は、ステップＳ１５においてサーバ管理手段１２からＢＩＯＳ４３に送信されると、ＢＩＯＳ４３上で、ＰＣＩ（Peripheral Component Interface）があるか否かを調べる（ステップＳ２１）。ＰＣＩがない場合、ＨＢＡベンダ判別プログラム１６は、有効な（制御を移すべき）ブート処理を、その時点で設定されている優先順位の次の優先順位のブート処理とする（ステップＳ２２）。ＰＣＩがある場合、ＨＢＡベンダ判別プログラム１６は、更に、ＰＣＩに含まれるベンダＩＤと、管理対象サーバ４のデバイスＩＤとを用いて、ベンダの種別を判明できるか否かを調べる（ステップＳ２３）。ベンダＩＤはベンダを一意に特定する。デバイスＩＤは管理対象サーバ４を一意に特定する。従って、これらにより、ベンダの種別を特定することができる。ベンダの種別が判明できない場合、ＨＢＡベンダ判別プログラム１６は、ステップＳ２２を実行する。ベンダの種別が判明できる場合、ＨＢＡベンダ判別プログラム１６は、当該判明しているベンダに対応するＨＢＡベンダ専用プログラム１７を、管理サーバ１から読み込む（ステップＳ２４）。
【００８４】
図１２は、管理対象サーバ４に送信されたＨＢＡベンダ専用プログラム１７が、管理対象サーバ４のＢＩＯＳ４３上で実行するベンダ専用処理の処理フローを示す。
【００８５】
ＨＢＡベンダ専用プログラム１７は、ステップＳ２４においてＢＩＯＳ４３上に読み込まれると、サーバ定義ファイル１８を読み込んで（ステップＳ３１）、Ｖ−ＷＷＮＮ値がある（設定されている）か否かを調べる（ステップＳ３２）。Ｖ−ＷＷＮＮ値がある場合、ＨＢＡベンダ専用プログラム１７は、ブート処理を、その時点で設定されている優先順位の次の優先順位のブート処理とする（ステップＳ３３）。Ｖ−ＷＷＮＮ値がない場合、ＨＢＡベンダ専用プログラム１７は、ＷＷＮ値をＶ−ＷＷＮに設定し（ステップＳ３４）、当該ＷＷＮ値をエンコードしてＮＶ−ＷＷＮに設定する（ステップＳ３５）。ＷＷＮ値のエンコードにより、ＷＷＮ値としての値ではない形式で正しいＷＷＮ値を保存し、これを復旧処理においてデコードして使用することができる。即ち、保存したＷＷＮ値のエンコード値が、他のＷＷＮ値と混同されることを回避することができる。この後、ＨＢＡベンダ専用プログラム１７は、ＨＢＡ４２を再度初期化して（ステップＳ３６）、ステップＳ３３を実行する。
【００８６】
図１３は、管理サーバ１が停止している場合に、復旧サーバ２の復旧管理手段２２が実行するブート処理の処理フローを示す。
【００８７】
復旧管理手段２２は、管理サーバ１のサーバ管理手段１２に対してポーリングを行い（ステップＳ４１）、当該ポーリングによりサーバ管理手段１２から受信した情報に基づいて復旧管理テーブル２５を更新し（ステップＳ４２）、所定の時間間隔でステップＳ４１以下を繰り返す。なお、ステップＳ４１及びＳ４２は、復旧管理手段２２の実行する復旧管理手順である。
【００８８】
一方、ブート監視手段２４は、副ブート制御手段２３を介して、管理対象サーバ４からのブート要求を受信すると（ステップＳ４３）、当該ブート要求がＮＩＣ４１−１からのものか否かを調べる（ステップＳ４４）。当該ブート要求がＮＩＣ４１−１からのものでない場合、ブート監視手段２４は、更に、当該ブート要求がＮＩＣ４１−２からのものか否かを調べる（ステップＳ４５）。当該ブート要求がＮＩＣ４１−２からのものでない場合、ブート監視手段２４は、ステップＳ４３以下を繰り返す。
【００８９】
ステップＳ４４において当該ブート要求がＮＩＣ４１−１からのものである場合、ブート監視手段２４は、ＮＩＣ４１−１からのブート要求に対する管理サーバ１のブロードキャスト応答（第１ブート応答）が着信した時刻（ＮＩＣ４１−１ブート時刻）を記録した後（ステップＳ４６）、ステップＳ４３以下を繰り返す。なお、ステップＳ４４及びＳ４６は、ブート監視手段２４の実行するブート監視手順である。
【００９０】
ステップＳ４５において当該ブート要求がＮＩＣ４１−２からのものである場合、ブート監視手段２４は、ＮＩＣ４１−１ブート時刻が「０」でなくかつＮＩＣ４１−１ブート時刻から「１０分経過」したか否かを調べる（ステップＳ４７）。ＮＩＣ４１−１ブート時刻が「０」である場合、又は、ＮＩＣ４１−１ブート時刻から「１０分経過」した場合、ブート監視手段２４は、管理対象サーバ４に対してＮＯＰプログラム２８を送信し（ステップＳ４８）、ＮＩＣ４１−１ブート時刻の記録をクリアした後（ステップＳ４９）、ステップＳ４３以下を繰り返す。ステップＳ４７においてＮＩＣ４１−１ブート時刻が「０」でなくかつ「１０分経過」した場合、ブート監視手段２４は、管理対象サーバ４に対して復旧プログラム２７を送信し（ステップＳ４１０）、ステップＳ４９を実行した後に、ステップＳ４３以下を繰り返す。なお、ステップＳ４５及びＳ４７〜Ｓ４１０は、ブート制御手順である。
【００９１】
図１４及び図１５は、管理対象サーバ４において実行されるブート処理の処理フローを示す。
【００９２】
図１４は、管理対象サーバ４に送信されたＮＯＰプログラム２８が、管理対象サーバ４のＢＩＯＳ４３上で実行するブート処理の処理フローを示す。
【００９３】
管理対象サーバ４（のＢＩＯＳ４３）は、ステップＳ４１０において送信されたＮＯＰプログラム２８を受信すると、当該ＮＯＰプログラム２８をＢＩＯＳ４３上で実行して、ブート処理を、その時点で設定されている優先順位の次の優先順位のブート処理とする（ステップＳ５１）。
【００９４】
図１５は、管理対象サーバ４に送信された復旧プログラム２７が、管理対象サーバ４のＢＩＯＳ４３上で実行するブート処理の処理フローを示す。
【００９５】
管理対象サーバ４（のＢＩＯＳ４３）は、ステップＳ４８において送信された復旧プログラム２７を受信すると、当該復旧プログラム２７をＢＩＯＳ４３上で実行する。即ち、復旧プログラム２７が、データＮＶ−ＷＷＮ値があるか否かを調べる（ステップＳ６１）。データＮＶ−ＷＷＮ値がない場合、復旧プログラム２７は、ブート処理を、その時点で設定されている優先順位の次の優先順位のブート処理とする（ステップＳ６２）。データＮＶ−ＷＷＮ値がある場合、復旧プログラム２７は、データＮＶ−ＷＷＮをデコードしてその結果をＶ−ＷＷＮに設定する（ステップＳ６３）。このように、復旧プログラム２７は、送信先の管理対象サーバ４において、当該管理対象サーバ４が使用するＷＷＮ値を予めエンコードした値をデコードする。これにより、復旧プログラム２７は、ＨＢＡベンダ専用プログラム１７が設定したＷＷＮ値を復旧する。この後、復旧プログラム２７は、ＨＢＡ４２を再度初期化して（ステップＳ６４）、ステップＳ６２を実行する。
【００９６】
例えば、ある管理対象サーバ４（例えばｓｒｖ−２）のＨＢＡ４２には、工場出荷時において、Ｆ−ＷＷＮ値のみが設定されているが、その起動処理時において、管理サーバ１により、ＷＷＮ値がＶ−ＷＷＮ値として設定される（書換えられる）。この後、何らかの原因で、管理対象サーバ４（ｓｒｖ−２）の業務を他の管理対象サーバ４（例えばｓｒｖ−１０）が引き継ぐとする。
【００９７】
管理サーバ１が正常である場合、他の管理対象サーバ４（ｓｒｖ−１０）のＨＢＡ４２においても、管理サーバ１により、正しくＷＷＮ値が設定される。例えば、管理対象サーバ４（ｓｒｖ−１０）の電源がＯＮされると、そのＮＩＣ４１−１からネットワークブートが開始され、これに応じて、前述の図１０〜図１２の処理が実行される。この後、管理対象サーバ４（ｓｒｖ−１０）においては、図１２のステップＳ３３により次のブート優先順位であるＮＩＣ４１−２のネットワークブートに制御が移り、これが実行される。これに応じて、前述の図１３〜図１４の処理が実行される。この結果、図１４のステップＳ５１により、管理対象サーバ４（ｓｒｖ−１０）においては、次のブート優先順位であるＳＡＮブートに制御が移り、これが実行される。従って、管理対象サーバ４（ｓｒｖ−１０）はＳＡＮブートする。
【００９８】
一方、管理サーバ１が停止している場合、そのままでは、管理対象サーバ４（ｓｒｖ−１０）はＷＷＮ値を書き換えられないので、ＳＡＮブートできない。この場合、復旧サーバ２により、管理対象サーバ４が、ＷＷＮ値を復旧し、ストレージ６と接続して、ＳＡＮブートする。例えば、管理対象サーバ４（ｓｒｖ−１０）の電源がＯＮされると、そのＮＩＣ４１−１からネットワークブート（第１ブート）が開始されるが、管理サーバ１からの応答（第１ブート応答）が得られない。このため、管理対象サーバ４（ｓｒｖ−１０）のＢＩＯＳ４３では、第１ブートのタイムアウトが発生し、次の優先順位であるＮＩＣ４１−２からネットワークブート（第２ブート）が開始される。これに応じて、前述の図１３及び図１５の処理が実行される。この結果、図１５のステップＳ６２により、管理対象サーバ４（ｓｒｖ−１０）においては、次のブート優先順位であるＳＡＮブートに制御が移り、これが実行される。従って、管理対象サーバ４（ｓｒｖ−１０）はＳＡＮブートする。
【００９９】
（第２の実施態様）
図２のＳＡＮ環境における冗長化された計算機システムによれば、正ブート制御手段１３は、管理対象サーバ４からの第１ブート要求に対する管理サーバ１の第１ブート応答を受信した受信時刻を基準として、管理サーバ１の状態についての判断処理を実行する。これにより、管理サーバ１がハードウェア障害又はソフトウェア障害により停止した場合でも、管理対象サーバ４は、ＳＡＮを介してストレージからＯＳ等のプログラムをブートすることができる。
【０１００】
ここで、図２のＳＡＮ環境における冗長化された計算機システムにおいて、管理サーバ１が、停止してはいないが、正常に動作していない状態が考えられる。これは、例えば、正ブート制御手段１３は正常に動作しているが、サーバ管理手段１２のみがソフトウェア障害により正常に動作していない状態である。この場合、管理サーバ１は、停止してはいないが、正常に動作していないので、管理サーバ１は、管理対象サーバ４からの第１ブート要求に対する第１ブート応答を管理ネットワーク３上に送出すべきではない。
【０１０１】
しかし、図２のＳＡＮ環境における冗長化された計算機システムにおいては、管理サーバ１の正ブート制御手段１３は、ＮＩＣ４１−１からの第１ブート要求を受信すると、管理対象サーバ４のＮＩＣ４１−１への第１ブート応答を、管理ネットワーク３の全体にブロードキャストする。これに応じて、復旧サーバ２の副ブート制御手段２３は、ブロードキャストによる第１ブート応答を受信してしまう。
【０１０２】
この結果、復旧サーバ２は、管理対象サーバ４のＮＩＣ４１−２からの第２ブート要求を受信した場合、第１ブート応答を受信した受信時刻から所定の時間が経過していない、換言すれば、管理サーバ１は正常であると判断する。従って、復旧サーバ２は、復旧処理を行わないＮＯＰプログラム２８を管理対象サーバ４に送信する。一方、管理サーバ１も、サーバ管理手段１２が動作していないので、ブート要求を実行することができない。このため、管理対象サーバ４は、管理サーバ１からも復旧サーバ２からもブートできない。
【０１０３】
なお、サーバ管理手段１２は正常に動作しているが、正ブート制御手段１３のみがソフトウェア障害により正常に動作していない状態においては、第１ブート応答が得られないので、以上のような問題は生じない。
【０１０４】
そこで、第２の実施態様においては、正ブート制御手段１３は、以下の処理を実行するようにされる。
【０１０５】
前述したように、正ブート制御手段１３は、管理対象サーバ４の第１の送受信手段ＮＩＣ４１−１からのブート要求（第１ブート要求）を受信した場合、第１ブート要求に対する応答である第１ブート応答を、管理ネットワーク３にブロードキャストにより送信する。そして、正ブート制御手段１３は、この第１ブート応答の送信の後に、例えば、管理対象サーバ４からのブート要求に応答する。
【０１０６】
ここで、正ブート制御手段１３は、管理対象サーバ４からの第１ブート要求を受信した場合、管理サーバ１が正常であるか否かを判断する。この判断処理は、第１ブート応答の送信の前に実行される。この判断処理の結果に基づいて、管理サーバ１が正常でない場合に、正ブート制御手段１３は、正常でないことを示す情報を出力する。この情報は、例えば、システム管理者にエラーの発生を知らせる警告等である。この情報は、例えば、ログを出力することにより、又は、予め設定されたアドレスに電子メールを送信することにより、通知される。また、管理サーバ１が正常である場合には、正ブート制御手段１３は、第１の実施態様と同様にして、第１ブート応答を管理ネットワーク３にブロードキャストにより送信する。
【０１０７】
具体的には、正ブート制御手段１３は、管理対象サーバ４からの第１ブート要求を受信した場合、サーバ管理手段１２が正常であるか否かを判断する。このために、正ブート制御手段１３は、第１ブート要求を受信すると、応答要求例えば「alive query」を、サーバ管理手段１２に送信する。「alive query」を受信したサーバ管理手段１２は、応答例えば「alive」を、正ブート制御手段１３に送信する。サーバ管理手段１２は、例えばソフトウェア障害により正常に動作していない場合、「alive」を正ブート制御手段１３に送信することができない。
【０１０８】
正ブート制御手段１３は、「alive query」の送信の時刻から予め設定された待ち時間が経過した場合、サーバ管理手段１２からの「alive」の受信の有無を調べる。これにより、正ブート制御手段１３は、サーバ管理手段１２が正常に動作しているか否かを知ることができる。
【０１０９】
なお、サーバ管理手段１２が正常でない場合、正ブート制御手段１３が、サーバ管理手段１２を再起動するようにしても良い。この場合、前記待ち時間は、前述の第１ブートのタイムアウトと比較して十分に短い時間とされる。これにより、サーバ管理手段１２が再起動されて正常に動作した場合、管理対象サーバ４は、これを意識する必要が無い。サーバ管理手段１２の再起動は、予め設定された回数、例えば３回実行される。
【０１１０】
以上により、復旧サーバ２は、管理対象サーバ４のＮＩＣ４１−２からの第２ブート要求を受信した場合、第１ブート応答を受信した受信時刻から所定の時間が経過している、換言すれば、管理サーバ１は正常に動作していないと判断する。従って、復旧サーバ２は、復旧処理を行う復旧プログラム２７を管理対象サーバ４に送信する。これにより、管理対象サーバ４は、管理サーバ１が停止してはいないが正常に動作していない場合に、復旧プログラム２７により、第１及び第２の送受信手段からのブート要求の次に実行すべきブート要求（例えば、ＳＡＮからのブート）を実行することができる。
【０１１１】
なお、第２の実施態様においては、副ブート制御手段２３も、正ブート制御手段１３と同様に、以下の処理を実行するようにされる。
【０１１２】
副ブート制御手段２３は、管理対象サーバ４の第２の送受信手段ＮＩＣ４１−２からのブート要求（第２ブート要求）を受信した場合、第２ブート要求に対する応答である第２ブート応答を、管理ネットワーク３にブロードキャストにより送信する。そして、副ブート制御手段２３は、この第２ブート応答の送信の後に、復旧プログラム２７を当該管理対象サーバ４に送信する。
【０１１３】
ここで、副ブート制御手段２３は、管理対象サーバ４からの第２ブート要求を受信した場合、復旧サーバ２が正常であるか否かを判断する。この判断処理は、第２ブート応答の送信の前に実行される。この判断処理の結果に基づいて、復旧サーバ２が正常でない場合に、副ブート制御手段２３は、正常でないことを示す情報を出力する。この情報は、例えば、システム管理者にエラーの発生を知らせる警告等である。また、復旧サーバ２が正常である場合には、副ブート制御手段２３は、第１の実施態様と同様にして、第２ブート応答を管理ネットワーク３にブロードキャストにより送信する。
【０１１４】
具体的には、副ブート制御手段２３は、管理対象サーバ４からの第２ブート要求を受信した場合、復旧管理手段２２が正常であるか否かを判断する。このために、副ブート制御手段２３は、第２ブート要求を受信すると、応答要求例えば「alive query」を、復旧管理手段２２に送信する。「alive query」を受信した復旧管理手段２２は、応答例えば「alive」を、副ブート制御手段２３に送信する。復旧管理手段２２は、例えばソフトウェア障害により正常に動作していない場合、「alive」を副ブート制御手段２３に送信することができない。
【０１１５】
副ブート制御手段２３は、「alive query」の送信の時刻から予め設定された待ち時間が経過した場合、復旧管理手段２２からの「alive」の受信の有無を調べる。これにより、副ブート制御手段２３は、復旧管理手段２２が正常に動作しているか否かを知ることができる。この結果、復旧サーバ２が停止してはいないが正常に動作していない場合に、これを知ることができる。
【０１１６】
なお、復旧管理手段２２が正常でない場合、副ブート制御手段２３が、復旧管理手段２２を再起動するようにしても良い。この場合、前記待ち時間は、前述の第１ブートのタイムアウトと比較して十分に短い時間とされる。これにより、復旧管理手段２２が再起動されて正常に動作した場合、管理対象サーバ４は、これを意識する必要が無い。復旧管理手段２２の再起動は、予め設定された回数、例えば３回実行される。
【０１１７】
図１６は、管理サーバ１、復旧サーバ２は正常である場合の、管理対象サーバ４におけるブート処理の他の一例を示す。なお、この場合でも、復旧サーバ２は管理サーバ１へのポーリングを実行するが、図１６においてはその図示を省略する。
【０１１８】
管理対象サーバ４が、図８における処理＃２１と同様に、ＮＩＣ４１−１からブート要求を発行することにより、ＮＩＣ１からネットワークブートしようとする（＃２１）。この場合、管理サーバ１の正ブート制御手段１３は、正常であるので、ＮＩＣ４１−１からのブート要求を受信する。
【０１１９】
管理サーバ１において、正ブート制御手段１３は、ＮＩＣ４１−１からのブート要求を受信すると、「alive query」をサーバ管理手段１２に送信し、「alive query」の送信の時刻から予め設定された待ち時間の間、サーバ管理手段１２からの「alive」の受信を待つ。（＃２１’）。
【０１２０】
サーバ管理手段１２から「alive」を受信しない場合、正ブート制御手段１３は、システム管理者にエラーの発生を知らせて処理を終了する。サーバ管理手段１２から「alive」を受信した場合、正ブート制御手段１３は、図８における処理＃２２と同様に、管理対象サーバ４のＮＩＣ４１−１に第１ブート応答を返す（＃２２）。この後、図８と同様にして、処理＃２３〜＃２６が実行される。
【０１２１】
この後、管理対象サーバ４が、ＨＢＡ４２が初期化されたので、新しい優先順位であるＮＩＣ４１−２からブート要求を発行する（＃２７）。この場合、復旧サーバ２の副ブート制御手段２３は、正常であるので、ＮＩＣ４１−２からのブート要求を受信する。
【０１２２】
復旧サーバ２において、副ブート制御手段２３は、ＮＩＣ４１−２からのブート要求を受信すると、「alive query」を復旧管理手段２２に送信し、「alive query」の送信の時刻から予め設定された待ち時間の間、復旧管理手段２２からの「alive」の受信を待つ（＃２７’）。
【０１２３】
復旧管理手段２２から「alive」を受信しない場合、副ブート制御手段２３は、システム管理者にエラーの発生を知らせて処理を終了する。復旧管理手段２２から「alive」を受信した場合、副ブート制御手段２３は、図８における処理＃２８と同様に、管理対象サーバ４のＮＩＣ４１−２に第２ブート応答を返す（＃２８）。この後、図８と同様にして、処理＃２９が実行される。
【０１２４】
なお、図９に示すように、管理サーバ１が停止し、復旧サーバ２が正常に動作し、管理対象サーバ４がブート処理を実行する場合においても、図１６の処理＃２７’が、処理＃２８に先立って実行される。
【０１２５】
図１７は、図１６の処理において、正ブート制御手段１３が実行するブート処理の処理フローを示す。
【０１２６】
正ブート制御手段１３は、管理対象サーバ４からのブート要求を受信すると（ステップＳ７１）、当該ブート要求がＮＩＣ４１−１からのものか否かを調べる（ステップＳ７２）。当該ブート要求がＮＩＣ４１−１からのものでない場合（ステップＳ７２  ＮＯ）、正ブート制御手段１３は、当該ブート要求を廃棄した後（ステップＳ７３）、ステップＳ７１を繰り返す。
【０１２７】
当該ブート要求がＮＩＣ４１−１からのものである場合（ステップＳ７２  ＹＥＳ）、正ブート制御手段１３は、「alive query」をサーバ管理手段１２に送信した後、サーバ管理手段１２からの「alive」の受信の有無を調べる（ステップＳ７４）。
【０１２８】
サーバ管理手段１２から「alive」を受信した場合、換言すれば、サーバ管理手段１２が正常である場合（ステップＳ７４  ＹＥＳ）、正ブート制御手段１３は、管理対象サーバ４のＮＩＣ４１−１にブロードキャストにより第１ブート応答を送信する（ステップＳ７５）。この後、正ブート制御手段１３は、サーバ管理手段１２に、サーバ管理テーブル１４の更新を依頼し（ステップＳ７６）、この後、ステップＳ７１を繰り返す。なお、サーバ管理テーブル１４の更新は、例えば、サーバ管理テーブル１４にＮＩＣ４１−１からのブート要求の受信時刻を記録する処理である。
【０１２９】
サーバ管理手段１２から「alive」を受信しない場合、換言すれば、サーバ管理手段１２が正常でない場合（ステップＳ７４  ＮＯ）、正ブート制御手段１３は、システム管理者にエラーの発生というイベントを通知する（ステップＳ７７）。この後、正ブート制御手段１３は、サーバ管理手段１２を予め設定された回数だけ再起動し（ステップＳ７８）、この後、ステップＳ７１を繰り返す。
【０１３０】
図１８は、図１６の処理において、サーバ管理手段１２が実行するブート処理の処理フローを示す。
【０１３１】
サーバ管理手段１２は、正ブート制御手段１３からの要求を受信すると（ステップＳ８１）、当該要求が正ブート制御手段１３からの当該サーバ管理手段１２に対する「alive query」か否かを調べる（ステップＳ８２）。当該要求がステップＳ７４における「alive query」である場合（ステップＳ８２  ＹＥＳ）、サーバ管理手段１２は、正ブート制御手段１３に応答としての「alive 」を送信し（ステップＳ８３）、この後、ステップＳ８１を繰り返す。
【０１３２】
当該要求が「alive query」でない場合、換言すれば、当該要求がステップＳ７６におけるサーバ管理テーブル１４の更新の依頼である場合（ステップＳ８２  ＮＯ）、サーバ管理手段１２は、サーバ管理テーブル１４を更新し（ステップＳ８４）、サーバ定義ファイル１８を作成して（ステップＳ８５）、当該ブート要求をＨＢＡベンダ判別プログラム１６へ送信し（ステップＳ８６）、この後、ステップＳ８１を繰り返す。
【０１３３】
図１９は、図１６の処理において、副ブート制御手段２３が実行するブート処理の処理フローを示す。
【０１３４】
副ブート制御手段２３は、管理対象サーバ４からのブート要求を受信すると（ステップＳ９１）、「alive query」を復旧管理手段２２に送信した後、復旧管理手段２２からの「alive」の受信の有無を調べる（ステップＳ９２）。
【０１３５】
復旧管理手段２２から「alive」を受信しない場合、換言すれば、復旧管理手段２２が正常でない場合（ステップＳ９２  ＮＯ）、副ブート制御手段２３は、システム管理者にエラーの発生というイベントを通知する（ステップＳ９３）。この後、副ブート制御手段２３は、復旧管理手段２２を予め設定された回数だけ再起動し（ステップＳ９４）、この後、ステップＳ９１を繰り返す。
【０１３６】
復旧管理手段２２から「alive」を受信した場合、換言すれば、復旧管理手段２２が正常である場合（ステップＳ９２  ＹＥＳ）、ブート監視手段２４が、図１３のステップＳ４４及びＳ４１０と同様にして、ステップＳ９５〜Ｓ９１１を実行する。
【０１３７】
図２０は、図１６の処理において、復旧管理手段２２が実行するブート処理の処理フローを示す。
【０１３８】
復旧管理手段２２は、副ブート制御手段２３からの要求を受信すると（ステップＳ１０１）、当該要求が副ブート制御手段２３からの当該復旧管理手段２２に対する「alive query」か否かを調べる（ステップＳ１０２）。当該要求がステップＳ７４における「alive query」である場合（ステップＳ１０２  ＹＥＳ）、復旧管理手段２２は、副ブート制御手段２３に応答としての「alive 」を送信し（ステップＳ１０３）、この後、ステップＳ１０１を繰り返す。
【０１３９】
当該要求が「alive query」でない場合、復旧管理手段２２は、管理サーバ１のサーバ管理手段１２に対してポーリングを行い（ステップＳ１０４）、当該ポーリングによりサーバ管理手段１２から受信した情報に基づいて復旧管理テーブル２５を更新し（ステップＳ１０５）、この後、ステップＳ１０１を繰り返す。なお、ステップＳ１０４及びＳ１０５は、復旧管理手段２２の実行する復旧管理手順である。実際には、ステップＳ１０４及びＳ１０５は、ステップＳ１０１において副ブート制御手段２３からの要求を受信しなくても、所定の時間間隔でステップＳ１０１を繰り返され、その間に副ブート制御手段２３からの要求を受信するとステップＳ１０１〜Ｓ１０３が実行される。
【符号の説明】
【０１４０】
１  管理サーバ
２  復旧サーバ
３  管理ネットワーク
４  管理対象サーバ
５  ストレージエリアネットワーク（ＳＡＮ）
６  ストレージ
１１、２１、４１  ＮＩＣ
１２  サーバ管理手段
１３  正ブート制御手段
１４  サーバ管理テーブル
１５  正ブート制御オブジェクト
１６  ＨＢＡベンダ判別プログラム
１７  ＨＢＡベンダ専用プログラム
１８  サーバ定義ファイル
２２  復旧管理手段
２３  副ブート制御手段
２４  ブート監視手段
２５  復旧管理テーブル
２６  副ブート制御オブジェクト
２７  復旧プログラム
２８  ＮＯＰプログラム
【図１】
0005493452.tif 000002
【図２】
0005493452.tif 000003
【図３】
0005493452.tif 000004
【図４】
0005493452.tif 000005
【図５】
0005493452.tif 000006
【図６】
0005493452.tif 000007
【図７】
0005493452.tif 000008
【図８】
0005493452.tif 000009
【図９】
0005493452.tif 000010
【図１０】
0005493452.tif 000011
【図１１】
0005493452.tif 000012
【図１２】
0005493452.tif 000013
【図１３】
0005493452.tif 000014
【図１４】
0005493452.tif 000015
【図１５】
0005493452.tif 000016
【図１６】
0005493452.tif 000017
【図１７】
0005493452.tif 000018
【図１８】
0005493452.tif 000019
【図１９】
0005493452.tif 000020
【図２０】
0005493452.tif 000021