(57)【要約】【課題】単一点装置における不具合を修正するHAクラスタシステムおよびそのクラスタリング方法を提供。【解決手段】HAクラスタシステム10は、複数のサーバと共有ディスク30および32とを有する複数のサーバ群12および14を含み、これらのサーバ群が稼動系サーバと待機系サーバとを有するHAクラスタ82および84を設け、各サーバが複数のゲストOSを動作可能な仮想化システムを含むもので、サーバ群12に単一点障害を発見した場合に、共有ディスク30における共有データを共有ディスク32に移行し、クラスタ82に係る待機系サーバおよび稼動系サーバを他のサーバ群14に移行して他のクラスタ84の運用に拘らないゲストOSで運用することにより、クラスタ82を、他のクラスタ84を運用する他のサーバ群14に一時的に移行するので、可用性を低下させず、また設備の代替えまたは新設をせずに、単一点障害の不具合を修正することができる。【選択図】図１
2010237989.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続される複数のサーバを含み、
また、一の前記サーバで稼動系サーバを運用し、他の前記サーバで待機系サーバを運用しつつ、前記稼動系サーバの側で障害が生じた場合に前記稼動系サーバと前記待機系サーバとを切り替える高可用性（HA：High Availability）クラスタを含むHAクラスタシステムにおいて、該システムは、
少なくとも２つ以上の前記サーバおよび該２つ以上のサーバの間で共有される共有ディスクを有する複数のサーバ群と、
前記HAクラスタの構成を管理し、前記HAクラスタの移行を指示するHAクラスタ構成変更要求を発行するHAクラスタ構成管理手段とを含み、
前記サーバは、複数のゲストオペレーティングシステム（OS：Operating System）を動作可能にする仮想化システムを有し、
該システムは、通常、前記複数のサーバ群のそれぞれに前記HAクラスタを備えて、前記サーバ群における少なくとも２つの前記サーバに前記稼動系サーバおよび前記待機系サーバをそれぞれ備えるように前記HAクラスタ構成管理手段によって管理され、
また、前記HAクラスタ構成変更要求に応じて、前記複数のサーバ群のうち、一の前記サーバ群に備えられた一の前記HAクラスタを、他の前記HAクラスタを備える他の前記サーバ群に一時的に移行して、前記一のサーバ群について単一点障害を修正可能な状態にする移行手段を含み、
該移行手段は、前記一のサーバ群における一の前記共有ディスクに格納された共有データを、前記他のサーバ群における他の前記共有ディスクに移行し、
前記一のHAクラスタに係る前記待機系サーバおよび前記稼動系サーバを、前記他のサーバ群における前記２つ以上のサーバにそれぞれ移行して、移行先の前記サーバにおける前記複数のゲストOSのうち、前記他のHAクラスタの運用に拘らない前記ゲストOSで運用させることを特徴とするHAクラスタシステム。
【請求項２】
請求項１に記載のHAクラスタシステムにおいて、前記移行手段は、前記一のHAクラスタに係る一の前記待機系サーバを、前記他のサーバ群のうち、前記他のHAクラスタに係る他の前記稼動系サーバを運用する第１の他のサーバに移行して、第１の他のサーバの前記仮想化システム上で動作する前記複数のゲストOSのうち、前記他の稼動系サーバの運用に拘らない前記ゲストOSで前記一の待機系サーバを運用させ、
前記一のHAクラスタに係る一の前記稼動系サーバを、前記他のサーバ群のうち、前記他のHAクラスタに係る他の前記待機系サーバを運用する第２の他のサーバに移行して、第２の他のサーバの前記仮想化システム上で動作する前記複数のゲストOSのうち、前記他の待機系サーバの運用に拘らない前記ゲストOSで前記一の稼動系サーバを運用させることを特徴とするHAクラスタシステム。
【請求項３】
請求項２に記載のHAクラスタシステムにおいて、前記移行手段は、まず、前記一のサーバ群における一の前記共有ディスクに格納された共有データを、前記他のサーバ群における他の前記共有ディスクに移行し、
次に、前記一の待機系サーバを、前記他の待機系サーバを運用する第２の他のサーバに移行して、第２の他のサーバにおける前記他の待機系サーバの運用に拘らない前記ゲストOSで前記一の待機系サーバを運用させ、
このとき、前記一のサーバ群で前記一の待機系サーバを運用していたクラスタウエアの動作を停止し、
次に、前記他のサーバ群における前記一の待機系サーバと、前記一のサーバ群における前記一の稼動系サーバとを切り替えて、前記一の稼動系サーバを、第２の他のサーバにおける前記他の待機系サーバの運用に拘らない前記ゲストOSで運用させ、
さらに、前記一の待機系サーバを、前記他の稼動系サーバを運用する第１の他のサーバに移行して、第１の他のサーバにおける前記他の稼動系サーバの運用に拘らない前記ゲストOSで前記一の待機系サーバを運用させ、
このとき、前記一のサーバ群で前記一の待機系サーバを運用していたクラスタウエアの動作を停止して、前記一のサーバ群における前記サーバへのアクセスを停止することを特徴とするHAクラスタシステム。
【請求項４】
ネットワークを介して接続される複数のサーバを含み、
また、一の前記サーバで稼動系サーバを運用し、他の前記サーバで待機系サーバを運用しつつ、前記稼動系サーバの側で障害が生じた場合に前記稼動系サーバと前記待機系サーバとを切り替える高可用性（HA：High Availability）クラスタを含むHAクラスタシステムのクラスタリング方法において、該方法は、
少なくとも２つ以上の前記サーバおよび該２つ以上のサーバの間で共有される共有ディスクを有する複数のサーバ群と、
前記HAクラスタの構成を管理し、前記HAクラスタの移行を指示するHAクラスタ構成変更要求を発行するHAクラスタ構成管理手段とを含む前記HAクラスタシステムを利用し、
前記サーバは、複数のゲストオペレーティングシステム（OS：Operating System）を動作可能にする仮想化システムを有し、
前記HAクラスタシステムは、通常、前記複数のサーバ群のそれぞれに前記HAクラスタを備えて、前記サーバ群における少なくとも２つの前記サーバに前記稼動系サーバおよび前記待機系サーバをそれぞれ備えるように前記HAクラスタ構成管理システムによって管理され、
該方法は、前記HAクラスタ構成変更要求に応じて、前記複数のサーバ群のうち、一の前記サーバ群に備えられた一の前記HAクラスタを、他の前記HAクラスタを備える他の前記サーバ群に一時的に移行して、前記一のサーバ群について単一点障害を修正可能な状態にする移行工程を含み、
該移行工程は、前記一のサーバ群における一の前記共有ディスクに格納された共有データを、前記他のサーバ群における他の前記共有ディスクに移行し、
前記一のHAクラスタに係る前記待機系サーバおよび前記稼動系サーバを、前記他のサーバ群における前記２つ以上のサーバにそれぞれ移行して、移行先の前記サーバにおける前記複数のゲストOSのうち、前記他のHAクラスタの運用に拘らない前記ゲストOSで運用させることを特徴とするクラスタリング方法。
【請求項５】
請求項４に記載のクラスタリング方法において、前記移行工程は、前記一のHAクラスタに係る一の前記待機系サーバを、前記他のサーバ群のうち、前記他のHAクラスタに係る他の前記稼動系サーバを運用する第１の他のサーバに移行して、第１の他のサーバの前記仮想化システム上で動作する前記複数のゲストOSのうち、前記他の稼動系サーバの運用に拘らない前記ゲストOSで前記一の待機系サーバで運用させ、
前記一のHAクラスタに係る一の前記稼動系サーバを、前記他のサーバ群のうち、前記他のHAクラスタに係る他の前記待機系サーバを運用する第２の他のサーバに移行して、第２の他のサーバの前記仮想化システム上で動作する前記複数のゲストOSのうち、前記他の待機系サーバの運用に拘らない前記ゲストOSで前記一の稼動系サーバで運用させることを特徴とするクラスタリング方法。
【請求項６】
請求項５に記載のクラスタリング方法において、前記移行工程は、まず、前記一のサーバ群における一の前記共有ディスクに格納された共有データを、前記他のサーバ群における他の前記共有ディスクに移行し、
次に、前記一の待機系サーバを、前記他の待機系サーバを運用する第２の他のサーバに移行して、第２の他のサーバにおける前記他の待機系サーバの運用に拘らない前記ゲストOSで前記一の待機系サーバを運用させ、
このとき、前記一のサーバ群で前記一の待機系サーバを運用していたクラスタウエアの動作を停止し、
次に、前記他のサーバ群における前記一の待機系サーバと、前記一のサーバ群における前記一の稼動系サーバとを切り替えて、前記一の稼動系サーバを、第２の他のサーバにおける前記他の待機系サーバの運用に拘らない前記ゲストOSで運用させ、
さらに、前記一の待機系サーバを、前記他の稼動系サーバを運用する第１の他のサーバに移行して、第１の他のサーバにおける前記他の稼動系サーバの運用に拘らない前記ゲストOSで前記一の待機系サーバを運用させ、
このとき、前記一のサーバ群で前記一の待機系サーバを運用していたクラスタウエアの動作を停止して、前記一のサーバ群における前記サーバへのアクセスを停止することを特徴とするクラスタリング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、単一点装置における不具合を修正するHAクラスタシステムおよびそのクラスタリング方法に関するものである。
【背景技術】
【０００２】
従来から、高可用性（HA：High Availability）クラスタシステムは、通信機器と接続するサーバである稼動系サーバおよび待機系サーバが組み合わされて構成され、サーバの信頼性を向上させるものである。このHAクラスタシステムは、通信機器と接続するサーバとして稼動系サーバを動作させるものであるが、稼動系サーバで障害を検知すると、通信機器と接続するサーバを待機系サーバに切り替えることにより、サーバのダウンタイムを短縮し、サーバの信頼性を向上することができる。すなわち、稼動系であった第１のサーバを待機系に切り替え、かつ待機系であった第２のサーバを稼動系に切り替える。
【０００３】
HAクラスタシステムでは、稼動系サーバおよび待機系サーバは、たとえば互いにハートビート通信して、他系のサーバの状態を監視する。このとき、稼動系サーバに致命的な障害が発生すると、ハートビート通信が途絶え、待機系サーバが稼動系サーバの異常を検知する。このとき、HAクラスタシステムでは、稼動系であった第１のサーバが待機系に切り替えられ、ほぼ同時に、待機系であった第２のサーバが稼動系に切り替えられる。
【０００４】
稼動系サーバおよび待機系サーバは、たとえば、オペレーティングシステム（OS：Operating System）およびハードウエアを備え、とくに、HAクラスタの動作に用いるHAクラスタウエアと、通信機器と通信接続に用いるアプリケーションとを含んで構成されるものである。HAクラスタウエアは、稼動系サーバでは、このアプリケーションを実行してサーバを通信のために稼動させ、待機系サーバでは、このアプリケーションの実行を停止もしくは待機状態としてサーバを待機状態にする。
【０００５】
また、HAクラスタシステムでは、稼動系サーバと待機系サーバとに共通の共有ディスクを備えて、通信機器との通信に関するデータをこの共有ディスクに格納することで、各サーバが共通のデータを使用するので、サーバ間のデータの受け渡しを省略することができる。
【０００６】
特許文献１に記載のクラスタシステムでは、実行系システムおよび待機系システムをそれぞれ構成する物理計算機において、ホストOS上にサーバ仮想化プログラムを稼動して複数の論理区画を構成し、これらの論理区画のそれぞれでゲストOSを実行してそのゲストOS上でアプリケーションプログラムを実行することができる。また、このクラスタシステムは、ホストOSおよびゲストOSでマスタクラスタプログラムおよびスレーブクラスタプログラムをそれぞれ稼動して、実行系と待機系との系切り替えを可能とするもので、とくに、スレーブクラスタプログラムがマスタクラスタプログラムに高可用性要件を設定し、マスタクラスタプログラムがその高可用性要件を満たす系切り替え手法を選択して、選択した手法に従って実行系と待機系との系切り替えを実行する。これによって、このクラスタシステムは、ユーザが求める高可用性要件に好適なクラスタ構成を実現することができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−２６９３３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、このように共有ディスクを使用するHAクラスタシステムでは、HAクラスタを構成するサーバ群における単一点装置、たとえば共有ディスクに不具合が発生したとき、共有ディスクを修正するためにホストからのアクセスを停止して稼動系サーバおよび待機系サーバの両方を停止し、パッチの適用などにより共有ディスクの不具合を修正する必要がある。
【０００９】
このように、従来のHAクラスタシステムは、信頼性の向上を要求されるにも拘らず、単一点の不具合が発生すると、不具合を修正する間にサービスの提供を継続できなくなる問題が発生する。
【００１０】
また、このようなサービス中断時間を短縮するために、不具合が修正されたサーバおよび共有ディスクを新設したり、サービスを一時的に代替するサーバおよび共有ディスクを用意したりすることが考えられるが、いずれの場合も通常時には不要な設備であり、そのコストが無駄になる可能性がある。
【００１１】
本発明は、このような従来技術の欠点を解消し、単一点の障害を修正するときに、必要なコストを抑えつつ、サービス中断時間を短縮するHAクラスタシステムおよびそのクラスタリング方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明は上述の課題を解決するために、ネットワークを介して接続される複数のサーバを含み、また、一のサーバで稼動系サーバを運用し、他のサーバで待機系サーバを運用しつつ、この稼動系サーバの側で障害が生じた場合にこの稼動系サーバとこの待機系サーバとを切り替えるHAクラスタを含むHAクラスタシステムは、少なくとも２つ以上のサーバおよび該これらの２つ以上のサーバの間で共有される共有ディスクを有する複数のサーバ群と、このHAクラスタの構成を管理し、このHAクラスタの移行を指示するHAクラスタ構成変更要求を発行するHAクラスタ構成管理手段とを含み、このサーバは、複数のゲストOSを動作可能にする仮想化システムを有し、このシステムは、通常、これらの複数のサーバ群のそれぞれにこのHAクラスタを備えて、このサーバ群における少なくとも２つのサーバにこの稼動系サーバおよびこの待機系サーバをそれぞれ備えるようにこのHAクラスタ構成管理手段によって管理され、また、このHAクラスタ構成変更要求に応じて、これらの複数のサーバ群のうち、一のサーバ群に備えられた一のHAクラスタを、他のHAクラスタを備える他のサーバ群に一時的に移行して、一のサーバ群について単一点障害を修正可能な状態にする移行手段を含み、この移行手段は、一のサーバ群における一の共有ディスクに格納された共有データを、他のサーバ群における他の共有ディスクに移行し、一のHAクラスタに係るこの待機系サーバおよびこの稼動系サーバを、他のサーバ群におけるこれらの２つ以上のサーバにそれぞれ移行して、移行先のこのサーバにおけるこれらの複数のゲストOSのうち、他のHAクラスタの運用に拘らないこのゲストOSで運用させることを特徴とする。
【００１３】
また、ネットワークを介して接続される複数のサーバを含み、また、一のサーバで稼動系サーバを運用し、他のサーバで待機系サーバを運用しつつ、この稼動系サーバの側で障害が生じた場合にこの稼動系サーバとこの待機系サーバとを切り替えるHAクラスタを含むHAクラスタシステムのクラスタリング方法は、少なくとも２つ以上のサーバおよびこれらの２つ以上のサーバの間で共有される共有ディスクを有する複数のサーバ群と、このHAクラスタの構成を管理し、このHAクラスタの移行を指示するHAクラスタ構成変更要求を発行するHAクラスタ構成管理手段とを含むこのHAクラスタシステムを利用し、このサーバは、複数のゲストOSを動作可能にする仮想化システムを有し、このHAクラスタシステムは、通常、これらの複数のサーバ群のそれぞれにこのHAクラスタを備えて、このサーバ群における少なくとも２つのサーバにこの稼動系サーバおよびこの待機系サーバをそれぞれ備えるようにこのHAクラスタ構成管理システムによって管理され、この方法は、このHAクラスタ構成変更要求に応じて、これらの複数のサーバ群のうち、一のサーバ群に備えられた一のHAクラスタを、他のHAクラスタを備える他のサーバ群に一時的に移行して、一のサーバ群について単一点障害を修正可能な状態にする移行工程を含み、この移行工程は、一のサーバ群における一の共有ディスクに格納された共有データを、他のサーバ群における他の共有ディスクに移行し、一のHAクラスタに係るこの待機系サーバおよびこの稼動系サーバを、他のサーバ群におけるこれらの２つ以上のサーバにそれぞれ移行して、移行先のこのサーバにおけるこれらの複数のゲストOSのうち、他のHAクラスタの運用に拘らないこのゲストOSで運用させることを特徴とする。
【発明の効果】
【００１４】
本発明のHAクラスタシステムは、一のサーバ群に単一点障害を発見した場合には、この一のサーバ群に設けられた一のHAクラスタを、他のHAクラスタを設ける他のサーバ群に一時的に移行し、このとき、一のサーバ群における一の共有ディスクに格納された共有データを、他のサーバ群における他の共有ディスクに移行し、一のHAクラスタに係る待機系サーバおよび稼動系サーバを、他のサーバ群におけるサーバの仮想化システム上で動作する複数のゲストOSのうち、他のHAクラスタの運用に拘らないゲストOSで運用させる。これによって、本発明のHAクラスタシステムは、一のサーバ群における単一点装置に障害が生じた場合でも、可用性を低下させることなく、また、サーバおよび共有ディスクなどの設備の代替えまたは新設による投資をすることなく、その単一点障害について不具合を修正することができる。
【００１５】
また、本発明のHAクラスタシステムは、一のHAクラスタに係る一の待機系サーバを、他のサーバ群のうち、他のHAクラスタに係る他の稼動系サーバを運用するサーバに移行して、このサーバの仮想化システム上で動作する複数のゲストOSのうち、他の稼動系サーバの運用に拘らないゲストOSで一の待機系サーバを運用し、また、一のHAクラスタに係る一の稼動系サーバを、他のサーバ群のうち、他のHAクラスタに係る他の待機系サーバを運用するサーバに移行して、このサーバの仮想化システム上で動作する複数のゲストOSのうち、他の待機系サーバの運用に拘らないゲストOSで一の稼動系サーバを運用することにより、アプリケーションが動作しない待機系で、別のHAクラスタの稼動系を動作させるので、サーバの計算機資源を有効に利用することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明に係るHAクラスタシステムの一実施例を示すブロック図である。
【図２】図１に示す実施例のHAクラスタシステムにおいて、待機系のHAクラスタウエアおよび共有データの移動を概要的に説明する図である。
【図３】図１に示す実施例のHAクラスタシステムにおいて、稼動系の切り替えを概要的に説明する図である。
【図４】図１に示す実施例のHAクラスタシステムにおいて、待機系のHAクラスタウエアの移動および修正パッチの適用を概要的に説明する図である。
【発明を実施するための形態】
【００１７】
次に添付図面を参照して、本発明による高可用性（HA：High Availability）クラスタシステムの実施例を詳細に説明する。たとえば、本発明のシステム10は、図１に示すように、ネットワークを介して接続される複数のサーバ群12および14を含み、また、これらのサーバ群12ならびに14は、それぞれ、複数のサーバ22および24ならびに複数のサーバ26および28を含み、これらのサーバ間で共通に使用される共有ディスク30ならびに32を有して構成される。
【００１８】
このサーバ22では、物理的なハードウエア42に対して仮想化システム44が実装されて、この仮想化システム44上で複数のゲストオペレーティングシステム（OS：Operating System）46および48が動作し、少なくとも一つのゲストOS 46上でHAクラスタウエア50が実行される。このように、一つのサーバ群12において、複数のサーバ22および24のそれぞれでHAクラスタウエア50および52が別々に実行され、稼動系サーバおよび待機系サーバが異なるサーバで運用されることにより、複数のサーバ22および24の間でHAクラスタ82が構成される。
【００１９】
すなわち、本システム10では、複数のサーバ群12および14において、HAクラスタ82および84をそれぞれ構成することができ、とくに、HAクラスタ構成管理システム90を有して、これらのHAクラスタ82および84の構成を管理することができる。なお、本発明の理解に直接関係のない部分は、図示を省略し、冗長な説明を避ける。
【００２０】
本システム10は、実際には多数のサーバ群を有してよいが、図１では複雑化を避けるため、少数のサーバ群12および14しか図示しない。
【００２１】
複数のサーバ群12および14の構成は、互いに同じものでも異なるものでもよいが、少なくとも各サーバ群は複数のサーバおよび共有ディスクを有して構成される。本実施例におけるサーバ群12および14は、同じように構成されるもので、以下ではサーバ群12の構成のみを説明して、サーバ群14の構成の説明を省略する。
【００２２】
サーバ群12は、複数のサーバ22および24を含み、実際には多数のサーバを有してよいが、図１では複雑化を避けるため、少数のサーバ22および24しか図示しない。また、サーバ群12は、複数のサーバ22および24の間で共通に使用される共有ディスク30を含む。
【００２３】
本実施例のサーバ群12は、複数のサーバ22および24のうち、少なくとも一のサーバ22で稼動系サーバが実行され、他のサーバ24で待機系サーバが実行されて、複数のサーバ22および24の間でHAクラスタ82が成立するように構成されるが、多数のサーバのそれぞれで稼動系サーバが実行されてもよい。
【００２４】
このサーバ群12において、複数のサーバ22および24は、互いに同じものでも異なるものでもよいが、少なくとも各サーバは複数のHAクラスタウエアを別々に、かつほぼ同時に実行できるように構成される。本実施例におけるサーバ22および24は、ほぼ同じように構成され、以下では主にサーバ22の構成を説明し、サーバ24については共通する点は省略して異なる点のみを説明する。
【００２５】
サーバ22は、少なくとも、物理的なハードウエア42を含み、このハードウエア42の実行および操作を助けるソフトウエアとしてOSが実装され、このOS上でHAクラスタウエアを動作させるように構成され、このHAクラスタウエアが他のサーバとのクラスタリングを行うことにより、このOS上で実行されるアプリケーション（図示せず）の高可用性を維持することができる。たとえば、サーバ22は、通信アプリケーションを高可用性に実行して、通信サーバとして稼動することができる。
【００２６】
本実施例ではとくに、サーバ22は、ハードウエア42に対して実装される仮想化システム44を含み、また、この仮想化システム44上で別々に、かつほぼ同時に動作する複数のゲストOS 46および48を含んで構成される。また、サーバ22は、複数のゲストOS 46および48のそれぞれにおいてHAクラスタウエアを動作させることができるが、図１に示す例では、ゲストOS 46上で動作するHAクラスタウエア50を含む。
【００２７】
ハードウエア42は、サーバ22における物理的構成要素で、たとえばプログラムおよびデータの保存を行なうハードディスクおよびメモリなどの記憶装置、ならびにプログラムに従ってデータの加工および演算を行なうマザーボードおよび中央演算処理装置（CPU：Central Processing Unit）などの処理装置を含むものでよい。
【００２８】
仮想化システム44は、このサーバ22のリソース、すなわち計算機資源を仮想化して、サーバ22を擬似的に分割することにより、このサーバ22において複数のゲストOS 46および48をほぼ同時に動作可能にするものである。
【００２９】
ゲストOS 46は、ハードウエアの抽象化およびリソースの管理をすることでコンピュータの利用効率を向上し、またアプリケーションプログラミングインタフェース（API：Application Programming Interface）の下でHAクラスタウエア50やアプリケーションなどのソフトウエアをこのサーバ22において実行可能にするものである。
【００３０】
複数のゲストOS 46および48は、互いに同じものでも異なるものでもよいが、各ゲストOSは少なくともHAクラスタウエアを実行できるように構成され、したがって、このサーバ22において複数のHAクラスタウエアが別々に、かつほぼ同時に実行できることとなる。
【００３１】
HAクラスタウエア50は、自身が搭載されるゲストOS 46上の環境を、稼動系サーバまたは待機系サーバとして機能させるように制御するものである。HAクラスタウエア50は、そのゲストOS 46を稼動系サーバとする場合には、高可用性が要求されるアプリケーションを実行可能にし、そのゲストOS 46を待機系サーバとする場合には、このアプリケーションを実行せずに待機状態を維持する。
【００３２】
このHAクラスタウエア50は、他のサーバ24に搭載された他のHAクラスタウエア60と同期してクラスタリング制御することができる。たとえば、複数のHAクラスタウエア50および60は、複数のサーバ22および24のうち、少なくとも一つのサーバで稼動系サーバが作動し、少なくとも他の一つのサーバで待機系サーバが作動するように、サーバ間のクラスタリングを制御して、実質的に一つのHAクラスタ82を成立させる。
【００３３】
本実施例において、HAクラスタ82は、初期状態において、サーバ22のゲストOS 46上の環境を稼動系サーバとし、サーバ24のゲストOS 56上の環境を待機系サーバとするように制御される。
【００３４】
また、HAクラスタ82は、たとえばハートビート通信によって、複数のサーバ22および24が互いに障害を監視できるように構成される。このような障害を監視する監視部は、サーバごとに、すなわち複数のゲストOS 46および48に共通に備えてもよく、またはゲストOSもしくはHAクラスタウエアごとに備えてもよい。
【００３５】
このHAクラスタ82において、HAクラスタウエア50は、HAクラスタ82における稼動系サーバに障害が生じたときに、通常のクラスタリングによって、対応する待機系サーバとこの稼動系サーバとを互いに切り替える。たとえば、HAクラスタウエア50は、ゲストOS 46上で稼動系サーバが動作しているときにサーバ22に障害が生じた場合には、この稼動系サーバで稼動していた業務を他のサーバ24における待機系サーバに引き継いで、ゲストOS 46上の環境を待機系サーバに切り替えることができる。
【００３６】
また、HAクラスタウエア50は、ゲストOS 46上で待機系サーバが動作しているときに他のサーバ24に障害が生じた場合には、他のサーバ24における稼動系サーバから業務を引き継いで、ゲストOS 46上の環境を稼動系サーバに切り替えることもできる。
【００３７】
本実施例のサーバ群12において、サーバ24は、サーバ22と同様にして、ハードウエア52、仮想化システム54、ゲストOS 56および58、ならびにHAクラスタウエア60を有して構成されるものでよい。
【００３８】
また、本実施例のサーバ群12において、共有ディスク30は、複数のサーバ22および24のそれぞれで共有される、データベースおよびハードディスクなどの記録媒体である。この共有ディスク30は、サーバ群12またはHAクラスタ82において、単一に備えられるものである。共有ディスク30は、たとえば、サーバ群12のHAクラスタ82における稼動系サーバおよび待機系サーバの運用に要するデータ、および複数のサーバ22および24で実行されるアプリケーションに関するデータを格納することができる。
【００３９】
また、本実施例において、サーバ群14は、サーバ群12と同様にして、複数のサーバ26および28ならびに共有ディスク32を有して構成されるものでよい。さらに、サーバ26は、サーバ22と同様にして、ハードウエア62、仮想化システム64、ゲストOS 66および68、ならびにHAクラスタウエア70を有して構成されものでよく、また、サーバ28も、サーバ22と同様にして、ハードウエア72、仮想化システム74、ゲストOS 76および78、ならびにHAクラスタウエア80を有して構成されるものでよい。
【００４０】
本実施例ではとくに、HAクラスタ構成管理システム90は、本システム10で運用する複数のHAクラスタ82および84の構成を管理する。この管理システム90は、たとえば、各HAクラスタをいずれのサーバ群で運用するかを管理し、またHAクラスタの稼動系サーバおよび待機系サーバをいずれのサーバのいずれのゲストOSで運用するかを管理することができる。すなわち、管理システム90は、HAクラスタを運用すべきサーバ群を適宜選択し、稼動系サーバおよび待機系サーバを運用すべきサーバおよびゲストOSを適宜選択することができる。
【００４１】
また、HAクラスタ構成管理システム90は、一のサーバ群12に構成されている一のHAクラスタ82の構成要素を、他のHAクラスタ84を有する他のサーバ群14に移行することができる。この管理システム90は、たとえば本システム10の管理者の操作に応じて、HAクラスタ構成変更要求を受け、この変更要求に応じて一のHAクラスタ82の構成要素を他のサーバ群14に移行することができる。したがって、管理システム90によれば、一のサーバ群12に単一点装置の不具合が生じた場合に、一のHAクラスタ82を他のサーバ群14に移行することにより、サーバ群12を単一点装置の不具合が修正可能な状態にすることができる。
【００４２】
たとえば、本実施例のHAクラスタ構成管理システム90は、サーバ群12の共有ディスク30に格納された共有データを、他のサーバ群14の共有ディスク32に移行し、HAクラスタ82に係る待機系サーバおよび稼動系サーバを、他のサーバ群14におけるサーバ26および28にそれぞれ移行する。ここで、管理システム90は、HAクラスタ82に係る待機系サーバおよび稼動系サーバを、移行先のサーバにおける複数のゲストOSのうち、HAクラスタ84の運用に拘らないゲストOSで運用させる。
【００４３】
この管理システム90は、たとえば、HAクラスタ82の待機系サーバに係るHAクラスタウエア60を、他のサーバ群14のうち、他のHAクラスタ84の稼動系サーバを運用するサーバ26に移行して、HAクラスタ82の待機系サーバをサーバ群14に移行する。ここで、管理システム90は、サーバ26の仮想化システム64上で動作する複数のゲストOS 66および68のうち、稼動系サーバの運用に拘らないゲストOS 68を選択し、このゲストOS 68上でHAクラスタ82の待機系サーバを運用する。
【００４４】
また、管理システム90は、HAクラスタ82の稼動系サーバに係るHAクラスタウエア50を、他のサーバ群14のうち、他のHAクラスタ84の待機系サーバを運用するサーバ28に移行して、HAクラスタ82の稼動系サーバをサーバ群14に移行する。ここで、管理システム90は、サーバ28の仮想化システム74上で動作する複数のゲストOS 76および78のうち、待機系サーバの運用に拘らないゲストOS 78を選択し、このゲストOS 78上でHAクラスタ82の稼動系サーバを運用する。
【００４５】
さらに、管理システム90は、HAクラスタ82のサーバ群12からサーバ群14への移行により、サーバ群12で使用されなくなったHAクラスタ82の構成要素、たとえばHAクラスタウエア50および60の動作を停止することができる。
【００４６】
また、管理システム90は、HAクラスタ82の待機系サーバに関してはHAクラスタウエアをサーバ群12からサーバ群14へと直接的に移行し、稼動系サーバに関してはクラスタリングにより間接的に移行することにより、HAクラスタ82をサーバ群12からサーバ群14へと移行することもできる。
【００４７】
次に、本実施例の本システム10において、所定のサーバ群のHAクラスタにおける単一点装置の障害が発生した場合に、そのサーバ群で高可用性が求められるアプリケーションに係る業務を他のサーバ群に引き継ぐ動作例を、図１〜図４を参照しながら説明する。
【００４８】
本システム10は、複数のHAクラスタ82および84が複数のサーバ群12および14のそれぞれに備えられ、各HAクラスタで稼動系サーバを運用することにより、高可用性が求められるアプリケーションを実行する複数の稼動系サーバを同時に運用することができる。
【００４９】
まず、本システム10は、単一点障害のない通常の状態で動作し、図１に示すように、一のHAクラスタ82では、サーバ群12における一のサーバ22のHAクラスタウエア50によって稼動系サーバを運用しつつ、他のサーバ24のHAクラスタウエア60によって待機系サーバを運用している。また、他のHAクラスタ84が、サーバ群14における一のサーバ26のHAクラスタウエア70によって稼動系サーバを運用しつつ、他のサーバ28のHAクラスタウエア80によって待機系サーバを運用している。
【００５０】
本システム10では、このHAクラスタ82、すなわちサーバ群12の単一点装置における障害の発生が検出され、たとえば共有ディスク30における障害の発生が検出されることがある。このような単一点障害が検出されるとき、たとえば管理者がHAクラスタ構成管理システム90を操作することによって、この管理システム90が本システム10に対してHAクラスタ変更要求を指示する。具体的には、管理システム90は、このHAクラスタ変更要求により、単一点障害を有するサーバ群12で稼動系サーバを運用するHAクラスタ82に係る構成要素を、他のサーバ群14に一時的に移行させる。
【００５１】
このHAクラスタ82の移行では、まず、図２に示すように、管理システム90に制御されて、HAクラスタ82に係るデータ、たとえば稼動系サーバおよび待機系サーバの運用に要するデータが、サーバ群12の共有ディスク30から他のサーバ群14の共有ディスク32へとコピーされる。
【００５２】
次に、HAクラスタ82における待機系サーバの他のサーバ群14への移行が管理システム90によって制御される。このとき、他のサーバ群14の各サーバでは、稼動系サーバまたは待機家サーバが運用されているが、この運用は複数のゲストOSのうちの一のOS上で行われているので、使用されていない他のゲストOSに対してHAクラスタ82における待機系サーバを移行する。
【００５３】
本実施例のHAクラスタ82の待機系サーバの移行では、図２に示すように、他のHAクラスタ84の待機系サーバを備えるサーバ28において、その待機系サーバに係るHAクラスタウエア80がゲストOS 76上で動作しているので、他のゲストOS 78を利用する。このとき、他のゲストOS 78において、HAクラスタウエア60に代用されるHAクラスタウエア102を動作させ、ここでHAクラスタ82の待機系サーバを運用させる。
【００５４】
また、この移行処理では、HAクラスタ82の待機系サーバの運用のためにサーバ24で動作していたHAクラスタウエア60を停止し、すなわちサーバ群12における待機系サーバを停止する。
【００５５】
このようにして、サーバ群12でのみ構成されていたHAクラスタ82が、サーバ22におけるHAクラスタウエア50とサーバ28におけるHAクラスタウエア80との間に構成されることとなる。
【００５６】
さらに、このHAクラスタ82がHAクラスタウエア50および80によって制御されて、図３に示すように、サーバ22のゲストOS 46上で動作する稼動系サーバと、サーバ28のゲストOS 78上で動作する待機系サーバとが切り替えられる。これによって、サーバ22のゲストOS 46上ではHAクラスタウエア50によって待機系サーバが運用され、サーバ28のゲストOS 76上ではHAクラスタウエア80によって稼動系サーバが運用されることとなる。
【００５７】
次に、HAクラスタ82で切り替えられた待機系サーバの他のサーバ群14への移行が、上記と同様にして管理システム90によって制御される。このとき、図４に示すように、他のHAクラスタ84の稼動系サーバを備えるサーバ26において、その稼動系サーバに係るHAクラスタウエア70がゲストOS 66上で動作しているので、他のゲストOS 68において、HAクラスタウエア50に代用されるHAクラスタウエア104を動作させ、ここでHAクラスタ82の待機系サーバを運用させる。
【００５８】
この移行処理でも上記と同様にして、HAクラスタ82の待機系サーバの運用のためにサーバ22で動作していたHAクラスタウエア50を停止し、すなわちサーバ群12における待機系サーバを停止する。
【００５９】
このようにして、HAクラスタ82は、サーバ26におけるHAクラスタウエア70とサーバ28におけるHAクラスタウエア80との間に構成されることとなる。
【００６０】
このとき、サーバ群12では、HAクラスタを有さず、高可用性が求められるアプリケーションを実行しない状態となるので、サーバ群12におけるサーバ22および24ならびに共有ディスク30の動作を停止して、サーバ群12における単一点障害に対して修正を行うことができ、たとえば共有ディスク30の不具合を修正するパッチを適用することができる。
【００６１】
このようにしてサーバ群12における単一点障害を修正した後、上記と逆の手順で、HAクラスタ82の構成要素をサーバ群14からサーバ群12に移行して元に戻すことができる。
【００６２】
たとえば、通信システムでは、高可用性を求められる通信アプリケーションを実行するので、本発明のHAクラスタシステムを有効に適用することができ、サーバ群に単一点障害が生じた場合でも、上記のように、単一点障害が生じたサーバ群に備えられたHAクラスタを他のサーバ群に移行するので、通信システムに影響を与えることなく単一点障害を修正することができる。
【００６３】
本発明のHAクラスタシステムでは、サーバ群における単一点装置の不具合について、本システムの管理者が発見することもあるが、各サーバまたは共有ディスクのバグを監視し、修正を要するようなバグの累積に応じて不具合を検出することもある。
【００６４】
また、本発明のHAクラスタシステムは、たとえば一のサーバ群のすべてのサーバが故障して稼動系サーバを運用できなくなり、一のHAクラスタが機能しなくなった場合にも、上述の実施例のようなHAクラスタ切り替えを適用して一のHAクラスタを他のサーバ群に移行することができ、これによって、可用性の低下を防止し、CPUなどの計算機資源を有効利用して故障対策を取ることができる。また、HAクラスタシステムは、稼動系サーバを監視して、その監視において稼動系サーバの故障を検出した場合に自動的にHAクラスタ切り替えを指示する外部装置を設けてもよい。
【００６５】
さらに、HAクラスタシステムでは、たとえば一のサーバ群の一のサーバが故障すると、一のHAクラスタにおいて稼動系サーバと待機系サーバとを切り替えるので、一のサーバ群が稼動系サーバのみを有することになるかもしれないが、上記の実施例のように一のHAクラスタの構成要素を他のサーバ群に移行すれば、一のHAクラスタの待機系サーバを他のサーバ群で運用することにより、本システムの可用性の低下を防止することができる。
【符号の説明】
【００６６】
10  HAクラスタシステム
12、14  サーバ群
22、24、26、28  サーバ
30、32  共有ディスク
42、52、62、72  ハードウエア
44、54、64、74  仮想化システム
46、48、56、58、66、68、76、78  ゲストOS
50、60、70、80  HAクラスタウエア
82、84  HAクラスタ
90  HAクラスタ構成管理システム
【図１】
2010237989.tif 000003
【図２】
2010237989.tif 000004
【図３】
2010237989.tif 000005
【図４】
2010237989.tif 000006