(57)【要約】【課題】Ｉ／ＯスイッチによりＩ／Ｏデバイスを共用する状態で現用系サーバから予備系サーバへの切り替えが行われた場合でも、管理サーバから各サーバの物理位置を把握する。【解決手段】複数の計算機と複数のＩ／Ｏデバイスを接続するＩ／Ｏスイッチを管理する構成管理情報を有する管理サーバが、計算機に対するＩ／Ｏデバイスの割り当てを制御する計算機システムの制御方法であって、管理サーバが、第１の計算機と第１の計算機に割り当てられたＩ／Ｏデバイスの識別子を取得して構成管理情報に格納し、第１の計算機から第２の計算機への切り換えを受け付け、第１の計算機を停止させ、第１の計算機に割り当てられた前記Ｉ／Ｏデバイスを第２の計算機へ割り当て、第２の計算機を起動させ、第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換える。【選択図】図４
2011191854.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサとメモリとＩ／Ｏインターフェースとを有する複数の計算機と、
前記複数の計算機を前記Ｉ／Ｏインターフェース経由で接続する１以上のＩ／Ｏスイッチと、
前記Ｉ／Ｏスイッチに接続する複数のＩ／Ｏデバイスと、
前記Ｉ／Ｏスイッチを介して前記計算機に接続するＩ／Ｏデバイスを管理する構成管理情報を有し、前記計算機に対する前記Ｉ／Ｏデバイスの割り当てを制御する管理サーバと、を備えた計算機システムにおいて、
前記管理サーバは、
前記第１の計算機から前記複数の計算機のうちの第２の計算機への切り換えを受け付けて、前記第１の計算機に割り当てられた前記Ｉ／Ｏデバイスを前記第２の計算機へ割り当てる構成管理部を有し、
前記構成管理部は、
前記複数の計算機のうちの第１の計算機と、前記第１の計算機に割り当てられたＩ／Ｏデバイスの識別子を取得して、前記構成管理情報に格納する識別子検出部と、
前記第１の計算機に割り当てられた前記Ｉ／Ｏデバイスを前記第２の計算機へ切り替える指令を前記Ｉ／Ｏスイッチに送信するＩ／Ｏスイッチ切り替え部と、
前記構成管理情報のうち特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換えるデバイス識別子書き換え部と、を備え、
前記第１の計算機を停止させた後に、前記Ｉ／Ｏスイッチ切り替え部が前記第１の計算機に割り当てられた前記Ｉ／Ｏデバイスを前記第２の計算機へ切り替える指令を前記Ｉ／Ｏスイッチに送信し、
前記第２の計算機を起動した後に、前記デバイス識別子書き換え部が前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換えることを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムであって、
前記構成管理情報は、
前記Ｉ／Ｏスイッチの前記計算機とＩ／Ｏデバイスの接続関係を保持し、前記Ｉ／Ｏデバイスの情報として前記識別子と、前記特定のＩ／Ｏデバイスを示す情報を有し、
前記識別子検出部は、
前記第１の計算機に割り当てられたＩ／Ｏデバイスの識別子を取得し、当該Ｉ／Ｏデバイスが特定のＩ／Ｏデバイスであるときに前記特定のＩ／Ｏデバイスを示す情報を設定することを特徴とする計算機システム。
【請求項３】
請求項１に記載の計算機システムであって、
前記構成管理部は、
前記第１の計算機を監視して障害の発生を検知する障害検知部を有し、前記障害検知部が前記第１の計算機の障害の発生を検知したときには前記第１の計算機を停止して前記第２の計算機へ前記Ｉ／Ｏデバイス引き継ぐことを特徴とする計算機システム。
【請求項４】
請求項１に記載の計算機システムであって、
前記複数の計算機にそれぞれ接続されて前記計算機の稼働状態を管理する第３の計算機をさらに有し、
前記デバイス識別子書き換え部は、
前記第３の計算機に対して、前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を前記仮想識別子に書き換える指令を送信することを特徴とする計算機システム。
【請求項５】
請求項１に記載の計算機システムであって、
前記複数の計算機を管理する第４の計算機を接続した第１のネットワークと、前記複数の計算機のサービスを提供する第２のネットワークと、をさらに有し、
前記Ｉ／Ｏデバイスは、前記第１のネットワークに接続された第１のＩ／Ｏデバイスと、前記第２のネットワークに接続された第２のＩ／Ｏデバイスとを含み、
前記デバイス識別子書き換え部は、
前記Ｉ／Ｏデバイスのうち前記第１のネットワークに接続された第１のＩ／Ｏデバイスを前記特定のＩ／Ｏデバイスとし、当該第１のＩ／Ｏデバイスの識別子を前記仮想識別子に書き換えることを特徴とする計算機システム。
【請求項６】
請求項１に記載の計算機システムであって、
前記デバイス識別子書き換え部は、
前記複数のＩ／Ｏデバイスの識別子に対応する仮想識別子を予めそれぞれ設定したことを特徴とする計算機システム。
【請求項７】
プロセッサとメモリとＩ／Ｏインターフェースとを有する複数の計算機を前記Ｉ／Ｏインターフェース経由で接続する１以上のＩ／Ｏスイッチに複数のＩ／Ｏデバイスを接続し、前記Ｉ／Ｏスイッチを介して前記計算機に接続するＩ／Ｏデバイスを管理する構成管理情報を有する管理サーバが、前記計算機に対する前記Ｉ／Ｏデバイスの割り当てを制御する計算機システムの制御方法であって、
前記管理サーバが、前記複数の計算機のうちの第１の計算機と、前記第１の計算機に割り当てられたＩ／Ｏデバイスの識別子を取得して、前記構成管理情報に格納するステップと、
前記管理サーバが、前記第１の計算機から前記複数の計算機のうちの第２の計算機への切り換えを受け付けるステップと、
前記管理サーバが、前記第１の計算機を停止させるステップと、
前記管理サーバが、前記第１の計算機に割り当てられた前記Ｉ／Ｏデバイスを前記第２の計算機へ割り当てる指令を前記Ｉ／Ｏスイッチに送信するステップと、
前記管理サーバが、前記第２の計算機を起動させるステップと、
前記管理サーバが、前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換えるステップと、
を含むことを特徴とする計算機システムの制御方法。
【請求項８】
請求項７に記載の計算機システムの制御方法であって、
前記構成管理情報は、
前記Ｉ／Ｏスイッチの前記計算機とＩ／Ｏデバイスの接続関係を保持し、前記Ｉ／Ｏデバイスの情報として前記識別子と、前記特定のＩ／Ｏデバイスを示す情報を有し、
前記管理サーバが、前記第１の計算機に割り当てられたＩ／Ｏデバイスの識別子を取得して、前記構成管理情報に格納するステップは、
前記第１の計算機に割り当てられたＩ／Ｏデバイスの識別子を取得し、当該Ｉ／Ｏデバイスが特定のＩ／Ｏデバイスであるときに前記特定のＩ／Ｏデバイスを示す情報を設定することを特徴とする計算機システムの制御方法。
【請求項９】
請求項７に記載の計算機システムの制御方法であって、
前記管理サーバが、前記第１の計算機から前記複数の計算機のうちの第２の計算機への切り換えを受け付けるステップは、
前記管理サーバが、前記第１の計算機を監視して障害の発生を検知したときに、前記第１の計算機から前記第２の計算機への切り換えを受け付けることを特徴とする計算機システムの制御方法。
【請求項１０】
請求項７に記載の計算機システムの制御方法であって、
前記複数の計算機にそれぞれ接続されて前記計算機の稼働状態を管理する第３の計算機をさらに有し、
前記管理サーバが、前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換えるステップは、
前記第３の計算機に対して、前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を前記仮想識別子に書き換える指令を送信することを特徴とする計算機システムの制御方法。
【請求項１１】
請求項７に記載の計算機システムの制御方法であって、
前記複数の計算機を管理する第４の計算機を接続した第１のネットワークと、前記複数の計算機のサービスを提供する第２のネットワークと、をさらに有し、
前記Ｉ／Ｏデバイスは、前記第１のネットワークに接続された第１のＩ／Ｏデバイスと、前記第２のネットワークに接続された第２のＩ／Ｏデバイスとを含み、
前記管理サーバが、前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換えるステップは、
前記Ｉ／Ｏデバイスのうち前記第１のネットワークに接続された第１のＩ／Ｏデバイスを前記特定のＩ／Ｏデバイスとし、当該第１のＩ／Ｏデバイスの識別子を前記仮想識別子に書き換えることを特徴とする計算機システムの制御方法。
【請求項１２】
請求項７に記載の計算機システムの制御方法であって、
前記管理サーバが、前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換えるステップは、
前記複数のＩ／Ｏデバイスの識別子に対応する仮想識別子を予めそれぞれ設定したことを特徴とする計算機システムの制御方法。
【請求項１３】
プロセッサとメモリとＩ／Ｏインターフェースとを有する複数の計算機を前記Ｉ／Ｏインターフェース経由で接続する１以上のＩ／Ｏスイッチに複数のＩ／Ｏデバイスを接続し、前記Ｉ／Ｏスイッチを介して前記計算機に接続するＩ／Ｏデバイスを管理する構成管理情報を有する管理サーバが、前記計算機に対する前記Ｉ／Ｏデバイスの割り当てを制御するプログラムであって、
前記複数の計算機のうちの第１の計算機と、前記第１の計算機に割り当てられたＩ／Ｏデバイスの識別子を取得して、前記構成管理情報に格納する手順と、
前記第１の計算機から前記複数の計算機のうちの第２の計算機への切り換えを受け付ける手順と、
前記第１の計算機を停止させる手順と、
前記第１の計算機に割り当てられた前記Ｉ／Ｏデバイスを前記第２の計算機へ割り当てる指令を前記Ｉ／Ｏスイッチに送信する手順と、
前記第２の計算機を起動させる手順と、
前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換える手順と、
を前記管理サーバに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、PCI-Express Switchに接続された計算機の管理に関する。
【背景技術】
【０００２】
従来、PCIデバイスは計算機内に搭載されていたが、PCI-Express Switchが実用化されたことにより、計算機外で取り扱うことが可能になった。これにより、ＰＣＩバスの切り替えが容易となり、柔軟にＩ／Ｏ構成を変更することが可能となる（例えば、特許文献１）。
【０００３】
計算機システムの信頼性を向上させるために、現用系サーバと予備系サーバを用意することで、障害時に現用系サーバから予備系サーバへの切り替えを行うリカバリ方法がある。この現用系サーバと予備系サーバをPCI-Express Switchを接続してＩ／Ｏデバイスを共用することで、計算機システムの信頼性を維持しつつ、柔軟なＩ／Ｏ構成を組みたいというニーズが高まっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３０１４８８
【発明の概要】
【発明が解決しようとする課題】
【０００５】
サーバ管理ソフトウェアの中には、管理対象サーバのＮＩＣ（Network  Interface Card）に関連付けられるＭＡＣアドレス（Media Access Control address）から管理対象サーバの物理位置を判断しているものがある。しかし、前記従来例のように、PCI- Express Switchに接続されている現用系サーバから予備系サーバへの切り替えが発生した場合、PCI- Express Switchにより現用系サーバと予備系サーバが同じＰＣＩデバイスのＮＩＣに接続されるため、ＮＩＣに関連付けられるＭＡＣは同じものになる。このため、管理ソフトウェアが、管理対象サーバの物理位置の変更を検知することができず、管理者はサーバの運用及び管理を引き続き継続することができない、という問題があった。
【０００６】
そこで本発明は、上記問題点に鑑みてなされたもので、現用系サーバと予備系サーバをPCI-Express Switchに接続してＩ／Ｏデバイスを共用する状態で、現用系サーバから予備系サーバへの切り替えが行われた場合でも、管理サーバから各サーバの物理位置を把握することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、プロセッサとメモリとＩ／Ｏインターフェースとを有する複数の計算機を前記Ｉ／Ｏインターフェース経由で接続する１以上のＩ／Ｏスイッチに複数のＩ／Ｏデバイスを接続し、前記Ｉ／Ｏスイッチを介して前記計算機に接続するＩ／Ｏデバイスを管理する構成管理情報を有する管理サーバが、前記計算機に対する前記Ｉ／Ｏデバイスの割り当てを制御する計算機システムの制御方法であって、前記管理サーバが、前記複数の計算機のうちの第１の計算機と、前記第１の計算機に割り当てられたＩ／Ｏデバイスの識別子を取得して、前記構成管理情報に格納し、前記管理サーバが、前記第１の計算機から前記複数の計算機のうちの第２の計算機への切り換えを受け付け、前記管理サーバが、前記第１の計算機を停止させ、前記管理サーバが、前記第１の計算機に割り当てられた前記Ｉ／Ｏデバイスを前記第２の計算機へ割り当てる指令を前記Ｉ／Ｏスイッチに送信し、前記管理サーバが、前記第２の計算機を起動させ、前記管理サーバが、前記第２の計算機へ切り替えられたＩ／Ｏデバイスのうち、特定のＩ／Ｏデバイスの識別子を予め設定した仮想識別子に書き換える。
【発明の効果】
【０００８】
したがって、本発明により、管理者はＩ／Ｏスイッチ（PCI-Express Switch）に接続された計算機に現用系と待機系の切り替えが発生した場合においても、計算機の物理位置がＩ／Ｏデバイスに固有の識別子から仮想識別子に変わったことを判定することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態を示し、計算機システムの全体を示すブロック図である。
【図２】本発明の実施形態を示し、管理サーバ１０１の構成を示すブロック図である。
【図３】本発明の実施形態を示し、サーバ装置１１１の構成を示すブロック図である。
【図４】本発明の実施形態を示し、動作概要の一つを示す計算機システムのブロック図である。
【図５】本発明の実施形態を示し、動作概要の一つを示す計算機システムのブロック図で、フェイルオーバの様子を示す。
【図６】本発明の実施形態を示し、サーバ管理テーブル１０８を示す説明図である。
【図７】本発明の実施形態を示し、サーバＩ／Ｏ構成情報テーブル１０９を示す説明図である。
【図８】本発明の実施形態を示し、仮想識別子テーブル１２３を示す説明図である。
【図９】本発明の実施形態を示し、管理サーバ１０１のデバイス識別子検出部１０３で行われる処理の一例を示すフローチャートである。
【図１０】本発明の実施形態を示し、サーバ障害回復部１０４で行われる処理の一例を示すフローチャートである。
【図１１】本発明の実施形態を示し、Ｉ／Ｏスイッチ切り替え部１０５で行われる処理の一例を示すフローチャートである。
【図１２】本発明の実施形態を示し、デバイス識別子取得選択部１０６で行われる処理の一例を示すフローチャートである。
【図１３】本発明の実施形態を示し、デバイス識別子書き換え部１０７で行われる処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の一実施形態を添付図面に基づいて説明する。
【００１１】
図１は、本発明の実施形態を示し、計算機システムの全体を示すブロック図である。図１の計算機システムは、複数のサーバ装置１１１で現用系のサーバ装置１１１と予備系（または待機系）のサーバ装置１１１を構成し、現用系と予備系でＩ／Ｏデバイス１１５を切り換え可能なＩ／Ｏスイッチ装置１１２を共用し、管理サーバ１０１からの指示に応じて現用系と予備系を切り替えるものである。
【００１２】
管理サーバ１０１は本実施形態における制御の中心である。管理サーバ１０１は、Ｉ／Ｏ構成管理部１０２と各種テーブル（１０８〜１０９、１２３）、デバイス識別子取得プログラム１２１、およびデバイス識別子書き換えプログラム１２２を実行する。Ｉ／Ｏ構成管理部１０２は、デバイス識別子検出部１０３、サーバ障害回復部１０４、Ｉ／Ｏスイッチ切り替え部１０５、デバイス識別子取得選択部１０６、デバイス識別子書き換え部１０７から構成される。
【００１３】
管理サーバ１０１は、ネットワークスイッチ１１０を介して、複数のサーバ装置１１１、複数のＩ／Ｏスイッチ装置１１２、ファームウェア層のService Processor(以後、ＳＶＰと表記する)１２０に接続される。Ｉ／Ｏスイッチ装置１１２は、サーバ装置１１１及びＳＶＰ１２０と接続する複数の上流ポート１１３と、複数のＩ／Ｏデバイス１１５と接続する複数の下流ポート１１４を備えて、サーバ装置１１１及びＳＶＰ１２０とＩ／Ｏデバイス１１５とを接続する。複数のＩ／Ｏデバイス１１５のうちのいくつかは、ストレージ装置１１６と接続されるＨＢＡ（Host Bus Adaptor）で構成され、サーバ装置１１１からストレージ装置１１６をアクセスすることができる。
【００１４】
また、複数のＩ／Ｏデバイス１１５のうちのいくつかは、管理ＬＡＮスイッチ４０１、業務ＬＡＮスイッチ４０２に接続されるＮＩＣ（Netwaork interface Card）で構成され、サーバ装置１１１から管理ＬＡＮスイッチ４０１と業務ＬＡＮスイッチ４０２にアクセスすることができる。
【００１５】
なお、複数のサーバ装置１１１は添え字＃１〜＃３で個々のサーバ装置１１１を識別し、また、複数のＩ／Ｏスイッチ装置１１２は、添え字＃１、＃２で識別し、上流ポート１１３と下流ポート１１４はそれぞれ０〜３の添え字で識別し、Ｉ／Ｏデバイス１１５は＃１〜＃８で識別する。
【００１６】
管理ＬＡＮスイッチ４０１は管理ソフトウェア４０５０（図４参照）が稼動するサーバ装置４０５等が、サーバ装置＃１〜＃３を管理するための管理ネットワークを構成する。なお、サーバ装置４０５の管理ソフトウェア４０５０は、前記従来例で述べたように、サーバ装置＃１〜＃３に接続されたＮＩＣのＭＡＣアドレスで、サーバ装置＃１〜＃３を実行する。
【００１７】
業務ＬＡＮスイッチ４０２はサーバ装置＃１〜＃３と外部などの計算機を接続し、サーバ装置＃１〜＃３のサービスを外部等の計算機に提供する業務ネットワークを構成する。
【００１８】
管理サーバ１０１は、サーバ装置１１１やＩ／Ｏスイッチ装置１１２やＩ／Ｏデバイス１１５の障害を検知し回復する機能を有する。デバイス識別子検出部１０３は、サーバ装置１１１に接続されたＩ／Ｏデバイス１１５のデバイス識別子を検出する機能を有する。Ｉ／Ｏデバイス１１５のデバイス識別子としては、例えば、特定のネットワークに接続されているＮＩＣのＭＡＣ、特定のストレージ装置に接続されているＨＢＡ（Host Bus Adapter）のＷＷＮ（World Wide Name）等である。
【００１９】
サーバ障害回復部１０４は、サーバ装置１１１やＩ／Ｏスイッチ装置１１２やＩ／Ｏデバイス１１５の障害を検知し回復する機能を有する。Ｉ／Ｏスイッチ切り替え部１０５は、サーバ管理テーブル１０８、およびサーバＩ／Ｏ構成情報テーブル１０９の情報を取得し、Ｉ／Ｏスイッチ装置１１２の切り替えを行う機能を有する。
【００２０】
デバイス識別子取得選択部１０６は、サーバ管理テーブル１０８、およびサーバＩ／Ｏ構成情報テーブル１０９の情報を取得し、特定のデバイス識別子を選択する機能を有する。デバイス識別子書き換え部１０７は、デバイス識別子取得選択部１０６によって選択されたデバイス識別子を任意のデバイス識別子に書き換える機能を有する。
【００２１】
サーバ管理テーブル１０８は、サーバ装置１１１の構成、およびサーバ装置１１１に接続されているＩ／Ｏスイッチ装置１１２の情報が格納される。サーバＩ／Ｏ構成情報テーブル１０９は、サーバ装置１１１に接続される一つまたは複数のＩ／Ｏスイッチ装置１１２と、Ｉ／Ｏデバイス１１５のＩ／Ｏ構成定義情報や状態などが格納される。サーバＩ／Ｏ構成情報テーブル１０９はスイッチ管理テーブルとして機能する。デバイス識別子取得プログラム１２１は、Ｉ／Ｏデバイス１１５が有する固有の識別子を取得する機能を有するプログラムが格納される。デバイス識別子書き換えプログラム１２２は、Ｉ／Ｏデバイス１１５が有する固有の識別子を書き換える機能を有するプログラムが格納される。
【００２２】
本実施形態では、管理サーバ１０１が、複数のサーバ装置１１１の何れかに障害が発生した場合に、障害が発生したサーバ装置１１１を一旦停止し、Ｉ／Ｏスイッチ装置１１２の切り替えを行い、障害が発生したサーバ装置１１１に接続された複数のＩ／Ｏデバイス１１５の情報を書き換え、予備系のサーバ装置１１１を起動して障害が発生したサーバ装置１１１のＩ／Ｏデバイス１１５を引き継ぐ一実施形態を示す。
【００２３】
図２は、管理サーバ１０１の構成を示すブロック図である。管理サーバ１０１は、メモリ２０１とプロセッサ２０２とディスクインターフェース２０３とネットワークインターフェース２０４から構成される。メモリ２０１内には、サーバ管理テーブル１０８、サーバＩ／Ｏ構成情報テーブル１０９、デバイス識別子取得プログラム１２１、デバイス識別子書き換えプログラム１２２が格納される。
【００２４】
Ｉ／Ｏ構成管理部１０２は、デバイス識別子検出部１０３、サーバ障害回復部１０４、Ｉ／Ｏスイッチ切り替え部１０５、デバイス識別子取得選択部１０６、デバイス識別子書き換え部１０７が含まれる。メモリ内のＩ／Ｏ構成管理部１０２やテーブル（１０８〜１０９、１２３）、デバイス識別子取得プログラム１２１、およびデバイス識別子書き換えプログラム１２２は、プロセッサ２０２に読み込まれて実行される。ディスクインターフェース２０３は、管理サーバ１０１を起動するための上記各プログラムが格納された記憶媒体としてのディスク（図示省略）に接続される。ネットワークインターフェース２０４は、ネットワークスイッチ１１０等で構成されるネットワークに接続され各装置の障害情報などが転送され、また、管理サーバ１０１からの指令が転送される。なお、これらの機能はハードウェアで実装しても良い。
【００２５】
図３は、サーバ装置１１１の構成を示すブロック図である。図１に示す複数のサーバ装置１１１（＃１〜＃３）は同一の構成である。サーバ装置１１１は、メモリ３０１、プロセッサ３０２、Ｉ／Ｏスイッチインターフェース３０３、ＢＭＣ（Base board Management  Controller）３０４から構成される。メモリ３０１には、サーバ装置１１１で処理されるプログラムが格納され、このプログラムはプロセッサ３０２で実行される。Ｉ／Ｏスイッチインターフェース３０３は、Ｉ／Ｏスイッチ装置１１２に接続される。ＢＭＣ３０４は、サーバ装置１１１内のハードウェアに障害が発生した場合に、ネットワークスイッチ１１０を介してＳＶＰ１２０に障害を通知する機能を有する。ＢＭＣ３０４は障害の発生箇所とは独立に動作できるため、メモリ３０１やプロセッサ３０２に障害が発生したとしても障害通知を転送することができる。
【００２６】
なお、本実施形態のＩ／Ｏスイッチ装置１１２、Ｉ／Ｏスイッチインターフェース３０３及びＩ／Ｏデバイス１１５はＰＣＩ−Ｅｘｐｒｅｓｓの規格に準拠したものである。
【００２７】
また、ＳＶＰ１２０は、プロセッサとメモリとネットワークインターフェースを備えた計算機でありサーバ装置１１１の稼動状態を管理する。ＳＶＰ１２０は、各サーバ装置１１１のＢＭＣ３０４を監視し、ＢＭＣ３０４から障害の通知を受信すると、管理サーバ１０１に障害の発生したサーバ装置１１１を通知する。ＳＶＰ１２０は管理サーバ１０１からサーバ装置１１１の起動やリセット等の指令を受信すると、対象となるサーバ装置１１１のＢＭＣ３０４に対して起動やリセット等を指令する。
【００２８】
図４は、本発明における動作概要の一つを示している。サーバ装置１１１は複数のＩ／Ｏスイッチ装置１１２を介して複数のＩ／Ｏデバイス１１５と接続される。また、Ｉ／Ｏデバイス１１５はデバイスによって接続先が変わる。
【００２９】
図４の例では、サーバ装置１１１（＃１）が現用系を構成し、サーバ装置１１１（＃３
）が予備系を構成する。なお、以下では、各装置を上述の図１に示した添え字で識別する。図中Ｉ／Ｏデバイス＃１、＃３、＃５、＃７がＮＩＣで構成され、Ｉ／Ｏデバイス＃２、＃４、＃６、＃８がＨＢＡで構成された例を示す。
【００３０】
現用系のサーバ装置＃１はＩ／Ｏスイッチインターフェース３０３を介してＩ／Ｏスイッチ装置＃１の上流ポート１とＩ／Ｏスイッチ装置＃２の上流ポート１に接続される。Ｉ／Ｏスイッチ装置＃１では、上流ポート１と下流ポート０、１、４が接続される。そして、下流ポート０にはＮＩＣで構成されたＩ／Ｏデバイス＃１が接続され、下流ポート２、４にはＨＢＡで構成されたＩ／Ｏデバイス＃２、＃４が接続される。Ｉ／Ｏスイッチ装置＃２では、上流ポート１と下流ポート０が接続される。そして、Ｉ／Ｏスイッチ装置＃２の下流ポート０にはＮＩＣで構成されたＩ／Ｏデバイス＃５が接続される。
【００３１】
Ｉ／Ｏデバイス＃１のＮＩＣは、管理ＬＡＮネットワークスイッチ４０１に接続され、Ｉ／Ｏデバイス＃５のＮＩＣは、業務ＬＡＮスイッチ４０２に接続される。Ｉ／Ｏデバイス＃２のＨＢＡはストレージ装置１１６のブートディスク４０３に接続され、Ｉ／Ｏデバイス＃４のＨＢＡはストレージ装置１１６のユーザディスク４０４に接続される。なお、ストレージ装置１１６のブートディスク４０３とユーザディスク４０４は、ロジカルユニットとして提供される。
【００３２】
上記のように設定された現用系のサーバ装置＃１は、Ｉ／Ｏスイッチ装置＃１、＃２を介してブートディスク４０３と、ユーザディスク４０４にアクセスし、管理ＬＡＮスイッチ４０１を介してサーバ装置４０５と接続し、業務ＬＡＮスイッチ４０２を介してサービスを提供する計算機に接続され。
【００３３】
上記の構成において、現用系のサーバ装置＃１はＩ／Ｏスイッチ装置＃１、＃２を介して接続されたＩ／Ｏデバイス＃１，＃２、＃４、＃５のうち、管理ＬＡＮスイッチ４０１に接続された指定デバイス識別子のみを取得し、管理サーバ１０１に対して送信する。この指定デバイス識別子はユーザ（または管理者）によって任意に設定可能である。例えば、サーバ装置＃１のＩ／Ｏデバイス＃１、＃５がＮＩＣの場合、サーバ装置＃１は、Ｉ／Ｏスイッチインターフェース３０３に接続された複数のＩ／Ｏデバイス＃１、＃５のうち、管理ＬＡＮスイッチ４０１に接続されたＮＩＣ（Ｉ／Ｏデバイス＃１）の固有識別子（ＭＡＣ）のみを指定デバイス識別子として管理サーバ１０１に送信する。
【００３４】
すなわち、業務ＬＡＮスイッチ４０１は、他の計算機と接続してサーバ装置＃１〜＃３のサービスを提供するため、障害発生時に現用系のサーバ装置＃１から予備系のサーバ装置３にフェイルオーバを行った後も、現用系のサーバ装置＃１から予備系のサーバ装置３が引き継いだＮＩＣ（Ｉ／Ｏデバイス＃５）の識別子（ＭＡＣアドレス）を変更してはならないネットワークを構成する。
【００３５】
これに対して、管理ＬＡＮスイッチ４０２は、サーバ装置４０５と接続して管理ソフトウェア４０５０によりサーバ装置＃１〜＃３の管理を行うため、障害発生時に現用系のサーバ装置＃１から予備系のサーバ装置３にフェイルオーバを行った後は、現用系のサーバ装置＃１から予備系のサーバ装置３が引き継いだＮＩＣ（Ｉ／Ｏデバイス＃３）の識別子（ＭＡＣアドレス）を変更するネットワークを構成する。
【００３６】
図４の状態では、予備系のサーバ装置＃３は、Ｉ／Ｏスイッチ装置＃１の上流ポート３と、Ｉ／Ｏスイッチ装置＃２の上流ポート３にそれぞれ接続されるが、各上流ポート３には下流ポートが接続されていない。
【００３７】
図５は、本発明における動作概要の一つを示し、フェイルオーバの例を示している。図５は、図４に示した環境で現用系のサーバ装置＃１に障害が発生して、予備系のサーバ装置＃３に処理を引き継ぐ例を示している。
【００３８】
現用系のサーバ装置＃１で障害が発生した場合に、管理サーバ１０１は現用系のサーバ装置＃１を一旦停止する。そして、管理サーバ１０１はＩ／Ｏスイッチ装置１１２へ現用系のサーバ装置＃１から予備系のサーバ装置＃３への切り換えを指示し、Ｉ／Ｏスイッチ装置１１２は上流ポート１１３と下流ポート１１４の接続を切り替えることにより、現用系のサーバ装置＃１に接続されている全てのＩ／Ｏデバイス１１５を、予備系のサーバ装置＃３へ接続する。
【００３９】
つまり、サーバ装置１１１とＩ／Ｏスイッチ装置１１２間の経路は、図５に示す経路５０１から経路５０３へ、経路５０２から経路５０４へと変更される。このとき、Ｉ／Ｏスイッチ装置１１２とＩ／Ｏデバイス１１５間の経路は変更されないことが重要である。
【００４０】
次に管理サーバ１０１は、予備系のサーバ装置＃３を起動し、管理ＬＡＮスイッチ４０１に接続されたＮＩＣ（Ｉ／Ｏデバイス＃１）の特定のデバイス識別子（ＭＡＣ）のみを予め設定した仮想の識別子に書き換える。
【００４１】
このとき、管理サーバ１０１は、管理ＬＡＮスイッチ４０１に接続されているＩ／Ｏデバイス＃１（ＮＩＣ）のデバイス識別子（ＭＡＣ）のみの書き換えを指示し、業務ＬＡＮスイッチ４０２に接続されているＩ／Ｏデバイス＃５（ＮＩＣ）のデバイス識別子については書き換えは行わないところに特徴がある。また、このデバイス識別子の書き換えはＩ／Ｏデバイス１１５がＨＢＡの場合には、デバイス識別子（ＷＷＮ）などに対しても適用可能である。
【００４２】
図６は、サーバ管理テーブル１０８を示す。カラム１１０１は、サーバ装置識別子を示す。カラム１１０２は、サーバ装置１１１のプロセッサ構成、カラム１１０３はメモリ容量が格納される。カラム１１０４は、当該サーバ装置１１１が接続されているＩ／Ｏスイッチ装置１１２の識別子が格納される。
【００４３】
カラム１１０５は当該サーバ装置１１１が接続されているＩ／Ｏスイッチ装置１１２の上流ポート１１３のポート番号が格納される。カラム１１０６は当該サーバ装置１１１に割り当てられているＩ／Ｏデバイス１１５が接続された下流ポート１１４のポート番号が格納される。
【００４４】
サーバ管理テーブル１０８によって、サーバ装置＃１〜＃３（図中ＨＯＳＴ１〜３）に割り当てられたＩ／Ｏデバイス１１５のＩ／Ｏスイッチ装置１１２の識別子と、下流ポート１１４のポート番号と、上流ポート１１３のポート番号の対応関係が保持される。
【００４５】
図７は、サーバＩ／Ｏ構成情報テーブル１０９を示す。カラム１２０２はＩ／Ｏスイッチ装置１１２の識別子が格納される。カラム１２０２は、Ｉ／Ｏスイッチ装置１１２の下流ポート１１４のポート番号が格納される。カラム１２０３は下流ポート１１４に接続されたＩ／Ｏデバイス１１５の種類が格納される。カラム１２０４は、Ｉ／Ｏデバイス１１５の固有の識別子がデバイス識別子として格納される。カラム１２０５は、サーバ装置１１１から通知された指定デバイス識別子が格納される。また、指定デバイス識別子は、接続デバイス１２０３に対して複数の指定デバイス識別子が格納される場合もある。
【００４６】
デバイス識別子は、管理対象のＩ／Ｏデバイス１１５に固有の識別子で、例えば、ＭＡＣやＷＷＮで構成される。指定デバイス識別子は、管理対象のサーバ装置１１１に接続されているＩ／Ｏデバイス１１５のうち、管理ネットワークに接続されているＩ／Ｏデバイス１１５のデバイス識別子を示す。なお、指定デバイス識別子はデバイス識別子に代わって、管理ネットワークに接続されていることを示すフラグを用いてもよい。
【００４７】
サーバＩ／Ｏ構成情報テーブル１０９を管理することによって、一つのサーバ装置１１１に対して複数のＩ／Ｏ構成を管理することができる。
【００４８】
図８は、仮想識別子テーブル１２３を示す説明図である。仮想識別子テーブル１２３は、Ｉ／Ｏスイッチ装置１１２に接続されているＩ／Ｏデバイス１１５の固有の識別子を格納するデバイス識別子として格納するカラム１２３１と、管理サーバ１０１が設定した仮想デバイス識別子を格納するカラム１２３２から構成される。
【００４９】
仮想デバイス識別子は、サーバ装置１１１がフェイルオーバなどで切り替わったことをサーバ装置４０５に通知するため、Ｉ／Ｏデバイス１１５に固有のデバイス識別子に代わってＩ／Ｏデバイス１１５に付与する識別子である。
【００５０】
図９は、管理サーバ１０１のデバイス識別子検出部１０３で行われる処理の一例を示すフローチャートである。本処理は、管理サーバ１０１がサーバ装置１１１を管理する場合に必ず行われる処理で、例えば、サーバ装置１１１の起動、停止やＩ／Ｏデバイス１１５の変更などである。
【００５１】
ステップ１３０１では、管理サーバ１０１のデバイス識別子検出部１０３がサーバ管理テーブル１０８、およびサーバＩ／Ｏ構成情報テーブル１０９から、サーバ装置１１１の指定デバイス識別子を取得する。ステップ１３０２では、デバイス識別子検出部１０３は、サーバ装置１１１の指定デバイス識別子情報の取得の有無を判定する。指定デバイス識別子が取得された場合にはステップ１３０３へ進み、指定デバイス識別子がなければ処理を終了する。
【００５２】
ステップ１３０３では、デバイス識別子検出部１０３がサーバ装置１１１に指定デバイス識別子の送信命令を発行する。例えば、サーバ装置１１１にＩ／Ｏデバイス（ＮＩＣ）１１５が接続されている場合には、ＭＡＣアドレスの送信命令を送信する。この送信命令は、複数のサーバ装置１１１に接続されている複数のＩ／Ｏデバイス１１５に対し、複数の指定デバイス識別子の送信命令を行うことが可能である。
【００５３】
ステップ１３０４では、デバイス識別子検出部１０３が指定デバイス識別子の送信命令に対する応答として受信した指定デバイス識別子をサーバＩ／Ｏ構成情報テーブル１０９に格納する。
【００５４】
上記処理により、デバイス識別子検出部１０３は、各サーバ装置１１１から管理ネットワークに接続されているＩ／Ｏデバイス１１５のデバイス識別子を指定デバイス識別子として取得し、サーバＩ／Ｏ構成情報テーブル１０９の指定デバイス識別子１２０５に格納する。なお、サーバ装置１１１は、デバイス識別子検出部１０３からの指定デバイス識別子の送信命令に対して、管理ネットワークに接続されていないＩ／Ｏデバイス１１５については、デバイス識別子を通知しない。例えば、図４の構成では、サーバ装置１１１は、管理ＬＡＮスイッチ４０１に接続されているＩ／Ｏデバイス＃１のＭＡＣを管理サーバ１０１に応答するが、Ｉ／Ｏデバイス＃２、＃４、＃５のデバイス識別子については管理サーバ１０１に通知しない。また、サーバ装置１１１は、管理ネットワークの所定の装置（例えば、サーバ装置４０５）と通信可能なＩ／Ｏデバイス１１５を、管理ネットワークに接続されているＩ／Ｏデバイス１１５として判定することができる。
【００５５】
上記処理は、管理サーバ１０１が管理対象とするサーバ装置１１１の全てについて繰り返して行うことができる。
【００５６】
なお、管理サーバ１０１が管理ネットワークに接続されている場合は、管理サーバ１０１が管理ネットワークからＩ／Ｏデバイス１１５のデバイス識別子を取得するようにしても良い。
【００５７】
図１０は、サーバ障害回復部１０４で行われる処理の一例を示すフローチャートである。サーバ障害回復部１０４は、ＳＶＰ１２０からサーバ装置１１１の障害の通知を受信すると図１０の処理を実行する。なお、障害の検知は、ＳＶＰ１２０からの通知に限らず、サーバ障害回復部１０４が各サーバ装置１１１のハートビートを検知するものであっても良く、公知ないし周知の手法を適用することができる。
【００５８】
ステップ１０４１では、サーバ障害回復部１０４が、現用系のサーバ装置１１１（図４のサーバ装置＃１）の障害を検知した場合にＳＶＰ１２０から通知された現用系のサーバ装置１１１の起動を停止する。ステップ１４０２では、サーバ障害回復部１０４がＳＶＰ１２０、およびＩ／Ｏスイッチ装置１１２からＩ／Ｏスイッチ情報を取得し、サーバ管理テーブル１０８、およびサーバＩ／Ｏ構成情報テーブル１０９の更新を行う。Ｉ／Ｏスイッチ情報は、全てのＩ／Ｏスイッチ装置１１２の上流ポート１１３と下流ポート１１４の接続関係を示す。ステップ１４０２では、サーバ障害回復部１０４が、障害発生により停止した現用系のサーバ装置１１１に接続されていた下流ポート１１４を特定し、停止した現用系のサーバ装置１１１が使用していたＩ／Ｏデバイス１１５を取得する。
【００５９】
ステップ１４０３では、停止した現用系のサーバ装置１１１を予備系のサーバ装置１１１（図４のサーバ装置＃３）に切り替えるため、Ｉ／Ｏスイッチ装置１１２の切り替えをＩ／Ｏスイッチ切り替え部１０５が実行する。すなわち、Ｉ／Ｏスイッチ切り替え部１０５は、サーバ障害回復部１０４が取得した各Ｉ／Ｏスイッチ装置１１２の上流ポート１１３と下流ポート１１４の接続関係から、障害により停止した現用系のサーバ装置１１１のＩ／Ｏデバイス１１５を、予備系のサーバ装置１１１に切り替えるよう指令する。この指令は、対象となるＩ／Ｏデバイス１１５の下流ポート１１４を、予備系のサーバ装置１１１が接続された上流ポート１１３に切り替える指令であり、Ｉ／Ｏスイッチ切り替え部１０５が各Ｉ／Ｏスイッチ装置１１２に指令する。なお、Ｉ／Ｏスイッチ切り替え部１０５で実行される処理の詳細については図１１で後述する。
【００６０】
ステップ１４０４では、Ｉ／Ｏスイッチ切り替え部１０５がステップ１４０３で指令したＩ／Ｏスイッチ装置１１２の切り替えの成功、失敗を判定する。この判定は、Ｉ／Ｏスイッチ切り替え部１０５の指令に対するＩ／Ｏスイッチ装置１１２の応答などに基づいて上流ポート１１３と下流ポート１１４の接続の切り替えが成功したか否かを判定することができる。
【００６１】
ステップ１４０５では、Ｉ／Ｏスイッチ切り替え部１０５により障害の発生した現用系のサーバ装置１１１のＩ／Ｏデバイス１１５が予備系のサーバ装置１１１に接続された後、サーバ障害回復部１０４が、予備系のサーバ装置１１１を起動する。このとき、予備系のサーバ装置１１１に接続されるＩ／Ｏデバイス１１５が管理ネットワークに接続されるＮＩＣ（図４のＩ／Ｏデバイス＃１）の場合、対象のＮＩＣにＶＬＡＮ（Virtual LAN）を予め設定することで、ＮＩＣを管理ネットワークから隔離しておいてもよい。これは、管理ネットワークに接続されたサーバ装置４０５の管理ソフトウェア４０５０がＮＩＣのＭＡＣアドレスでサーバ装置１１１の管理を行うため、Ｉ／Ｏデバイス１１５が管理ネットワークに接続されたＮＩＣで予備系のサーバ装置１１１をそのまま起動すると、管理ソフトウェア４０５０は、障害が発生したサーバ装置１１１が再起動したと誤認するのを防ぐため、このＮＩＣをＶＬＡＮにより管理ネットワークから隔離しておく。
【００６２】
ステップ１０４６では、予備系のサーバ装置１１１に接続されるＩ／Ｏデバイス１１５の指定デバイス識別子の取得、および選択をデバイス識別子取得選択部１０６が実行する。デバイス識別子取得選択部１０６は、図１２で後述するように、管理ネットワークに接続されたＩ／Ｏデバイス１１５のうち、仮想デバイス識別子を付与するＩ／Ｏデバイス１１５を選択する。図４の例では、管理ネットワークに接続されたＩ／Ｏデバイス＃１が仮想デバイス識別子の付与対象として選択される。
【００６３】
ステップ１０４７では、予備系のサーバ装置１１１に接続されるＩ／Ｏデバイス１１５の指定デバイス識別子の書き換えをデバイス識別子書き換え部１０７が実行する。
【００６４】
デバイス識別子書き換え部１０７は、図１３で後述するように、上記ステップ１４０６で選択されたＩ／Ｏデバイス１１５（Ｉ／Ｏデバイス＃１のＮＩＣ）のデバイス識別子（図８のＭＡＣ１）を、仮想識別子テーブル１２３の仮想デバイス識別子（図８のＭＡＣ１１）で書き換えるように予備系のサーバ装置１１１に指令する。
【００６５】
上記処理により、障害が発生した現用系のサーバ装置１１１のＩ／Ｏデバイス１１５を引き継いだ予備系のサーバ装置１１１は、Ｉ／Ｏデバイス１１５のうち管理ネットワークに接続されるＮＩＣ（Ｉ／Ｏデバイス＃１）について、管理サーバ１０１から仮想デバイス識別子（ＭＡＣ１１）を受信し、ＮＩＣのデバイス識別子（ＭＡＣ１）を仮想デバイス識別子（ＭＡＣ１１）に書き換える。
【００６６】
これにより、管理ネットワークに接続されたサーバ装置４０５の管理ソフトウェア４０５０は、新たな仮想デバイス識別子をデバイス識別子として認識し、停止したサーバ装置１１１を予備系のサーバ装置１１１が引き継いだことを認識することが可能となる。
【００６７】
したがって、現用系サーバ装置１１１と予備系サーバ装置１１１をPCI-ExpressのＩ／Ｏスイッチ装置１１２にそれぞれ接続してＩ／Ｏデバイス１１５を共用する状態で、現用系サーバ装置１１１から予備系サーバ装置１１１への切り替えが行われた場合でも、管理ネットワークのサーバ装置４０５の管理ソフトウェア４０５０は各サーバ装置１１１の物理位置を把握することができる。
【００６８】
一方、Ｉ／Ｏデバイス１１５のうち業務ネットワークに接続されるＮＩＣのデバイス識別子は、障害発生前と同一であるので、他の計算機などは障害発生前と同様に予備系のサーバ装置１１１にアクセスすることができる。
【００６９】
なお、管理ネットワークに接続されているＩ／Ｏデバイス１１５をＶＬＡＮにより隔離した場合には、デバイス識別子を仮想デバイス識別子に書き換えた後に、ＶＬＡＮの設定を変更して管理ネットワークに接続させればよい。
【００７０】
図１１は、Ｉ／Ｏスイッチ切り替え部１０５で行われる処理の一例を示すフローチャートである。この処理は、上記図１０のステップ１４０３で行われる処理の詳細である。
【００７１】
ステップ１５０１では、Ｉ／Ｏスイッチ切り替え部１０５が、サーバ管理テーブル１０８、およびサーバＩ／Ｏ構成情報テーブル１０９から、障害が発生したサーバ装置１１１に接続されるＩ／Ｏスイッチ装置１１２のＩ／Ｏ識別子を取得する。
【００７２】
ステップ１５０２では、Ｉ／Ｏスイッチ切り替え部１０５が、サーバ管理テーブル１０８、およびサーバＩ／Ｏ構成情報テーブル１０９から、予備系のサーバ装置１１１に接続されているＩ／Ｏスイッチ装置１１２のＩ／Ｏ識別子を取得する。ステップ１５０３では、現用系のサーバ装置１１１に接続されるＩ／Ｏスイッチ装置１１２のＩ／Ｏスイッチ識別子の全てが、予備系のサーバ装置１１１に接続されるＩ／Ｏスイッチ装置１１２のＩ／Ｏスイッチ識別子に含まれるか比較し、Ｉ／Ｏスイッチ装置１１２の切り替え可能か判別する。この比較は、スイッチ切り替えの判定条件となるため、非常に重要である。Ｉ／Ｏスイッチ装置１１２の切り替えが不能な場合のステップ１５０４では、ユーザ（または管理サーバ１０１の管理者）にエラーを通知する。
【００７３】
一方、Ｉ／Ｏスイッチ装置１１２の切り替えが可能な場合のステップ１５０５では、現用系のサーバ装置１１１に接続されるＩ／Ｏスイッチ装置１１２のポート番号を、予備系のサーバ装置１１１に接続されるＩ／Ｏスイッチ装置１１２のポート番号に書き換える命令を全てのＩ／Ｏスイッチ装置１１２に送信する。
【００７４】
図１２は、デバイス識別子取得選択部１０６で行われる処理の一例を示すフローチャートである。この処理は、上記図１０のステップ１４０６で行われる処理の詳細である。
【００７５】
ステップ１６０１では、デバイス識別子取得選択部１０６はデバイス識別子取得プログラム１２１により全てのサーバ装置１１１に接続されているＩ／Ｏデバイス１１５のデバイス識別子を全て取得する。
【００７６】
ステップ１６０２では、デバイス識別子取得選択部１０６は上記ステップ１６０１で取得したデバイス識別子をサーバＩ／Ｏ構成情報テーブル１０９に格納する。ステップ１６０３では、サーバ管理テーブル１０８、およびサーバＩ／Ｏ構成情報テーブル１０９から、障害が発生した現用系のサーバ装置１１１に接続されるＩ／Ｏスイッチ装置１１２の指定デバイス識別子を取得する。
【００７７】
ステップ１６０４では、デバイス識別子取得選択部１０６はステップ１６０２で取得した指定デバイス識別子を検索キーとして、仮想識別子テーブル１２３を検索し、一致するデバイス識別子が存在するか判定する。この検索は、書き換え対象のデバイス識別子の有無を判定するため、非常に重要な意味を持つ。ステップ１６０５では、ステップ１６０４で一致したデバイス識別子に対応する仮想デバイス識別子１２３２を書き換え対象として選択する。
【００７８】
図１３は、デバイス識別子書き換え部１０７で行われる処理の一例を示すフローチャートである。この処理は、上記図１０のステップ１４０７で行われる処理の詳細である。
【００７９】
ステップ１７０１では、デバイス識別子書き換え部１０７が、デバイス識別子取得選択部１０６で書き換え対象のデバイス識別子が選択されているか否かを判別する。デバイス識別子取得選択部１０６で書き換え対象のデバイス識別子が選択されている場合は、ステップ１７０２で、デバイス識別子取得選択部１０６が書き換え対象のデバイス識別子を仮想デバイス識別子に書き換える。このとき、デバイス識別子取得選択部１０６で書き換え対象のデバイス識別子のみを書き換え、他のデバイス識別子は全て書き換えないところが重要である。つまり、管理ネットワークに接続されているＩ／Ｏデバイス１１５のデバイス識別子のみを仮想デバイス識別子に書き換えることで、起動した予備系のサーバ装置１１１をサーバ装置４０５の管理ソフトウェア４０５０に認識させる。一方、その他のＩ／Ｏデバイス１１５については、現用系のサーバ装置１１１で用いていたデバイス識別子をそのまま使用することで、予備系のサーバ装置１１１は切り替え以前と同一の環境でサービスの提供やストレージ装置１１６へのアクセスを行うことができる。
【００８０】
なお、上記では、障害が発生したときに予備系のサーバ装置１１１へ切り替える例を示したが、現用系のサーバ装置１１１の保守などで管理サーバ１０１が予備系のサーバ装置１１１への切り換えを指示した場合にも、上述したように管理ソフトウェア４０５０からアクセスされるＩ／Ｏデバイス１１５のデバイス識別子を、管理サーバ１０１で予め設定された仮想デバイス識別子に書き換えるようにしても良い。この場合、サーバ障害回復部１０４は、サーバ切り替え部として機能し、管理サーバ１０１の図示しないコンソールなどからの指令によって、現用系のサーバ装置１１１から予備系のサーバ装置１１１を指定して切り替えを実行する。
【００８１】
また、Ｉ／Ｏデバイス１１５のデバイス識別子を仮想デバイス識別子に書き換える処理については、上述したように管理サーバ１０１が予備系のサーバ装置１１１へ指令する他、管理サーバ１０１がＳＶＰ１２０にデバイス識別子と仮想デバイス識別子を指示し、ＳＶＰ１２０がＢＭＣ３０４を経由して対象のＩ／Ｏデバイス１１５のデバイス識別子を仮想デバイス識別子に書き換えるようにしても良い。
【００８２】
また、上記では管理サーバ１０１と、ＭＡＣアドレスでサーバ装置１１１の物理位置を管理する管理ソフトウェア４０５０を実行するサーバ装置４０５を異なる計算機で構成した例を示したが、管理サーバ１０１で管理ソフトウェア４０５０を実行しても良い。この場合、管理サーバ１０１に複数のネットワークインターフェースを設けて、ネットワークスイッチ１１０と管理ＬＡＮスイッチ４０１にそれぞれ接続すればよい。
【００８３】
また、上記ではサーバ装置１１１とＩ／Ｏスイッチ装置１１２とポートの関係を保持するサーバ管理テーブル１０８と、Ｉ／Ｏスイッチ装置１１２のポートとＩ／Ｏデバイスの情報（種類及びデバイス識別子）とサーバ装置１１１の関係を保持するサーバＩ／Ｏ構成情報テーブル１０９と、デバイス識別子と仮想デバイス識別子を保持する仮想識別子テーブル１２３を分離した例を示したが、Ｉ／Ｏスイッチ装置１１２のポート毎に接続されたサーバ装置１１１とＩ／Ｏデバイスの情報と仮想識別子の関係を保持する構成管理情報であればよい。
【産業上の利用可能性】
【００８４】
以上のように、本発明はPCI-Express Switchを備えて複数の計算機でＩ／Ｏデバイスを共用する計算機システムに適用することができる。
【符号の説明】
【００８５】
１０１  管理サーバ
１０２  Ｉ／Ｏ構成管理部
１０３  デバイス識別子検出部
１０４  サーバ障害回復部
１０５  Ｉ／Ｏスイッチ切り替え部
１０６  デバイス識別子取得選択部
１０７  デバイス識別子書き換え部
１０８  サーバ管理テーブル
１０９  サーバＩ／Ｏ構成情報テーブル
１１０  ネットワークスイッチ
１１１  サーバ装置
１１２  Ｉ／Ｏスイッチ装置
１１３  上流ポート
１１４  下流ポート
１１５  Ｉ／Ｏデバイス
１１６  ストレージ装置
１２０  ＳＶＰ
３０４  ＢＭＣ
【図１】
2011191854.tif 000003
【図２】
2011191854.tif 000004
【図３】
2011191854.tif 000005
【図４】
2011191854.tif 000006
【図５】
2011191854.tif 000007
【図６】
2011191854.tif 000008
【図７】
2011191854.tif 000009
【図８】
2011191854.tif 000010
【図９】
2011191854.tif 000011
【図１０】
2011191854.tif 000012
【図１１】
2011191854.tif 000013
【図１２】
2011191854.tif 000014
【図１３】
2011191854.tif 000015