(57)【要約】ノード数及びサポートするプロトコル数の多い計算機システム上でノードの発見時間を短縮することが可能な計算機システム及びノード探索方法を提案する。ネットワークを介して各第１及び第２のノードと接続され、第１及び第２のノードのネットワークアドレスと、第１又は第２のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む第１及び第２のノードごとの第１の情報を収集して管理する管理サーバを備え、管理サーバが、ネットワーク上の第１及び第２のノードを探索し、第１又は第２のノードを検出したときには、第２のノードを検出したときには、第２のノードが管理する各第１のノードのネットワークアドレスと、第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを第２のノードから取得し、取得した第１のノードごとのネットワークアドレス及びプロトコル種別を対応付けて管理するようにした。
2012157019.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された複数の第１のノードと、
前記ネットワークに接続され、前記複数の第１のノードのうちの一部又は全部の前記第１のノードを管理する１又は複数の第２のノードと、
前記ネットワークを介して各前記第１及び第２のノードと接続され、各前記第１及び第２のノードのネットワークアドレスと、当該第１又は第２のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む前記第１及び第２のノードごとの第１の情報を収集して管理する管理サーバと
を備え、
前記第２のノードは、
前記複数の第１のノードのうちの管理対象の第１のノードごとの、ネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む第２の情報を管理しており、
前記管理サーバは、
前記ネットワーク上の前記第１及び第２のノードを探索し、前記第２のノードを検出したときには、当該第２のノードが管理する各前記第１のノードのネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを当該第２のノードから取得し、取得した当該第１のノードごとの前記ネットワークアドレス及び前記プロトコル種別を対応付けて管理する
ことを特徴とする計算機システム。
【請求項２】
前記管理サーバは、
前記ネットワーク上の前記第１及び第２のノードを探索し、前記第１又は第２のノードを検出したときには、当該第１又は第２のノードと通信する際に使用すべき通信プロトコルのプロトコル種別を取得し、取得した前記プロトコル種別を当該第１又は第２のノードのネットワークアドレスと対応付けて管理する一方、前記第２のノードを検出したときには、当該第２のノードが管理する各前記第１のノードのネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを当該第２のノードから取得し、取得した前記ネットワークアドレス及び前記プロトコル種別を利用して、対応する前記第１のノードにアクセス可能か否かを検証する
ことを特徴とする計算機システム。
【請求項３】
前記第２のノードは、
前記第１のノードが他の前記第１のノードを複製して作成された場合、複製元の前記第１のノードと、複製先の前記第１のノードとの対応関係を表す第１の関係情報を保持しており、
前記管理サーバは、
前記第１の関係情報を利用して、前記他の第１のノードから複製された前記第１のノードの通信プロトコルのプロトコル種別を取得し、取得した前記プロトコル種別を優先的に用いて対象とする前記第１のノードに対するアクセスを試行する
ことを特徴とする請求項１に記載の計算機システム。
【請求項４】
前記第２のノードは、
前記第１のノードがテンプレートに基づいて作成された場合、当該テンプレートと、当該テンプレートに基づいて作成された前記第１のノードとの対応関係を表す第２の関係情報を保持しており、
前記管理サーバは、
前記第２の関係情報を利用して、前記他の第１のノードから複製された前記第１のノードの通信プロトコルのプロトコル種別を取得し、取得した前記プロトコル種別を優先的に用いて対象とする前記第１のノードに対するアクセスを試行する
ことを特徴とする請求項１に記載の計算機システム。
【請求項５】
前記管理サーバは、
予め前記第２のノードの前記ネットワークアドレスを管理し、
前記ネットワーク上の前記第１及び第２のノードを探索する際に、前記ネットワークアドレスに対応する前記第２のノードの探索を優先的に実行する
ことを特徴とする請求項１に記載の計算機システム。
【請求項６】
前記管理サーバは、
前記ネットワーク上の前記第１及び第２のノードを探索する際、検出した前記第１又は第２のノードに対して当該管理サーバがサポートする複数のプロトコル種別によるアクセスを順次試行する試行処理を実行することにより、当該第１又は第２のノードにアクセスする際に使用すべき通信プロトコルのプロトコル種別を取得し、
前記試行処理では、直前に検出した前記第１又は第２のノードについて取得した前記プロトコル種別を優先的に用いて対象とする前記第１又は第２のノードに対するアクセスを試行する
ことを特徴とする請求項１に記載の計算機システム。
【請求項７】
ネットワークに接続された複数の第１のノードと、前記ネットワークに接続され、前記複数の第１のノードのうちの一部又は全部の前記第１のノードを管理する１又は複数の第２のノードと、前記ネットワークを介して各前記第１及び第２のノードと接続され、各前記第１及び第２のノードのネットワークアドレスと、当該第１又は第２のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む前記第１及び第２のノードごとの第１の情報を収集して管理する管理サーバとを有する計算機システムのノード探索方法において、
前記第２のノードは、
前記複数の第１のノードのうちの管理対象の第１のノードごとの、ネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む第２の情報を管理しており、
前記管理サーバが、前記ネットワーク上の前記第１及び第２のノードを探索する第１のステップと、
前記管理サーバが、前記第２のノードを検出したときには、当該第２のノードが管理する各前記第１のノードのネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを当該第２のノードから取得し、取得した当該第１のノードごとの前記ネットワークアドレス及び前記プロトコル種別を対応付けて管理する第２のステップと
を備えることを特徴とするノード探索方法。
【請求項８】
前記第１のステップにおいて、前記管理サーバは、
前記第１又は第２のノードを検出したときには、当該第１又は第２のノードと通信する際に使用すべき通信プロトコルのプロトコル種別を取得し、取得した前記プロトコル種別を当該第１又は第２のノードのネットワークアドレスと対応付けて管理し、
前記第２のステップにおいて、前記管理サーバは、
前記第２のノードから取得した当該第２のノードが管理する前記第１のノードごとの前記ネットワークアドレス及び前記プロトコル種別を利用して、対応する前記第１のノードにアクセス可能か否かを検証する
ことを特徴とする請求項７に記載のノード探索方法。
【請求項９】
前記第２のノードは、
前記第１のノードが他の前記第１のノードを複製して作成された場合、複製元の前記第１のノードと、複製先の前記第１のノードとの対応関係を表す第１の関係情報を保持しており、
前記第２のステップにおいて、前記管理サーバは、
前記第１の関係情報を利用して、前記他の第１のノードから複製された前記第１のノードの通信プロトコルのプロトコル種別を取得し、取得した前記プロトコル種別を優先的に用いて対象とする前記第１のノードに対するアクセスを試行する
ことを特徴とする請求項７に記載のノード探索方法。
【請求項１０】
前記第２のノードは、
前記第１のノードがテンプレートに基づいて作成された場合、当該テンプレートと、当該テンプレートに基づいて作成された前記第１のノードとの対応関係を表す第２の関係情報を保持しており、
前記第２のステップにおいて、前記管理サーバは、
前記第２の関係情報を利用して、前記他の第１のノードから複製された前記第１のノードの通信プロトコルのプロトコル種別を取得し、取得した前記プロトコル種別を優先的に用いて対象とする前記第１のノードに対するアクセスを試行する
ことを特徴とする請求項７に記載のノード探索方法。
【請求項１１】
前記第１のステップにおいて、前記管理サーバは、
予め前記第２のノードの前記ネットワークアドレスを管理し、
前記ネットワーク上の前記第１及び第２のノードを探索する際に、前記ネットワークアドレスに対応する前記第２のノードの探索を優先的に実行する
ことを特徴とする請求項７に記載のノード探索方法。
【請求項１２】
前記第１のステップにおいて、前記管理サーバは、
前記ネットワーク上の前記第１及び第２のノードを探索する際、検出した前記第１又は第２のノードに対して当該管理サーバがサポートする複数のプロトコル種別によるアクセスを順次試行する試行処理を実行することにより、当該第１又は第２のノードにアクセスする際に使用すべき通信プロトコルのプロトコル種別を取得し、
前記試行処理では、直前に検出した前記第１又は第２のノードについて取得した前記プロトコル種別を優先的に用いて対象とする前記第１又は第２のノードに対するアクセスを試行する
ことを特徴とする請求項７に記載のノード探索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークノード管理システム及びノード探索方法に関し、例えば管理サーバ及び複数のサーバから構成される計算機システム及びノード探索方法に適用して好適なるものである。
【背景技術】
【０００２】
近年、ネットワークは、ビジネスに不可欠なものとなっている。企業のデータセンタで稼働している計算機システムには、ネットワーク上に接続されたノードを管理するための管理者用ノードが設けられており、管理者は、この管理者用ノードを介して、ネットワーク上のノードに対してその電源をオン／オフさせるなどの各種操作指示を与える。従って、計算機システムの管理者は、ネットワークにどのようなノードが接続され、そのノードがどのような状態で、どのように利用されているか、及び、そのノードがどのような通信プロトコル種でアクセス可能かなどを把握及び管理する必要がある。【０００３】
ところで、ネットワーク内の各ノードのノード情報を収集する方法としては、従来、管理対象のノード内に情報収集用のプログラム（エージェント）を実装し、この管理対象ノードのプログラムが管理者用ノードに対してそのノードのノード情報を定期的に送信することでネットワーク上のノード情報を収集するエージェント管理方式が使用されている。例えば特許文献１には、２種類のプロトコルによってサポートされているネットワークノードシステム上でエージェント管理方式を用いてノード情報を収集する方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１４６４１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の特許文献１に開示された方法によると、計算機システム上でサポートするプロトコル数が増加した場合、管理者は、順次既定のプロトコル一つ一つでノードがアクセス可能かどうかを調べていき、アクセスが成功したノードに対してのノード情報を入手するという方法を用いているため、プロトコル数に応じてノード情報を収集するのに手間取ってしまい、処理にかかる時間が増えてしまう問題があった。【０００６】
また、上述の特許文献１に開示された方法によると、計算機システム上の管理対象のノード数が増加した場合も、管理者がノード数に応じて調べなければならないノードの探索範囲が広くなるため、処理にかかる時間が増えてしまう問題があった。【０００７】
さらに、上述の特許文献１には、エージェント管理方式による方法が開示されているが、近年では、エージェントプログラムのメンテナンスの煩雑性や、エージェントプログラムとノードとの間の競合問題や、ノードの増設を行った場合のプログラムのインストールの手間などを懸念する傾向が強まり、管理者用ノードにノード情報収集用のプログラムを導入し、管理対象のノードでノード情報収集用のプログラムを稼働させることなく、管理者用ノードがネットワークを介してノード情報を入手するエージェントレス管理方式が一般化しつつある。したがって、エージェントレス管理方式を用いたネットワーク内のノード情報を収集する方法を提案しなければならないという問題があった。【０００８】
本発明は以上の点を考慮してなされたもので、ノード数及びサポートするプロトコル数の多い計算機システム上でノードの発見時間を短縮することが可能な計算機システム及びノード探索方法を提案しようとするものである。
【課題を解決するための手段】
【０００９】
かかる課題を解決するために本発明においては、ネットワークに接続された複数の第１のノードと、前記ネットワークに接続され、前記複数の第１のノードのうちの一部又は全部の前記第１のノードを管理する１又は複数の第２のノードと、前記ネットワークを介して各前記第１及び第２のノードと接続され、各前記第１及び第２のノードのネットワークアドレスと、当該第１又は第２のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む前記第１及び第２のノードごとの第１の情報を収集して管理する管理サーバとを備え、前記第２のノードは、前記複数の第１のノードのうちの管理対象の第１のノードごとの、ネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む第２の情報を管理しており、前記管理サーバは、前記ネットワーク上の前記第１及び第２のノードを探索し、前記第２のノードを検出したときには、当該第２のノードが管理する各前記第１のノードのネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを当該第２のノードから取得し、取得した当該第１のノードごとの前記ネットワークアドレス及び前記プロトコル種別を対応付けて管理することを特徴とする計算機システム。
が提供される。【００１０】
また本発明においては、ネットワークに接続された複数の第１のノードと、前記ネットワークに接続され、前記複数の第１のノードのうちの一部又は全部の前記第１のノードを管理する１又は複数の第２のノードと、前記ネットワークを介して各前記第１及び第２のノードと接続され、各前記第１及び第２のノードのネットワークアドレスと、当該第１又は第２のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む前記第１及び第２のノードごとの第１の情報を収集して管理する管理サーバとを有する計算機システムのノード探索方法において、前記第２のノードは、前記複数の第１のノードのうちの管理対象の第１のノードごとの、ネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを含む第２の情報を管理しており、前記管理サーバが、前記ネットワーク上の前記第１及び第２のノードを探索する第１のステップと、前記管理サーバが、前記第２のノードを検出したときには、当該第２のノードが管理する各前記第１のノードのネットワークアドレスと、当該第１のノードと通信する際に使用すべき通信プロトコルのプロトコル種別とを当該第２のノードから取得し、取得した当該第１のノードごとの前記ネットワークアドレス及び前記プロトコル種別を対応付けて管理する第２のステップとを備えるようにした。
【発明の効果】
【００１１】
本発明によれば、ノード数及びサポートするプロトコル数の多い計算機システム上においてもノードの発見時間を短縮することができる。
【図面の簡単な説明】
【００１２】
【図１】第１及び第２の実施形態による計算機システムの全体構成を示すブロック図である。
【図２】管理サーバの概略構成を示すブロック図である。
【図３】第１及び第２の実施形態による計算機システムの構成例を示すブロック図である。
【図４】サポートプロトコルテーブルの構成を示す概念図である。
【図５】認証情報テーブルの構成を示す概念図である。
【図６】探索候補テーブルの構成を示す概念図である。
【図７】第１及び第３の実施形態の探索結果テーブルの構成を示す概念図である。
【図８】第１の探索処理の処理手順を示すフローチャートである。
【図９】他ノード情報取得処理の処理手順を示すフローチャートである。
【図１０】第１の仮想ノード情報取得処理の処理手順を示すフローチャートである。
【図１１】第２の仮想ノード情報取得処理の処理手順を示すフローチャートである。
【図１２】第２の実施の形態の探索結果テーブルの構成を示す概念図である。
【図１３】第２の探索処理の処理手順の処理手順を示すフローチャートである。
【図１４】第３の実施形態による計算機システムの全体構成を示すブロック図である。
【図１５】クローニング関係テーブルの構成を示す概念図である。
【図１６】テンプレート仮想サーバテーブルの構成を示す概念図である。
【図１７】第３の仮想ノード情報取得処理の処理手順を示すフローチャートである。
【図１８】第４の仮想ノード情報取得処理の処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下図面について、本発明の一実施の形態を詳述する。
【００１４】
（１）第１の実施の形態
（１−１）本実施の形態による計算機システムの構成
図１において、１は全体として本実施の形態による計算機システムを示す。この計算機システム１は、管理サーバ２、管理端末３、仮想用物理サーバ４、物理サーバ５、ストレージ装置６、仮想化環境管理サーバ７及び管理用物理サーバ８を備えて構成される。
【００１５】
管理サーバ２、管理端末３、仮想用物理サーバ４、物理サーバ５、ストレージ装置６、仮想化環境管理サーバ７及び管理用物理サーバ８は、それぞれインターネット等のＩＰ（Internet Protocol）ネットワーク９を介して通信可能に接続されており、当該ＩＰネットワーク９を介して相互にコマンドや各種制御情報を送受し得るようになされている。
【００１６】
また管理サーバ２、仮想用物理サーバ４、物理サーバ５及び管理用物理サーバ８は、それぞれＳＡＮ（Storage Area Network）１０を介してストレージ装置６と通信可能に接続されており、当該ＳＡＮ１０を介してストレージ装置にデータを入出力し得るようになされている。
【００１７】
管理サーバ２は、計算機システム１全体を管理するサーバ装置であり、ＩＰネットワーク９を介して接続された仮想用物理サーバ４、物理サーバ５、ストレージ装置６、仮想化環境管理サーバ７及び管理用物理サーバ８などのノードから構成情報、性能情報及び状態情報などのそのノードに関する各種情報（以下、これをノード情報と呼ぶ）を収集し、収集したノード情報に基づいてこれらノードを管理する。
【００１８】
管理端末３は、管理者が計算機システム１全体を管理するために用いるコンピュータ装置である。管理者は、管理端末３を用いて、例えば管理サーバ２が保持している各ノードのノード情報の中から所望のノードのノード情報を読み出させて当該管理端末３に表示させたり、新たなユーザにＩＰアドレス範囲を割り当てる際に、そのＩＰアドレス範囲や、そのＩＰアドレス範囲内のノードにログインする際の認証情報（ユーザ名及びパスワード）などを管理サーバ２に登録することができる。
【００１９】
仮想用物理サーバ４は、ＩＰネットワーク９に接続された図示しないクライアントに対して１又は複数の仮想的な計算機（以下、これを仮想サーバと呼ぶ）を提供するサーバ装置である。また物理サーバ５は、かかる仮想化機能を備えてない物理的なサーバ装置である。これら仮想サーバや物理サーバ５には、ユーザが業務で使用するソフトウェアが実装され、これらソフトウェアがユーザ業務に応じた所定処理を実行する際に用いるデータがＳＡＮ１０を介してストレージ装置６に読み書きされる。
【００２０】
ストレージ装置６は、１又は複数の記憶デバイスと、これら記憶デバイスに対するデータの入出力を制御するコントロール部とを備えて構成される。ストレージ装置６は、仮想用物理サーバ４上に作成された仮想サーバや、物理サーバ５に対してデータを読み書きするための記憶領域を提供する。
【００２１】
仮想化環境管理サーバ７は、仮想用物理サーバ４に実装された後述のハイパーバイザや、仮想用物理サーバ４上に作成された仮想サーバを管理するサーバ装置であり、これらハイパーバイザ及び各仮想サーバの構成情報や性能情報及び状態情報などの各種のノード情報を収集し、収集したノード情報に基づいて、必要時にはこれらハイパーバイザ及び仮想サーバを操作する。
【００２２】
管理用物理サーバ８は、計算機システム１内の物理的なノードを管理するサーバ装置であり、ＩＰネットワーク９やＳＡＮ１０に接続された物理的な各サーバ装置（仮想化環境管理サーバ７、仮想用物理サーバ４及び物理サーバ５）及び各ストレージ装置６や、ＩＰネットワーク９及びＳＡＮ１０とは別に構成された計算機システム１内の業務用の物理的なネットワークを構成する各ネットワーク装置に関する構成情報、性能情報及び状態情報などのノード情報を収集し、収集したノード情報に基づいて、これらのノードを管理する。
【００２３】
図２は、管理サーバ２の概略構成を示す。この図２に示すように、管理サーバ２は、ＣＰＵ２０、主記憶装置２１、補助記憶装置２２、ネットワークアダプタ２３及びストレージアダプタ２４を備えて構成される。そして、これらＣＰＵ２０、主記憶装置２１、補助記憶装置２２、ネットワークアダプタ２３及びストレージアダプタ２４は、共有バス２５を介して通信可能に接続されている。
【００２４】
ＣＰＵ２０は、管理サーバ２全体の動作制御を司るプロセッサである。また主記憶装置２１は、例えばＤＲＡＭ（Dynamic Random Access Memory）などの半導体メモリから構成され、各種制御プログラムや各種制御情報などを記憶するために利用されるほか、ＣＰＵ２０のワークメモリとしても利用される。後述する探索プログラム２６もこの主記憶装置２１に格納されて保持される。主記憶装置２１に格納された制御プログラムをＣＰＵ２０が実行することにより、管理サーバ２全体として各種処理が実行される。
【００２５】
補助記憶装置２２は、例えば、ハードディスク装置又はＳＳＤ（Solid State Drive）などの大容量の記憶デバイスから構成される。主記憶装置２１に格納される各種制御プログラムは、初期時にはこの補助記憶装置２２に保存されており、管理サーバ２の起動時やその制御プログラムの実行時に補助記憶装置２２から読み出されて主記憶装置２１に格納される。また補助記憶装置２２には、管理サーバ２によって収集された上述の各種ノード情報が格納される。
【００２６】
ネットワークアダプタ２３は、管理サーバ２をＩＰネットワーク９に接続するためのアダプタであり、管理サーバ２がＩＰネットワーク９を介して他のノードと通信を行う際のプロトコル制御を行う。またストレージアダプタ２４は、管理サーバ２をＳＡＮ１０に接続するためのアダプタであり、管理サーバ２がＳＡＮ１０を介してストレージ装置６とデータを送受する際のプロトコル制御を行う。
【００２７】
なお、管理端末３、仮想化環境管理サーバ７、管理用物理サーバ８、仮想用物理サーバ４、物理サーバ５及びストレージ装置６も管理サーバ２と同様のハードウェア構成を有するものであるため、その詳細についての説明は省略する。
【００２８】
図３は、図１について上述した本計算機システム１における管理サーバ２、管理端末３、仮想用物理サーバ４、物理サーバ５、ストレージ装置６、仮想化環境管理サーバ７及び管理用物理サーバ８の論理構成を示す。
【００２９】
この図３からも明らかなように、管理サーバ２には、計算機システム１内に存在する各ノードからノード情報を収集する探索プログラム２６が実装されており、この探索プログラム２６が収集した情報を管理するためのテーブル群２７が管理サーバ２の補助記憶装置２２に格納されている。これら探索プログラム２６及びテーブル群２７の詳細については後述する。
【００３０】
管理端末３には、管理者からの要求を受け付け、受け付けた要求に従って対応する処理を実行する入出力プログラム３４が実装されている。管理端末３は、この入出力プログラム３４に基づいて、管理サーバ２から必要な情報を取得し、取得した情報を可視表示したり、管理サーバ２に対して必要な設定を行う。
【００３１】
仮想用物理サーバ４には、例えば、Ｗｉｎｄｏｗｓ(登録商標)、Ｌｉｎｕｘ（登録商標）、ＨＰ‐ＵＸ（登録商標）、Ｓｏｌａｒｉｓ（登録商標）、ＶＯＳ３（登録商標）又はｚ／ＯＳ（登録商標）などの一般的なＯＳ（以下、これをホストＯＳと呼ぶ）が搭載されると共に、このホストＯＳ３８上で稼働するハイパーバイザ３７が実装されている。ハイパーバイザ３７は、仮想用物理サーバ４の計算機資源を仮想化し、１又は複数の仮想サーバ３５をクライアントに提供する仮想化ソフトウェアであり、例えば、VMware ESX（登録商標）、VMware vSphere Hypervisor（登録商標）、Ｈｙｐｅｒ‐Ｖ（登録商標）、Ｖｉｒｔａｇｅ（登録商標）、ＫＶＭ（登録商標）、ＸｅｎＳｅｒｖｅｒ（登録商標）、ＯｒａｃｌｅＶＭ（登録商標）などが適用される。各仮想サーバ３５上では、それぞれ独立に同一又は異なる種類のＯＳ（以下、これをゲストＯＳと呼ぶ）が稼働する。ゲストＯＳ３６としては、例えば、Ｗｉｎｄｏｗｓ(登録商標)、Ｌｉｎｕｘ（登録商標）、ＨＰ‐ＵＸ（登録商標）、Ｓｏｌａｒｉｓ（登録商標）、ＶＯＳ３（登録商標）又はｚ／ＯＳ（登録商標）などが適用される。また各仮想サーバ３５には、ゲストＯＳ３６上で稼働する各種アプリケーションソフトウェアが実装される。
【００３２】
物理サーバ５は、ハイパーバイザ３７を備えていないサーバ装置を指す。この物理サーバ５上には、仮想用物理サーバ４と同様の一般的なＯＳ（ホストＯＳ３８）が搭載され、このホストＯＳ３８上で稼働する各種のアプリケーションプログラムが実装される。
【００３３】
仮想化環境管理サーバ７には、計算機システム１内の仮想化環境を管理する仮想化環境管理プログラム３９が実装されている。仮想化環境管理サーバ７は、この仮想化環境管理プログラム３９に基づいて、仮想用物理サーバ４の仮想サーバ３５やハイパーバイザ３７から構成情報（ＩＰアドレス及びＯＳ種別を含む）、性能情報及び状態情報等のノード情報を収集したり、仮想サーバ３５やハイパーバイザ３７に対する各種操作を行う。この仮想化環境管理プログラム３９としては、例えば、ＶＭｗａｒｅ社のvCenter Server（登録商標）や、Microsoft社のSystem Center VirtualMachineManger（登録商標）などを適用することができる。
【００３４】
管理用物理サーバ８には、サーバ管理プログラム４０、ストレージ管理プログラム４２及びネットワーク管理プログラム４４が実装されている。サーバ管理プログラム４０は、計算機システム１内の物理的な各サーバ装置（仮想化環境管理サーバ７、仮想用物理サーバ４及び物理サーバ５等）から構成情報（ＩＰアドレス及びＯＳ種別を含む）、性能情報及び状態情報等のノード情報をそれぞれ収集するためのプログラムである。管理用物理サーバ８は、このサーバ管理プログラム４０に基づいて収集したサーバ装置ごとのノード情報を所定の第１の管理テーブル（以下、これをサーバ管理テーブルと呼ぶ）４１に格納して管理する。
【００３５】
またストレージ管理プログラム４２は、計算機システム１内の各ストレージ装置６から構成情報、性能情報及び状態情報などのノード情報をそれぞれ収集するためのプログラムである。管理用物理サーバ８は、このストレージ管理プログラム４２に基づいて収集したストレージ装置６ごとのノード情報を所定の第２の管理テーブル（以下、これをストレージ管理テーブルと呼ぶ）４３に格納して管理する。
【００３６】
さらにネットワーク管理プログラム４４は、上述のようにＩＰネットワーク９及びＳＡＮ１０とは別に構成された計算機システム１内の業務用の物理的なネットワークを構成する各ネットワーク装置から構成情報、性能情報及び状態情報などのノード情報をそれぞれ収集するためのプログラムである。管理用物理サーバ８は、このネットワーク管理プログラム４４に基づいて収集したネットワーク装置ごとのノード情報を所定の第３の管理テーブル（以下、これをネットワーク管理テーブルと呼ぶ）４５に格納して管理する。
【００３７】
（１−２）本実施の形態によるノード管理機能
（１−２−１）概要及びテーブル構成
次に、かかる管理サーバ２に搭載されたノード管理機能について説明する。本実施の形態による管理サーバ２には、ＩＰネットワーク９を介して接続された管理対象である仮想用物理サーバ４、物理サーバ５、ストレージ装置６、仮想化環境管理サーバ７及び管理用物理サーバ８などのノードのノード情報と、さらに他ノードのノード情報を有するノードより他ノードのノード情報を収集し、収集したノード情報に基づいて管理対象の各ノードの状態を把握及び管理するノード管理機能が搭載されている。
【００３８】
具体的に、ＩＰネットワーク内の各ノードのノード情報を収集するに際し、管理サーバ２は、指定したＩＰアドレスの範囲内のＩＰアドレスに対して順番に、登録した認証情報を用いて、既定のプロトコルによってノードに対するアクセスを順次試みる。このとき、管理サーバ２は、他ノードのノード情報を保有している仮想化環境管理サーバ７に搭載されている仮想化環境管理プログラム３９、管理用物理サーバ８に搭載されているサーバ管理プログラム４０及び仮想用物理サーバ４内に搭載されているハイパーバイザ３７などにアクセスできると、当該仮想化環境管理プログラム３９、サーバ管理プログラム４０、ハイパーバイザ３７によって管理されている複数の物理サーバ５又は仮想サーバ３５のＩＰアドレス及びＯＳ情報を一括して入手することが可能となり、これによりノードのノード情報収集処理にかかる時間を短縮することができる。
【００３９】
このようなノード管理機能に基づくノード管理処理を実行するための手段として、管理サーバ２の補助記憶装置２２には、上述のテーブル群２７（図２参照）として、図４に示すサポートプロトコルテーブル３０と、図５に示す認証情報テーブル３１と、図６に示す探索候補テーブル３２と、図７に示す探索結果テーブル３３とが格納されている。
【００４０】
サポートプロトコルテーブル３０は、管理サーバがサポートする通信プロトコルのプロトコル種別（以下、これを通信プロトコル種別と呼ぶ）を管理するために利用されるテーブルであり、図４に示すように、プロトコル識別子欄３０Ａ及びサポートプロトコル種別欄３０Ｂから構成される。
【００４１】
そしてプロトコル識別子欄３０Ａには、対応する通信プロトコル種別に対して付与された識別子（以下、これを通信プロトコル識別子と呼ぶ）が格納され、サポートプロトコル種別欄３０Ｂには、管理サーバがサポートしている通信プロトコルの種別名（プロトコル名）が格納される。
【００４２】
従って、図４は、VMware API（登録商標）、ＳＮＭＰ（Simple Network Management Protocol）、ＳＭＩＳ ＣＩＭ／ＷＥＢＥＭ、ＳＳＨ（Secure Shell）及びＷＭＩ(Windows Management Instrumentation)などの通信プロトコルを管理サーバ２がサポートしていることが示されている。
【００４３】
認証情報テーブル３１は、予め管理者により管理端末３を介して管理サーバ２に登録された認証情報を管理するために利用されるテーブルであり、図５に示すように、認証情報識別子欄３１Ａ、ユーザＩＤ欄３１Ｂ及びパスワード欄３１Ｃから構成される。
【００４４】
そしてユーザＩＤ欄３１Ｂには、ノードを使用するユーザにより設定されたユーザ識別子（ユーザＩＤ）が格納され、パスワード欄３１Ｃには、かかるノードに対してユーザにより設定された対応するパスワードが格納される。また認証情報識別子欄３１Ａには、対応するユーザＩＤ及びパスワードからなる認証情報に対して付与された識別子（以下、これを認証情報識別子）が格納される。
【００４５】
従って、図５では、ユーザＩＤが「root」でパスワードが「Password」の認証情報の認証情報識別子は「C1」であり、ユーザＩＤが「Administrator」でパスワードが「abc123」の認証情報の認証情報識別子は「C3」であることが示されている。
【００４６】
一方、探索候補テーブル３２は、ユーザによって予め登録されたＩＰアドレス範囲と、そのＩＰアドレス範囲内のＩＰアドレスが割り当てられたノードについて設定された認証情報（ユーザＩＤ及びパスワード）との対応関係を管理するために利用されるテーブルであり、図６に示すように、ＩＰアドレス範囲識別子欄３２Ａ、ＩＰアドレス範囲欄３２Ｂ及び認証情報欄３２Ｃから構成される。
【００４７】
そしてＩＰアドレス範囲欄３２Ｂには、ユーザにより設定されたＩＰアドレスの範囲が格納される。またＩＰアドレス範囲識別子欄３２Ａには、対応するＩＰアドレス範囲に対して付与された当該ＩＰアドレス範囲に固有の識別子が格納され、認証情報欄３２Ｃには、対応するＩＰアドレス範囲内のＩＰアドレスが割り当てられたノードにアクセス（ログイン）する際に使用すべき認証情報の認証情報識別子（図５参照）が格納される。
【００４８】
従って、図６では、「R1」という識別子が付与された「192.168.0.0/24」というＩＰアドレス範囲のノードにアクセスする際の認証情報が「C1」であることが示されている。なお、「192.168.0.0/24」は、「192.168.0.0」〜「192.168.0.255」のＩＰアドレス範囲を示す。
【００４９】
他方、探索結果テーブル３３は、後述する第１の探索処理により得られたＩＰネットワーク９上の各ノードの認証情報及びそのノードにアクセスする際に利用すべきプロトコルを管理するために利用されるテーブルであり、図７に示すように、ノード識別子欄３３Ａ、ＩＰアドレス欄３３Ｂ、認証情報欄３３Ｃ及びプロトコル欄３３Ｄから構成される。
【００５０】
そしてノード識別子欄３３Ａには、対応するノードに対して付与された当該ノードに固有の識別子（ノード識別子）が格納され、ＩＰアドレス欄３３Ｂには、そのノードのＩＰアドレスが格納される。また認証情報欄３３Ｃには、そのノードにアクセスする際に利用すべき認証情報の認証情報識別子（図５）が格納される。また、プロトコル欄３３Ｄには、そのノードに対してアクセスする際に利用すべき通信プロトコルの通信プロトコル識別子（図４参照）が格納される。
【００５１】
従って、図７の場合、例えば「M1」というノード識別子が付与されたノードのＩＰアドレスは「192.168.0.1」であり、そのノードにアクセスする際に利用すべき通信プロトコルの通信プロトコル識別子は「P2」（図４より通信プロトコル名は「ＳＮＭＰ」）、当該ノードにアクセスする際に利用すべき認証情報の認証情報識別子は「C1」（図５よりユーザＩＤは「root」、パスワードは「Password」）であることが示されている。
【００５２】
（１−２−２）本実施の形態によるノード管理処理に関する各種処理
次に、本実施の形態によるノード管理処理に関する各種処理の具体的な処理内容について説明する。
【００５３】
（１−２−２−１）第１の探索処理
図８は、管理サーバ２の探索プログラム２６により実行される第１の探索処理の処理手順を示す。探索プログラム２６は、この図８に示す処理手順に従って、探索範囲として指定されたＩＰアドレス範囲内の各ノードからノード情報を収集する。
【００５４】
実際上、探索プログラム２６は、ユーザより管理端末３を介して探索範囲内のＩＰアドレス範囲情報と、認証情報（ユーザＩＤ及びパスワード）とを受信すると、この第１の探索処理を開始し、まず、受信した探索範囲とすべきＩＰアドレス範囲と、そのＩＰアドレス範囲内のノードにアクセスする際に利用すべき認証情報とを一時的に補助記憶装置２２に記憶した上で、そのＩＰアドレス範囲内のＩＰアドレスを１つ選択する（ＳＰ１）。
【００５５】
続いて、探索プログラム２６は、ステップＳＰ１で選択したそのとき対象としているＩＰアドレス（以下、これを対象ＩＰアドレスと呼ぶ）が割り当てられたノードのノード情報を収集済みであるか否かを判断する（ＳＰ２）。なお、この判断は、探索結果テーブル３３（図７）のＩＰアドレス欄に対象ＩＰアドレスが格納されているレコード（行）が存在するか否かを判断することにより行われる。そして探索プログラム２６は、この判断で肯定結果を得ると、ステップＳＰ７に進む。
【００５６】
これに対して探索プログラム２６は、ステップＳＰ２の判断で否定結果を得ると、対象ＩＰアドレスと、認証情報テーブル３１に登録されている対象ＩＰアドレスに対応付けられた認証情報と、補助記憶装置２２に格納されているサポートプロトコルテーブル３０とを参照して、サポートプロトコルテーブル３０に登録されている順番で、管理サーバ２がサポートしている各プロトコルにより、その対象ＩＰアドレスが割り当てられたノードに対するアクセスを順次試みる（ＳＰ３）。
【００５７】
そして探索プログラム２６は、この後、ステップＳＰ３においていずれかのプロトコルによりそのノードへのアクセスに成功したか否かを判断する（ＳＰ４）。
【００５８】
この判断で否定結果を得ることは、対象ＩＰアドレスが割り当てられたノードが存在しないか、又は、当該ノードが存在したとしても、何らかの理由によりそのノードと通信できない（例えば、そのノードの電源が投入されていない又は管理サーバがサポートする通信プロトコルではそのノードと通信できないなど）ことを意味する。かくして、このとき探索プログラム２６は、ステップＳＰ７に進む。
【００５９】
これに対して、ステップＳＰ４の判断で肯定結果を得ることは、対象ＩＰアドレスが割り当てられたノードにアクセスできたことを意味する。かくして、このとき探索プログラム２６は、対象ＩＰアドレスと、そのときアクセスできた通信プロトコルのプロトコル種別を表す通信プロトコル種別と、そのアクセスに使用した認証情報とを探索結果テーブル３３に格納する（ＳＰ５）。
【００６０】
次いで探索プログラム２６は、ステップＳＰ４においてアクセスに成功したノードが他ノードのノード情報を保有している場合には、そのノードから当該ノードが保有するすべての他ノードのノード情報を取得する他ノード情報取得処理を実行する（ＳＰ６）。
【００６１】
この後、探索プログラム２６は、ステップＳＰ１〜ステップＳＰ６の処理を、そのとき対象としているＩＰアドレス範囲のすべてのＩＰアドレスについて実行し終えたか否かを判断する（ＳＰ７）。
【００６２】
そして探索プログラム２６は、この判断で否定結果を得ると、ステップＳＰ１に戻り、この後、ステップＳＰ１において選択するＩＰアドレスを順次他のＩＰアドレスに切り替えながら同様の処理（ステップＳＰ１〜ステップＳＰ７−ステップＳＰ１）を繰り返す。
【００６３】
そして、探索プログラム２６は、やがてそのとき対象としているＩＰアドレス範囲のすべてのＩＰアドレスについてステップＳＰ１〜ステップＳＰ６の処理を実行し終えることによりステップＳＰ７で肯定結果を得ると、この第１の探索処理を終了する。
【００６４】
（１−２−２−２）他ノード情報取得処理
図９は、上述の第１の探索処理（図８）のステップＳＰ６において実行される他ノード情報取得処理の具体的な処理内容を図９に示す。
【００６５】
探索プログラム２６は、探索処理のステップＳＰ６に進むと、この図９に示す他ノード情報取得処理を開始し、まず、対象ＩＰアドレスが割り当てられたノードのノード種別が「ＯＳ」であるか否かを判断する（ＳＰ１０）。
【００６６】
なお、この判断の判断手法としては、例えば、特定のノード種別については、特定の通信プロトコルを利用する場合があるため、図８について上述した第１の探索処理のステップＳＰ５において取得した通信プロトコル種別に基づいて対象ＩＰアドレスが割り当てられたノードのノード種別を判断する判断方法を適用することができる。また、例えば、対象ＩＰアドレスが割り当てられたノードに対して探索プログラム２６からそのノードのノード種別を確認するためのコマンドを送信し、その応答に基づいて当該ノードのノード種別を判断するようにしてもよい。以下のステップＳＰ１１〜ステップＳＰ１４における判断についても同様である。
【００６７】
ここで、ステップＳＰ１０の判断で肯定結果を得ることは、そのときアクセスしているノードが物理サーバ５又は仮想用物理サーバ４に実装されたＯＳであることを意味する。かくして、このとき探索プログラム２６は、そのＯＳ上で稼働するハイパーバイザ３７が存在するか否かをそのＯＳに問い合わせるなどして判断する（ＳＰ１５）。
【００６８】
このステップＳＰ１５の判断で否定結果を得ることは、そのときアクセスしているノードが物理サーバ５であることを意味する。かくして、このとき探索プログラム２６は、この他ノード情報取得処理を終了する。
【００６９】
これに対して、ステップＳＰ１５の判断で肯定結果を得ることは、そのときアクセスしているノードが仮想用物理サーバ４であることを意味する。かくして、このとき探索プログラム２６は、そのハイパーバイザ３７のＩＰアドレスと、そのハイパーバイザ３７にアクセスするための通信プロトコル種別とをそのＯＳから取得する（ＳＰ１６）。
【００７０】
続いて、探索プログラム２６は、ステップＳＰ１６で取得したハイパーバイザ３７のＩＰアドレスに基づいてそのハイパーバイザ３７にアクセスし、当該ハイパーバイザ３７が管理する各仮想サーバ３５（つまりそのハイパーバイザ３７が生成した各仮想サーバ３５）について、その仮想サーバ３５にアクセスするためのＩＰアドレスと、その仮想サーバ３５のゲストＯＳ３６のＯＳ種別とをそれぞれ取得した後（ＳＰ１７）、この他ノード情報取得処理を終了する。
【００７１】
一方、探索プログラム２６は、ステップＳＰ１０の判断で否定結果を得ると、対象ＩＰアドレスが割り当てられたノードのノード種別が「ハイパーバイザ」であるか否かを判断する（ＳＰ１１）。そして探索プログラム２６は、この判断で肯定結果を得ると、そのハイパーバイザ３７を管理する仮想化環境管理プログラム３９のＩＰアドレスと、その仮想化環境管理プログラム３９にアクセスするための通信プロトコル種別とを、そのハイパーバイザ３７が保持しているか否かを判断する（ＳＰ１８）。
【００７２】
そして探索プログラム２６は、この判断で否定結果を得るとステップＳＰ１７に進み、ステップＳＰ１１において認識したハイパーバイザ３７から当該ハイパーバイザ３７が管理する各仮想サーバ３５（つまりそのハイパーバイザ３７が生成した各仮想サーバ３５）にそれぞれ実装されたゲストＯＳ３６のＯＳ種別及びその仮想サーバ３５のＩＰアドレスをそれぞれ取得した後（ＳＰ１７）、この他ノード情報取得処理を終了する。
【００７３】
これに対して探索プログラム２６は、ステップＳＰ１８の判断で肯定結果を得ると、かかる仮想化環境管理プログラム３９のＩＰアドレスと、当該仮想化環境管理プログラム３９にアクセスするための通信プロトコル種別とをそのハイパーバイザ３７から取得し（ＳＰ１９）、取得したＩＰアドレスのノードに対して当該ステップＳＰ１９で取得した通信プロトコル種別でアクセスする（ＳＰ２０）。
【００７４】
そして探索プログラム２６は、このアクセスが成功したか否かを判断し（ＳＰ２１）、否定結果を得るとステップＳＰ１７に進み、ステップＳＰ１１において認識したハイパーバイザ３７から当該ハイパーバイザ３７が管理する各仮想サーバ３５（つまりそのハイパーバイザ３７が生成した各仮想サーバ３５）のゲストＯＳ３６のＯＳ種別及びその仮想サーバ３５のＩＰアドレスをそれぞれ取得する第１の仮想ノード情報取得処理を実行した後（ＳＰ１７）、この他ノード情報取得処理を終了する。
【００７５】
これに対して探索プログラム２６は、ステップＳＰ２１の判断で肯定結果を得ると、その仮想化環境管理プログラム３９から当該仮想化環境管理プログラム３９が管理する各ハイパーバイザ３７及び各仮想サーバ３５のノード情報を取得する第２の仮想ノード情報取得処理を実行し（ＳＰ２２）、この後、この他ノード情報取得処理を終了する。
【００７６】
他方、探索プログラム２６は、ステップＳＰ１１の判断で否定結果を得ると、対象ＩＰアドレスが割り当てられたノードのノード種別が「仮想化環境管理プログラム」であるか否かを判断する（ＳＰ１２）。そして探索プログラム２６は、この判断で肯定結果を得ると、その仮想化環境管理プログラム３９から当該仮想化環境管理プログラム３９が管理する各ハイパーバイザ３７及び各仮想ノード３５のノード情報を取得する第２の仮想ノード情報取得処理を実行し（ＳＰ２２）、この後、この他ノード情報取得処理を終了する。
【００７７】
また探索プログラム２６は、ステップＳＰ１２の判断で否定結果を得ると、対象ＩＰアドレスが割り当てられたノードのノード種別が「サーバ管理プログラム」であるか否かを判断する（ＳＰ１３）。そして探索プログラム２６は、この判断で肯定結果を得ると、そのサーバ管理プログラム４０から当該サーバ管理プログラム４０が管理する各物理サーバ５（仮想用物理サーバ４を含む）のノード情報を取得すると共に、取得した物理サーバ５（仮想用物理サーバ４を含む）のノード情報をそれぞれ検索結果テーブル３３に格納し（ＳＰ２３）、この後、この他ノード情報取得処理を終了する。
【００７８】
これに対して、探索プログラム２６は、ステップＳＰ１３の判断で否定結果を得ると、対象ＩＰアドレスが割り当てられたノードのノード種別が「ストレージ管理プログラム」であるか否かを判断する（ＳＰ１４）。そして探索プログラム２６は、この判断で肯定結果を得ると、そのストレージ管理プログラム４２から当該ストレージ管理プログラム４２が管理する各ストレージ装置６のノード情報を取得すると共に、取得したストレージ装置６のノード情報をそれぞれ検索結果テーブル３３に格納し（ＳＰ２４）、この後、この他ノード情報取得処理を終了する。
【００７９】
さらに探索プログラム２６は、ステップＳＰ１４の判断で否定結果を得ると、対象ＩＰアドレスが割り当てられたノードのノード種別が「ネットワーク管理プログラム」であると判断して、そのネットワーク管理プログラム４４が管理する各ネットワーク装置のノード情報を取得すると共に、取得したネットワーク装置のノード情報をそれぞれ検索結果テーブル３３に格納し（ＳＰ２５）、この後、この他ノード情報取得処理を終了する。
【００８０】
（１−２−２−３）第１の仮想ノード情報取得処理
図１０は、上述の他ノード情報取得処理（図９）のステップＳＰ１７において、探索プログラム２６により実行される第１の仮想ノード情報取得処理の具体的な処理内容を示す。探索プログラム２６は、この図１０に示す処理手順に従って、対象ノードであるハイパーバイザ３７から当該ハイパーバイザ３７が管理する仮想サーバ３５のノード情報を取得する。
【００８１】
すなわち探索プログラム２６は、他のノード情報取得処理のステップＳＰ１７に進むと、この図１０に示す第１の仮想ノード情報取得処理を開始し、まず、図８について上述した第１の探索処理のステップＳＰ５において得られたそのとき対象としているハイパーバイザ３７のＩＰアドレス及び通信プロトコル種別を利用して、そのハイパーバイザ３７にアクセスする。そして探索プログラム２６は、探索結果テーブル３３を参照して、その探索結果テーブル３３に登録されていないノード（仮想サーバ３５）のノード情報をハイパーバイザ３７が保有しているか否か判断する（ＳＰ３０）。そして探索プログラム２６は、この判断で否定結果を得ると、この第１の仮想ノード情報取得処理を終了する。
【００８２】
これに対して探索プログラム２６は、ステップＳＰ３０の判断で肯定結果を得ると、そのハイパーバイザ３７が保有するノード情報の中から探索結果テーブル３３に登録されていないノード（仮想サーバ３５）のノード情報を１つ選択し、選択したノード情報をそのハイパーバイザ３７から取得する。そして、探索プログラム２６は、取得したノード情報に含まれるそのノードに実装されたゲストＯＳ３６のＯＳ種別に基づいて、当該ノードと通信する際に利用すべき通信プロトコル種別を取得し、この通信プロトコル種別と、ノード情報に含まれるＩＰアドレスとを探索結果テーブル３３に格納する（ＳＰ３１）。
【００８３】
次いで探索プログラム２６は、ステップＳＰ３０及びステップＳＰ３１の処理をハイパーバイザ３７が保有しているすべての他ノード（仮想サーバ３５）のノード情報について実行し終えたか否かを判断する（ＳＰ３２）。
【００８４】
探索プログラム２６は、ステップＳＰ３２で否定結果を得ると、ステップＳＰ３０に戻り、この後、同様の処理（ステップＳＰ３０〜ステップＳＰ３２−ステップＳＰ３０）を繰り返す。
【００８５】
そして、探索プログラム２６は、ハイパーバイザ３７が保有するすべてのノード情報についてステップＳＰ３０〜ステップＳＰ３２の処理を実行し終えることによりステップＳＰ３２で肯定結果を得ると、この第１の仮想ノード情報取得処理を終了する。
【００８６】
（１−２−２−４）第２の仮想ノード情報取得処理
一方、図１１は、上述の他ノード情報取得処理（図９）のステップＳＰ２２において、探索プログラム２６により実行される第２の仮想ノード情報取得処理の具体的な処理内容を示す。探索プログラム２６は、この図１１に示す処理手順に従って、対象ノードである仮想化環境管理プログラム３９から当該仮想化環境管理プログラム３９が管理するハイパーバイザ３７及び仮想サーバ３５のノード情報を取得する。
【００８７】
探索プログラム２６は、他ノード情報取得処理のステップＳＰ２２に進むと、この図１１に示す他の第２の仮想ノード情報取得処理を開始し、まず、図８について上述した第１の探索処理のステップＳＰ５において取得したそのとき対象としている仮想化環境管理プログラム３９のＩＰアドレス及び通信プロトコル種別を利用して、その仮想化環境管理プログラム３９にアクセスする。そして探索プログラム２６は、探索結果テーブル３３を参照して、その探索結果テーブル３３に登録されていないハイパーバイザ３７のノード情報を仮想化環境管理プログラム３９が保有しているか否かを判断する（ＳＰ４０）。そして探索プログラム２６は、この判断で否定結果を得ると、この第１の仮想ノード情報取得処理を終了する。
【００８８】
これに対して探索プログラム２６は、ステップＳＰ４０の判断で肯定結果を得ると、その仮想化環境管理プログラム３９が保有するノード情報の中から探索結果テーブル３３に登録されていないハイパーバイザ３７のノード情報を１つ選択し、選択したノード情報をその仮想化環境管理プログラム３９から取得する。そして、探索プログラム２６は、取得したノード情報に基づいて、そのハイパーバイザ３７と通信する際に利用すべき通信プロトコル種別を取得し、この通信プロトコル種別と、ノード情報に含まれるＩＰアドレスとを探索結果テーブル３３に格納する（ＳＰ４１）。
【００８９】
次いで探索プログラム２６は、ステップＳＰ４０及びステップＳＰ４１の処理を仮想化環境管理プログラム３９が保有しているすべてのハイパーバイザ３７のノード情報について実行し終えたか否かを判断する（ＳＰ４２）。
【００９０】
探索プログラム２６は、ステップＳＰ４２で否定結果を得ると、ステップＳＰ４０に戻り、この後、同様の処理（ステップＳＰ４０〜ステップＳＰ４２−ステップＳＰ４０）を繰り返す。
【００９１】
そして、探索プログラム２６は、仮想化環境管理プログラム３９が保有するすべてのハイパーバイザ３７のノード情報についてステップＳＰ４０〜ステップＳＰ４２の処理を実行し終えることによりステップＳＰ４２で肯定結果を得ると、この後、ステップＳＰ４３〜ステップＳＰ４５を図１０について上述した第１の仮想ノード情報取得処理のステップＳＰ３０〜ステップＳＰ３２と同様に処理する。これにより探索プログラム２６は、仮想化環境管理プログラム３９が保有する仮想サーバ３５のノード情報のうち、探索結果テーブル３３に登録されていない仮想サーバ３５のノード情報を順次探索結果テーブル３３に登録する。そして探索プログラム２６は、この後、この第２の仮想ノード情報取得処理を終了する。
【００９２】
（１−３）本実施の形態の効果
以上のように本実施の形態によれば、例えば、仮想化環境管理プログラム３９及びハイパーバイザ３７によって管理されている仮想サーバ３５のノード情報を取得することができ、従来のように一つ一つのＩＰアドレスに対して順次複数のプロトコルによるアクセスを試みる場合に比べて一連の処理に要する時間を短縮することができる。かくするにつき、ノード数及びサポートするプロトコル数の多い計算機システム上でノードの発見時間を短縮し得る計算機システムを実現できる。
【００９３】
（２）第２の実施の形態
（２−１）本実施の形態による計算機システムの構成
図１及び図３において、５０は全体として第２の実施の形態による計算機システムを示す。この計算機システム５０は、他ノードのノード情報を保持するノード（仮想化環境管理プログラム３９、ハイパーバイザ３７又はサーバ管理プログラム等）から当該他ノードのノード情報を取得する処理（以下、これを仮探索処理と呼ぶ）を実行することに加えて、かかる仮探索処理により取得した他ノードのノード情報に基づいて当該他ノードにアクセス可能か否かを検証する処理（以下、これを本探索処理と呼ぶ）を実行する点を除いて第１の実施の形態による計算機システム１と同様に構成されている。
【００９４】
実際上、第１の実施の形態において、管理サーバ５１の探索プログラム５２は、仮想化環境管理プログラム３９等から、その仮想化環境管理プログラム３９等が管理している他ノードのノード情報（ＩＰアドレス及びＯＳ種別情報等）を一括して取得した場合に、取得したノード情報に基づいて当該他ノードにアクセスできるか否かを検証することなく、当該ノード情報を探索結果テーブル３３に格納している。
【００９５】
しかしながら、例えば、仮想サーバ３５等を利用する個々のユーザにより仮想サーバ３５等のＩＰアドレスや通信プロトコル種別が変更され、仮想化環境管理プログラム３９等が管理する当該仮想サーバ３５等のノード情報にその変更を反映する前に、探索プログラム２６がこの反映前のノード情報を仮想化環境管理プログラム３９から取得してしまった場合、管理サーバ５１は、取得した反映前のＩＰアドレスや通信プロトコル種別に基づいて当該仮想サーバ３５等にアクセスしようとすると、アクセスできないという事態が発生することになる。
【００９６】
そこで、本実施の形態の場合、探索プログラム５２は、あるノードから当該ノードが管理する他ノードのノード情報を取得した場合には、取得したノード情報に基づいて当該他ノードに実際にアクセスできるかを検証する本探索処理を実行する。
【００９７】
また探索プログラム５２は、対象ＩＰアドレスのノードのノード情報（認証情報及びプロトコル）がすでに既定のプロトコルによってアクセスが未だに実行されていない場合には、規定のプロトコルによるノードに対するアクセスを試みる処理が実行される。そして、この処理においてアクセスが失敗した場合、管理サーバ５１のサポートプロトコルテーブル３０に格納されている他のプロトコルによってアクセスを試みる。そして、アクセスが成功すると、探索プログラム５２は、アクセスが成功したときのプロトコルを探索結果テーブル５４の対象ＩＰアドレスのノードのノード情報の該当部分に上書きする。
【００９８】
以上のような本実施の形態によるノード管理処理を実現するための手段として、管理サーバ５１の補助記憶装置２２には、図７について上述した探索結果テーブル３３（図７）に代えて、図１２に示す探索結果テーブル５４が格納されている。
【００９９】
この探索結果テーブル５４は、第１の実施の形態による探索結果テーブル３３と同様に、後述する探索処理により得られたＩＰネットワーク９上の各ノードの認証情報及びそのノードにアクセスする際に利用すべきプロトコルを管理するために利用されるテーブルであり、図１２に示すように、ノード識別子欄５４Ａ、ＩＰアドレス欄５４Ｂ、認証情報欄５４Ｃ、プロトコル欄５４Ｄ及び探索フラグ欄５４Ｅから構成される。
【０１００】
そしてノード識別子欄５４Ａ、ＩＰアドレス欄５４Ｂ、認証情報欄５４Ｃ及びプロトコル欄５４Ｄには、それぞれ第１の実施の形態による探索結果テーブル３３の対応する欄（ノード識別子欄３３Ａ、ＩＰアドレス欄３３Ｂ、認証情報欄３３Ｃ又はプロトコル欄３３Ｄ）に格納される情報と同じ情報が格納される。
【０１０１】
また探索フラグ欄５４Ｅには、探索結果テーブル５４のその行に対応するノードに対して仮探索処理及び本探索処理のいずれを終了し終えているかを表すフラグ（以下、これを探索フラグと呼ぶ）が格納される。なお、探索フラグは、対応するノードに対する仮探索処理が終了した段階では「Ｔ」に設定され、当該ノードに対する本探索処理が終了した段階で「Ｆ」に設定される。
【０１０２】
従って、図１２では、例えば「M1」というノード識別子が付与されたノードのノード情報（ＩＰアドレス、認識情報及び通信プロトコル種別）は、いずれかのノードから取得されたものであり、その「M1」というノードに対しては仮探索処理のみが終了し、本探索処理はまだ行われていないことが示されている。
【０１０３】
（２−２）本実施の形態による探索処理
次に、本実施の形態による探索処理の処理手順について説明する。
（２−２−１）第２の探索処理
図１３は、管理サーバ５１の探索プログラム５２により実行される第２の探索処理の処理手順を示す。探索プログラム５２は、この図１２に示す処理手順に従って、探索範囲として指定されたＩＰアドレス範囲内の各ノードからノード情報を収集する。
【０１０４】
実際上、探索プログラム５２は、探索範囲内のＩＰアドレス範囲情報と、認証情報（ユーザＩＤ及びパスワード）とを受信すると、この第２の探索処理を開始し、まず、管理端末３から与えられた探索範囲とすべきＩＰアドレス範囲と、そのＩＰアドレス範囲内のノードにアクセスする際に利用すべき認証情報とを一時的に補助記憶装置２２に記憶した上で、ＩＰアドレス範囲内のＩＰアドレスを１つ選択する（ＳＰ５０）。
【０１０５】
続いて、探索プログラム５２は、ステップＳＰ５０で選択した対象ＩＰアドレスが割り当てられたノードが仮検索処理によりノード情報を取得したノードであるか否かを判断する（ＳＰ５１）。この判断は、探索結果テーブル５４を検索し、いずれかのＩＰアドレス欄５４Ｂに対象ＩＰアドレスが格納されているレコードが存在し、かつ、そのレコードの探索フラグ欄５４Ｅに格納された探索フラグの値が「Ｔ」に設定されているか否かを判断することにより行われる。
【０１０６】
そして探索プログラム５２は、この判断で否定結果を得ると、ステップＳＰ５４〜ステップＳＰ５７を図８について上述した第１の探索処理のステップＳＰ３〜ステップＳＰ６と同様に処理する。これより探索プログラム５２は、対象ＩＰアドレスが割り当てられたノードから当該ノードのノード情報を取得し、取得したノード情報を探索結果テーブル５４に格納する。また探索プログラム５２は、そのノードが他ノードのノード情報を保有している場合には、その他ノードのノード情報をも取得し、取得したノード情報を探索結果テーブル５４に格納する。
【０１０７】
この際、探索プログラム５２は、ステップＳＰ５７において実行される図９について上述した他ノード情報取得処理のステップＳＰ２３、ステップＳＰ２４又はステップＳＰ２５や、当該他ノード情報取得処理において実行される図１０について上述した第１の仮想ノード情報取得処理のステップＳＰ３１、又は、図１１について上述した第２の仮想ノード情報取得処理のステップＳＰ４１，４４において、そのとき取得したノード情報を探索結果テーブル５４に登録する際、そのノード情報が格納されるレコード（行）の探索フラグ欄５４Ｅに格納された探索フラグを「Ｔ」に設定する。
【０１０８】
続いて、探索プログラム５２は、探索結果テーブル５４上の対象ＩＰアドレスに対応するノードのレコードの探索フラグ欄５４Ｅに格納されている探索フラグを「Ｆ」に設定し（ＳＰ５８）、この後、探索結果テーブル５４に登録されているすべてのノードについて、探索結果テーブル５４上の対応する探索フラグ欄５４Ｅに格納されている探索フラグが「Ｆ」に設定されているか否かを判断する（ＳＰ５９）。
【０１０９】
そして探索プログラム５２は、この判断で否定結果を得るとステップＳＰ５０に戻り、この後、ステップＳＰ５０において選択するＩＰアドレスを順次他のＩＰアドレスに切り替えながら同様の処理を繰り返す。
【０１１０】
一方、探索プログラム５２は、ステップＳＰ５１の判断で肯定結果を得ると、探索結果テーブル５４から対象ＩＰアドレスが割り当てられたノードにアクセスする際の通信プロトコル種別を取得し、そのノードに対してその通信プロトコル種別によるアクセスを試み（ＳＰ５２）、当該アクセスが成功したか否かを判断する（ＳＰ５３）。
【０１１１】
探索プログラム５２は、この判断で否定結果を得ると、探索結果テーブルからそのノードのレコードを削除した後にステップＳＰ５４に進み、この後、ステップＳＰ５４以降を上述と同様に処理する。
【０１１２】
一方、探索プログラム５２は、ステップＳＰの判断で肯定結果を得ると、探索結果テーブル５４上の対象ＩＰアドレスに対応するノードのレコードの探索フラグ欄５４Ｅに格納されている探索フラグを「Ｆ」に設定し（ＳＰ５８）、この後、探索結果テーブル５４に登録されているすべてのノードについて、探索結果テーブル５４上の対応する探索フラグ欄５４Ｅに格納されている探索フラグが「Ｆ」に設定されているか否かを判断する（ＳＰ５９）。
【０１１３】
探索プログラム５２は、この判断で否定結果を得るとステップＳＰ５０に戻り、この後、ステップＳＰ５０において選択するＩＰアドレスを順次他のＩＰアドレスに切り替えながら同様の処理を繰り返す。
【０１１４】
そして探索プログラム５２は、やがてそのとき対象としているＩＰアドレス範囲のすべてのＩＰアドレスについてステップＳＰ５０〜ステップＳＰ５８の処理を実行し終えることによりステップＳＰ５９で肯定結果を得ると、この第２の探索処理を終了する。
【０１１５】
（２−３）本実施の形態の効果
以上のように本実施の形態によれば、仮想化環境管理プログラム３９及びハイパーバイザ３７によって管理されている仮想サーバ３５のノード情報に基づくノードに対して実際にアクセス可能であるか確認することができる。かくするにつき、第１の実施の形態の計算機システム１により得られる効果に加えて、信頼性の高いノード情報を取得することができるという効果をも得られる計算機システムを実現できる。
【０１１６】
（３）第３の実施の形態
（３−１）本実施の形態による計算機システムの構成
図１４において、６０は全体として第３の実施の形態による計算機システムを示す。この計算機システム６０は、仮想化環境管理プログラム６７及びハイパーバイザ６３において管理されているノードのノード情報（ＩＰアドレス、認証情報及び通信プロトコル種別）に加えて、仮想化環境管理プログラム６７がクローニングによって仮想サーバ３５を複製する際に複製元の仮想サーバ３５と複製先の仮想サーバ３５との対応関係の情報を格納するクローニング関係テーブル６４，６８と、仮想化環境管理プログラム６７及びハイパーバイザ６３がテンプレートを用いて仮想サーバ３５を作成する際にテンプレートと仮想サーバ３５との対応関係の情報を格納するテンプレート仮想サーバ関係テーブル６５，６９とに基づいてノードのノード情報（ＩＰアドレス、認証情報及び通信プロトコル種別）を取得する点を除いて第１の実施の形態による計算機システム１と同様に構成されている。
【０１１７】
実際上、第１の実施の形態において、管理サーバ２の探索プログラム６１は、仮想化環境管理プログラム６７等から仮想化環境管理プログラム６７等が管理している他のノードのノード情報を一括して取得している。このノードのノード情報は、一定のタイミングで、仮想化環境管理プログラム６７及びハイパーバイザ６３がエージェントプログラムを稼働させることによって個々の仮想サーバ３５及びハイパーバイザ６３より収集される。
【０１１８】
しかしながら、例えば、仮想サーバ３５によっては、仮想化環境管理サーバ６６及びハイパーバイザ６３によってサポートされていないゲストＯＳ３６を稼働している場合、ゲストＯＳ３６上でエージェントプログラムを稼働していない場合、又は、ユーザによってエージェントプログラムの稼働停止がされている場合等があり、これらの場合に、仮想化環境管理プログラム６７及びハイパーバイザ６３は仮想サーバ３５よりノードのノード情報を取得できないことになる。
【０１１９】
そこで、本実施の形態の場合、探索プログラム６１は、クローニング関係テーブル６４，６８において格納されている仮想サーバ３５のクローニング関係情報に基づいて、対象となる仮想サーバ３５とクローニング関係を形成している他の仮想サーバ３５を特定する。そして、探索プログラム６１は、他の仮想サーバ３５に対する探索処理を行っており当該仮想サーバ３５に対するノードのノード情報を有している場合、他の仮想サーバ３５のノードのノード情報よりゲストＯＳ３６のＯＳ種別を取得し、このＯＳ種別を探索対象の仮想サーバ３５のＯＳ種別として記憶する。一方、探索プログラム６１は、テンプレート仮想サーバ関係テーブル６５，６９に基づいてノードのノード情報を取得する場合、対象となる仮想サーバ３５のテンプレート種別情報に基づいてゲストＯＳ３６のＯＳ種別を取得し、このＯＳ種別を探索対象の仮想サーバ３５のＯＳ種別として記憶する。
【０１２０】
以上のような本実施の形態によるノード管理処理を実現するための手段として、仮想用物理サーバ６２には、図１４に示すクローニング関係テーブル６４と、テンプレート仮想サーバ関係テーブル６５とが格納されている。
【０１２１】
クローニング関係テーブル６４は、クローニングにより作成された仮想サーバ３５について、その仮想サーバ３５の複製先を管理するために利用されるテーブルであり、図１５に示すように、クローニングペア識別子欄６４Ａ、クローニング元仮想サーバＩＤ欄６４Ｂ及びクローニング先仮想サーバＩＤ欄６４Ｃから構成される。
【０１２２】
そしてクローニングペア識別子欄６４Ａには、対応する仮想サーバ３５が他の仮想サーバ３５とクローニング関係を形成している場合に、そのクローニングペアのクローニング関係情報に対して付与された識別子（以下、これをクローニングペア識別子と呼ぶ）が格納される。また、クローニング元仮想サーバＩＤ欄６４Ｂには、クローニングによって複製される複製元の仮想サーバ３５に付与されたその仮想サーバ３５に固有の識別子（以下、これを仮想サーバＩＤと呼ぶ）が格納される。さらに、クローニング先仮想サーバＩＤ欄６４Ｃには、その仮想サーバ３５のクローニングによって複製された複製先の仮想サーバ３５の仮想サーバＩＤが格納される。
【０１２３】
従って、図１５の場合、例えば「VM01」という識別子が付与された仮想サーバ３５は、「VM04」という識別子が付与された仮想サーバ３５の複製元の仮想サーバ３５であり、「VM04」の仮想サーバ３５と共にクローニングペア識別子が「CR1」のクローニングペアを形成していることが示されている。
【０１２４】
一方、テンプレート仮想サーバ関係テーブル６５は、予め登録された仮想サーバ３５の構成情報のテンプレートと、かかるテンプレートによって作成された仮想サーバ３５との対応関係を管理するために利用されるテーブルであり、図１６に示すように、テンプレート仮想サーバ識別子欄６５Ａ、テンプレート種別ＩＤ欄６５Ｂ及び生成仮想サーバＩＤ欄６５Ｃから構成される。
【０１２５】
そしてテンプレート種別識別子欄６５Ｂには、対応するテンプレートの種別を表す情報に対して付与された当該テンプレート種別情報に固有の識別子（以下、これをテンプレート種別識別子と呼ぶ）が格納され、生成仮想サーバＩＤ欄６５Ｃには、そのテンプレートによって生成された仮想サーバ３５の仮想サーバＩＤが格納される。またテンプレート仮想サーバ識別子欄６５Ａには、対応するテンプレート種別情報及び生成仮想サーバＩＤからなるテンプレート仮想サーバ情報に対して付与された識別子が格納される。
【０１２６】
従って、図１６の場合、例えば「TR1」という識別子が付与されたテンプレート仮想サーバ情報は、「VM01」という識別子が付与された仮想サーバ３５が「Template01」という識別子が付与された仮想サーバ３５の構成情報のテンプレートに基づいて生成されたことが示されている。
【０１２７】
また仮想化環境管理サーバ６６には、図１５に示すクローニング関係テーブル６８と、図１６に示すテンプレート仮想サーバ関係テーブル６９とが格納されており、これらのクローニング関係テーブル６８及びテンプレート仮想サーバ関係テーブル６９は、それぞれ仮想用物理サーバ６２のクローニング関係テーブル６４及びテンプレート仮想サーバ関係テーブル６５と同様のものであるため、その詳細の説明は省略する。
【０１２８】
（３−２）本実施の形態による探索処理
次に、本実施の形態による探索処理の処理手順について説明する。以下では、第１の実施の形態による他ノード情報取得処理において、実行される本実施の形態による仮想ノードのノード情報取得処理について説明する。
（３−２−１）第３の仮想ノード情報取得処理
図１７は、第１の実施の形態おいて上述した他ノード情報取得処理（図９）のステップＳＰ１７において、探索プログラム６１により実行される本実施の形態による第３の仮想ノード情報取得処理の具体的な処理内容を示す。探索プログラム６１は、この図１７に示す処理手順に従って、対象ノードであるハイパーバイザ６３から当該ハイパーバイザ６３が管理する仮想サーバ３５のノード情報に加えて、ハイパーバイザ６３がクローニング及びテンプレートを用いて仮想サーバ３５を作成した際に
格納するクローニング関係テーブル６４とテンプレート仮想サーバ関係テーブル６５に基づいてノードのノード情報（ＩＰアドレス、認証情報、プロトコル）を取得する。
【０１２９】
すなわち探索プログラム６１は、第１の実施の形態における他ノード情報取得処理のステップＳＰ１７に進むと、この図１７に示す第３の仮想ノード情報取得処理を開始し、まず、図９について上述した他ノード情報取得処理のステップＳＰ１６において得られたハイパーバイザ６３のＩＰアドレスと、当該ハイパーバイザ６３と通信する際の通信プロトコル種別とに基づいてそのハイパーバイザ６３にアクセスする。そして探索プログラム６１は、探索結果テーブル３３を参照して、その探索結果テーブル３３に登録されていないノード（仮想サーバ３５）のノード情報をハイパーバイザ６３が保有しているか否か判断する（ＳＰ６０）。そして探索プログラム６１は、この判断で否定結果を得ると、ステップＳＰ５３に進む。
【０１３０】
これに対して探索プログラム６１は、ステップＳＰ５０の判断で肯定結果を得ると、そのハイパーバイザ６３が保有するノードのノード情報の中から探索結果テーブル３３に登録されていないノード（仮想サーバ３５）のノード情報を１つ選択し、そのノード情報をハイパーバイザ６３から取得する。そして、探索プログラム６１は、取得したノードのノード情報に含まれるそのノードに実装されたゲストＯＳ３６のＯＳ種別に基づいて、当該ノードと通信する際に利用すべき通信プロトコル種別を取得し、この通信プロトコル種別と、ノード情報に含まれるＩＰアドレスとを探索結果テーブル３３に格納する（ＳＰ６１）。
【０１３１】
次いで探索プログラム６１は、ステップＳＰ６０〜ステップＳＰ６２の処理をハイパーバイザ６３が保有しているすべての他ノード（仮想サーバ３５）のノード情報について実行し終えたか否かを判断する（ＳＰ６２）。そして探索プログラム６１は、この判断で肯定結果を得ると、ステップＳＰ６３に進む。
【０１３２】
これに対して探索プログラム６１は、ステップＳＰ６２で否定結果を得ると、ステップＳＰ６０に戻る。そして探索プログラム６１は、この後、同様の処理（ステップＳＰ６０〜ステップＳＰ６２−ステップＳＰ６０）を繰り返す。
【０１３３】
そして、探索プログラム６１は、ハイパーバイザ６３が保有するすべてのノード情報についてステップＳＰ６０〜ステップＳＰ６２の処理を実行し終えると、ステップＳＰ６３に進む。
【０１３４】
続いで探索プログラム６１は、ハイパーバイザ６３がクローニング関係テーブル６４を保有しているか否か判断する（ＳＰ６３）。そして探索プログラム６１は、この判断で否定結果を得ると、ステップＳＰ６５に進む。
【０１３５】
これに対して探索プログラム６１は、ステップＳＰ５３で肯定結果を得ると、そのハイパーバイザ６３が保有するクローニング関係テーブル６４より仮想サーバ３５のクローニング関係情報を取得し、一時的に補助記憶装置２２に記憶する（ＳＰ６４）。
【０１３６】
そして、探索プログラム６１は、ステップＳＰ６４によって得られたクローニング関係情報において探索結果テーブル３３に登録されていないノード（仮想サーバ３５）に対応するクローニング関係情報を格納しているか否か判断する（ＳＰ６５）。そして探索プログラム６１は、この判断で否定結果を得ると、この第３の仮想ノード情報取得処理を終了する。
【０１３７】
これに対して探索プログラム６１は、ステップＳＰ５５で肯定結果を得ると、そのクローニング関係情報より対象の仮想サーバ３５とクローニング関係を形成する他の仮想サーバ３５を特定する（ＳＰ６６）。
【０１３８】
探索プログラム６１は、探索結果テーブル３３においてステップＳＰ６６で得られた他の仮想サーバ３５に対するノードのノード情報を保有しているか否か判断する（ＳＰ６７）。そして探索プログラム６１は、この判断で否定結果を得ると、この第３の仮想ノード情報取得処理を終了する。
【０１３９】
これに対して探索プログラム６１は、ステップＳＰ６７で肯定結果を得ると、その探索結果テーブル３３において格納されている他の仮想サーバ３５のノード情報に含まれるそのノードに実装されたゲストＯＳ３６のＯＳ種別に基づいて、当該ノードと通信する際に利用すべき通信プロトコル種別を取得する（ＳＰ６８）。
【０１４０】
そして、探索プログラム６１は、操作履歴を調べてクローニングした際に記録された対象の仮想サーバ３５のＩＰアドレスを特定する（ＳＰ６９）。
【０１４１】
探索プログラム６１は、ステップＳＰ６８及びステップＳＰ６９において得られたノードのノード情報（ＩＰアドレス、認証情報及び通信プロトコル種別）を探索結果テーブル３３に格納する（ＳＰ７０）。
【０１４２】
次いで探索プログラム６１は、ステップＳＰ６５〜ステップＳＰ７０の処理を探索プログラム６１が保有しているすべての他ノード（仮想サーバ３５）のノード情報について実行し終えたか否かを判断する（ＳＰ７１）。そして探索プログラム６１は、この判断で肯定結果を得ると、ステップＳＰ７２に進む。
【０１４３】
これに対して探索プログラム６１は、ステップＳＰ６１で否定結果を得ると、ステップＳＰ６３に戻る。そして探索プログラム６１は、この後、同様の処理（ステップＳＰ６５〜ステップＳＰ７１−ステップＳＰ６５）を繰り返す。
【０１４４】
そして、探索プログラム６１は、ハイパーバイザ６３が保有するすべてのノード情報についてステップＳＰ６５〜ステップＳＰ７１の処理を実行し終えると、ステップＳＰ７２に進む。
【０１４５】
次いで探索プログラム６１は、ハイパーバイザ６３がテンプレート仮想サーバ関係テーブル６５を保有しているか否か判断する（ＳＰ７２）。そして探索プログラム６１は、この判断で否定結果を得ると、この第３の仮想ノード情報取得処理を終了する。
【０１４６】
これに対して探索プログラム６１は、ステップＳＰ６３で肯定結果を得ると、そのハイパーバイザ６３が保有するテンプレート仮想サーバ関係テーブル６５より仮想サーバ３５のテンプレート仮想サーバ情報を取得し、一時的に補助記憶装置２２に記憶する（ＳＰ７３）。
【０１４７】
そして、探索プログラム６１は、ステップＳＰ７３によって得られたテンプレート仮想サーバ情報において探索結果テーブル３３に登録されていないノード（仮想サーバ３５）に対応するテンプレート仮想サーバ情報を格納しているか否か判断する（ＳＰ７４）。そして探索プログラム６１は、この判断で否定結果を得ると、この第３の仮想ノード情報取得処理を終了する。
【０１４８】
これに対して探索プログラム６１は、ステップＳＰ７４で肯定結果を得ると、そのテンプレート仮想サーバ情報より対象の仮想サーバ３５のテンプレート種別情報を特定する（ＳＰ７５）。
【０１４９】
探索プロブラム２６は、ステップＳＰ７５で得られたテンプレート種別情報よりゲストＯＳ３６の情報を取り出し、このゲストＯＳ３６のＯＳ種別に基づいて、当該ノードと通信する際に利用すべき通信プロトコル種別を取得する（ＳＰ７６）。
【０１５０】
そして、探索プログラム６１は、操作履歴を調べてテンプレート種別情報により複製した際に記録された対象の仮想サーバ３５のＩＰアドレスを特定する（ＳＰ７７）。
【０１５１】
探索プログラム６１は、ステップＳＰ６５及びステップＳＰ６６において得られたノードのノード情報（通信プロトコル種別及びＩＰアドレス）を探索結果テーブル３３に格納する（ＳＰ７８）。
【０１５２】
次いで探索プログラム６１は、ステップＳＰ７４〜ステップＳＰ７８の処理をハイパーバイザ６３が保有しているすべての他ノード（仮想サーバ３５）のノード情報について実行し終えたか否かを判断する（ＳＰ７９）。そして探索プログラム６１は、この判断で肯定結果を得ると、この第３の仮想ノード情報取得処理を終了する。
【０１５３】
これに対して探索プログラム６１は、ステップＳＰ７９で否定結果を得ると、ステップＳＰ５０に戻る。そして探索プログラム６１は、この後、同様の処理（ステップＳＰ７４〜ステップＳＰ７９−ステップＳＰ７４）を繰り返す。
【０１５４】
そして、探索プログラム６１は、ハイパーバイザ６３が保有するすべてのノード情報についてステップＳＰ７４〜ステップＳＰ７９の処理を実行し終えると、この第３の仮想ノード情報取得処理を終了する。
（３−２−２）第４の仮想ノード情報取得処理
図１８は、第１の実施の形態おいて上述した他ノード情報取得処理（図９）のステップＳＰ１８において、探索プログラム６１により実行される本実施の形態による第４の仮想ノード情報取得処理の具体的な処理内容を示す。探索プログラム６１は、この図１８に示す処理手順に従って、対象ノードである仮想環境管理プログラム６７から当該仮想環境管理プログラム６７が管理するハイパーバイザ６３及び仮想サーバ３５のノード情報に加えて、仮想環境管理プログラム６７がクローニング及びテンプレートを用いて仮想サーバ３５を作成した際に格納するクローニング関係テーブル６８とテンプレート仮想サーバ関係テーブル６９に基づいてノードのノード情報（ＩＰアドレス、認証情報及び通信プロトコル種別）を取得する。
【０１５５】
すなわち探索プログラム６１は、第１の実施の形態における他ノード情報取得処理のステップＳＰ２２に進むと、この図１８に示す第４の仮想ノード情報取得処理を開始し、まず、図９について上述した他ノード情報取得処理のステップＳＰ１２及びステップＳＰ２１の判断において得られた仮想環境管理プログラム６７のＩＰアドレスと、通信プロトコル種別とに基づいてその仮想環境管理プログラム６７にアクセスし、補助記憶装置２２の探索結果テーブル３３に格納されているハイパーバイザ６３のノード情報と比較し、まだ管理サーバ２が取得していないハイパーバイザ６３のノード情報を仮想環境管理プログラム６７が管理しているノードのノード情報より取得できるか否か判断する（ＳＰ８０）。探索プログラム６１は、この判断で否定結果を得ると、ステップＳＰ８３に進む。
【０１５６】
これに対して探索プログラム６１は、ステップＳＰ８０で肯定結果を得ると、ハイパーバイザ６３のノード情報を仮想環境管理プログラム６７より取得する。そして、探索プログラム６１は、取得したＯＳから通信プロトコル種別を取得し、この通信プロトコル種別とＩＰアドレスを補助記憶装置２２の探索結果テーブル３３に格納する（ＳＰ８１）。
【０１５７】
次いで探索プログラム６１は、ステップＳＰ８０〜ステップＳＰ８２の処理を仮想環境管理プログラム６７が保有しているすべての他ノード（ハイパーバイザ６３）のノード情報について実行し終えたか否かを判断する（ＳＰ８２）。そして探索プログラム６１は、この判断で肯定結果を得ると、この後、ステップＳＰ８３〜ステップＳＰ１０２までの処理を図１７について上述した第３の仮想ノード情報取得処理のステップＳＰ６０〜ステップＳＰ７９と同様に処理することにより、仮想環境管理プログラム６７によって管理されているすべての仮想サーバ３５及びハイパーバイザ６３のノード情報を取得する。そして、探索プログラム６１は、この後、この第４の仮想ノード情報取得処理を終了する。
【０１５８】
これに対して探索プログラム６１は、ステップＳＰ８２で否定結果を得ると、ステップＳＰ８０に戻る。そして探索プログラム６１は、この後、同様の処理（ステップＳＰ８０〜ステップＳＰ８２−ステップＳＰ８０）を繰り返す。
【０１５９】
そして、探索プログラム６１は、仮想環境管理プログラム６７が保有するすべてのノード情報についてステップＳＰ８０〜ステップＳＰ８２の処理を実行し終えると、ステップＳＰ８３に進み、この後、ステップＳＰ８３〜ステップＳＰ１０２を処理した後、この第４の仮想ノード情報取得処理を終了する。
【０１６０】
（３−３）本実施の形態の効果
以上のように本実施の形態によれば、例えば、仮想化環境管理プログラム６７及びハイパーバイザ６３によって管理されていない仮想サーバ３５のノード情報も取得することができ、さらに第１の実施の形態と同様に、従来のように一つ一つのＩＰアドレスに対して順次複数のプロトコルによるアクセスを試みる場合に比べて一連の処理に要する時間を短縮することができる。かくするにつき、ノード数及びサポートするプロトコル数の多い計算機システム上でノードの発見時間を短縮し得る計算機システムを実現できる。
【０１６１】
（４）他の実施の形態
なお上述の第１〜第３の実施の形態においては、探索プログラム２６，５２，６１がアクセスできた仮想用物理サーバ４，６２、仮想化環境管理サーバ７，６６、管理用物理サーバ８及びハイパーバイザ６３から一括して複数のノードのノード情報を収集する場合について述べたが、本発明はこれに限らず、他ノードのノード情報を管理するノードにアクセスした際には、一括して複数のノードのノード情報を収集するようにしても良い。具体的には、探索プログラム２６，５２，６１は、ＩＰネットワーク９上でアクセスされたノードに対して割り当てられているドメイン名よりＩＰアドレスを作成するＤＮＳ（Domain name system)サーバ、ネットワーク上に存在するサーバ、プリンタなどのハードウェア資源等の管理をするアクティブディレクトリサーバ、割り当ててもよいＩＰアドレスの範囲など、ＩＰネットワークにアクセスするために必要な情報を有するＤＨＣＰ（Dynamic Host Configuration Protocol）サーバ又は、ＩＰネットワーク９を利用するユーザのメールアドレスや環境に関する情報を管理するＬＤＡＰ（Lightweight Directory Access Protocol）サーバ、同一ネットワーク上にないコンピュータとネットワークアクセスするためのルータ等の機器から構成されるデフォルトゲートウェイ等にアクセスした際に、他のノードのノード情報を取得するようにしても良い。
【０１６２】
また上述の第１〜第３の実施の形態においては、探索プログラム２６，５２，６１が指定したＩＰアドレスの範囲内のＩＰアドレスに対して順番に、登録した認証情報を用いて、既定のプロトコルによるノードに対するアクセスを順次試みることで計算機システム１，５０，６０上各ノードのノード情報を収集する場合について述べたが、本発明はこれに限らず、管理対象のノード内を流れるパケットを取得し、取得したパケットを解析することでノード情報を得るようにしても良い。具体的には、探索プログラム２６，５２，６１が、ネットワーク装置にアクセスした際にネットワーク装置内を通過するパケットをスニッフィング解析して、宛先ＩＰアドレス、宛先ポート番号、送信元ＩＰアドレス及び送信元ポート番号の情報を取得する。これより、得られた宛先ＩＰアドレス又は送信元ＩＰアドレスのＩＰアドレスを有するノードがネットワーク上に存在し、駆動していることが分かる。そこで、探索プログラム２６，５２，６１は、探索結果テーブル３３，５４上に得られた宛先ＩＰアドレス及び送信元ＩＰアドレスに対するノードのノード情報が存在しない場合は、この宛先ＩＰアドレス及び送信元ＩＰアドレスに対するノードの探索が行われていないということが分かるので、宛先ＩＰアドレス及び送信元ＩＰアドレスに対するノードへのアクセスを試みるようにしても良い。また、スニッフィング解析によってネットワーク装置より得られた宛先ポート番号及び送信元ポート番号によってこれらのポート番号を有するノード上でどのようなＯＳが駆動しているのかということが推測できるので、探索プログラム２６，５２，６１は、予め予測されたプロトコルによりノードへのアクセスを試みるようにしても良い。
【０１６３】
さらに第１〜第３の実施の形態においては、探索プログラム２６，５２，６１がアクセスできた仮想用物理サーバ４，６２、仮想化環境管理サーバ７，６６、管理用物理サーバ８及びハイパーバイザ６３から一括して複数のノードのノード情報を収集する場合について述べたが、本発明はこれに限らず、管理対象のノードのネットワークアクセス履歴情報によってノード情報を得るようにしても良い。具体的には、管理サーバ２，５１は、アクセスできたノードのＯＳに対してネットスタットコマンドを送信することにより、対象ノードがアクセスしたノードの一覧、ステータス状況、ＩＰアドレス及びポート番号等のネットワークアクセス履歴情報を取得する。そして、探索プログラム２６，５２，６１は、このネットワークアクセス履歴情報に格納されているＩＰアドレスのノードに対して優先的にアクセスを試みるようにしても良い。
【０１６４】
さらに上述の第１〜第３の実施の形態においては、探索プログラム２６，５２，６１が指定したＩＰアドレスの範囲内のＩＰアドレスに対して順番に、登録した認証情報を用いて、サポートプロトコルテーブル３０に格納されているプロトコルを順次用いることによってノードに対するアクセスを試みることで計算機システム１，５０，６０上各ノードのノード情報を収集する場合について述べたが、本発明はこれに限らず、例えば探索プログラム２６，５２，６１は、ある所定のＩＰアドレス範囲でしばらく同じプロトコルによるノードへのアクセスが連続して成功している場合、次の探索も前回用いたプロトコルを優先的に使用するようにしても良い。
【０１６５】
さらに上述の第１〜第３の実施の形態においては、探索プログラム２６，５２，６１がアクセスできた仮想用物理サーバ４，６２、仮想化環境管理サーバ７，６６、管理用物理サーバ８及びハイパーバイザ６３から一括して複数のノードのノード情報を収集する場合について述べたが、本発明はこれに限らず、例えば予め管理サーバ２，５１に仮想用物理サーバ４，６２、仮想化環境管理サーバ７，６６、管理用物理サーバ８及びハイパーバイザ３７のノード情報を登録しておき、優先的に探索プログラム２６，５２，６１が登録したノード情報に基づいてノードにアクセスを試みるようにしても良い。
【０１６６】
さらに上述の第１〜第３の実施の形態においては、探索プログラム２６，５２，６１がアクセスできた仮想用物理サーバ４，６２、仮想化環境管理サーバ７，６６、管理用物理サーバ８及びハイパーバイザ６３から一括して複数のノードのノード情報を収集する場合について述べたが、本発明はこれに限らず、探索プログラム２６，５２，６１はＰＩＮＧ（packet Internet Groper）と呼ばれるコマンドをＩＰアドレス範囲全てに送信することによってノード情報を収集するようにしても良い。具体的には、探索プログラム２６，５２，６１は、ＩＰアドレス範囲全てのアドレスにＰＩＮＧ（packet Internet Groper）と呼ばれる３２バイト程度のデータを送信し、返信データがあるかどうか診断することによってＩＰアドレス範囲でネットワーク上にアクセスされているノードが存在するか否か判断し、返信データがあった場合は、探索プログラム２６，５２，６１は、返信データに格納されているＩＰアドレスのノードに対して優先的にアクセスを試みるようにしても良い。
【０１６７】
さらに上述の第１〜第３の実施の形態においては、仮想用物理サーバ４，６２、仮想化環境管理サーバ７，６６、管理用物理サーバ８及びハイパーバイザ３７は、複数の他ノードの構成情報（ＩＰアドレス及びＯＳ種別を含む）や性能情報及び状態情報などのノード情報（第２の情報）を管理し、管理サーバ２，５１は、管理対象のノードのＩＰアドレス及びノードと通信する際に使用すべき通信プロトコル種別を収集して管理する場合について述べたが、本発明はこれに限らず、例えば管理サーバ２，５１は管理対象のノードである仮想用物理サーバ４，６２、仮想化環境管理サーバ７，６６、管理用物理サーバ８及びハイパーバイザ３７より構成情報（ＩＰアドレス及びＯＳ種別を含む）や性能情報及び状態情報などのノード情報（第１の情報）を収集して管理するようにしても良い。また、管理対象のノードである仮想用物理サーバ４，６２、仮想化環境管理サーバ７，６６、管理用物理サーバ８及びハイパーバイザ３７のノード情報（第２の情報）と、管理サーバ２，５１のノード情報（第１の情報）とで同様の構成を保持していても良い。
【０１６８】
さらに上述の第３の実施の形態においては、仮想化環境管理プログラム６７及びハイパーバイザ３７がクローニングによって仮想サーバ３５を複製する際にクローニング関係テーブル６４，６８に複製元の仮想サーバ３５の仮想サーバＩＤと複製先の仮想サーバ３５の仮想サーバＩＤとの対応関係の情報を格納する場合について述べたが、本発明はこれに限らず、例えば仮想化環境管理プログラム６７及びハイパーバイザ３７は、複製元の仮想サーバ３５及び複製先の仮想サーバ３５それぞれの構成情報（ＩＰアドレス及びＯＳ種別を含む）や性能情報及び状態情報などのノード情報を格納するようにしてもよい。
【０１６９】
さらに上述の第３の実施の形態においては、仮想化環境管理プログラム６７及びハイパーバイザ３７がテンプレートを用いて仮想サーバ３５を作成する際にテンプレート仮想サーバ関係テーブル６５，６９にテンプレート種別情報のテンプレート種別識別子と仮想サーバ３５の仮想サーバＩＤとの対応関係の情報を格納する場合について述べたが、本発明はこれに限らず、例えば仮想化環境管理プログラム６７及びハイパーバイザ３７は、テンプレートの具体的な構成内容や仮想サーバ３５に対応する構成情報（ＩＰアドレス及びＯＳ種別を含む）や性能情報及び状態情報などのノード情報を格納するようにしてもよい。
【産業上の利用可能性】
【０１７０】
本発明は、ネットワーク上に接続されたノードを管理するための管理者用ノードに格納するプログラムに適用することができる。
【符号の説明】
【０１７１】
１，５０，６０……計算機システム、２，５１……管理サーバ、３……管理端末、４，６２……仮想用物理サーバ、５……物理サーバ、７，６６……仮想化環境管理サーバ、８……管理用物理サーバ、９……ネットワーク、２６，５２，６１……探索プログラム、３０……サポートプロトコルテーブル、３１……認証情報テーブル、３２……探索候補テーブル、３３，５４……探索結果テーブル、３５……仮想サーバ、３７，６３……ハイパーバイザ、３９……仮想化環境管理プログラム、６４，６８……クローニング関係テーブル、６５，６９……テンプレート仮想サーバ関係テーブル。
【図１】
2012157019.tif 000003
【図２】
2012157019.tif 000004
【図３】
2012157019.tif 000005
【図４】
2012157019.tif 000006
【図５】
2012157019.tif 000007
【図６】
2012157019.tif 000008
【図７】
2012157019.tif 000009
【図８】
2012157019.tif 000010
【図９】
2012157019.tif 000011
【図１０】
2012157019.tif 000012
【図１１】
2012157019.tif 000013
【図１２】
2012157019.tif 000014
【図１３】
2012157019.tif 000015
【図１４】
2012157019.tif 000016
【図１５】
2012157019.tif 000017
【図１６】
2012157019.tif 000018
【図１７】
2012157019.tif 000019
【図１８】
2012157019.tif 000020
【国際調査報告】
2012157019.tif 000021
2012157019.tif 000022
2012157019.tif 000023
2012157019.tif 000024