(57)【要約】    【課題】  運用系計算機装置と待機系計算機装置から成るクラスタシステムにおいて、クラスタ切り替えによるサービス停止による影響を最小限に抑えることを可能とする。    【解決手段】  運用系計算機１１０と待機系計算機１２０からなるクラスタシステム１００の運用系計算機におけるハードウェア又はソフトウェアの障害又はその障害の可能性を検出する障害監視装置１０と、システムの利用率を測定するサービス測定装置６０と、検出された障害又は障害の可能性の内容と、当該システムの利用率とを考慮して前記待機系計算機への切り替えタイミングを決定するクラスタ切り替え判断装置３０と、決定した切り替えタイミングで待機系計算機への切り替えを実行するクラスタ切り替え実行装置５０を備える。【選択図】    図２
2006277690.tif 000002
【特許請求の範囲】
【請求項１】
運用系計算機と待機系計算機からなるクラスタシステムであって、
前記運用系計算機におけるハードウェア又はソフトウェアの障害又はその障害の可能性を検出する機能と、
検出された前記障害又は障害の可能性の内容と、当該システムの利用率とを考慮して前記待機系計算機への切り替えタイミングを決定する機能と、
決定した前記切り替えタイミングで前記待機系計算機への切り替えを実行する機能とを備えることを特徴とするクラスタシステム。
【請求項２】
前記運用系計算機におけるハードウェア及びソフトウェアの障害又はその障害の可能性を監視して検出する障害監視装置と、
前記システムの利用率を測定するサービス測定装置と、
検出された前記障害又は障害の可能性の内容と、当該システムの利用率とを考慮して前記待機系計算機への切り替えタイミングを決定するクラスタ切り替え判断装置と、
クラスタ切り替えを行うクラスタ切り替え実行装置とを備えることを特徴とする請求項１に記載のクラスタシステム。
【請求項３】
サービス利用率が低いタイミングでクラスタ切り替えを行うことを特徴とする請求項１又は請求項２に記載のクラスタシステム。
【請求項４】
前記障害の可能性を示す状態を予め定義した監視ファイルを備え、
前記監視ファイルに定義された状態の有無によって前記障害の可能性を検出することを特徴とする請求項１から請求項３の何れか１項に記載のクラスタシステム。
【請求項５】
前記障害の可能性を示す状態が、前記運用系計算機のオペレーティングシステムやアプリケーションから出力されるメッセージであることを特徴とする請求項４に記載のクラスタシステム。
【請求項６】
検出された前記障害又は障害の可能性毎に、前記サービス利用率に基づく切り替えを実行するタイミングを設定した切り替えポリシー定義ファイルを備え、
検出された前記障害又は障害の可能性について、測定された前記サービスの利用率が前記切り替えポリシー定義ファイルの切り替えのタイミングとしてのサービス利用率と一致した場合に、前記クラスタ切り替えを行うことを特徴とする請求項２から請求項５に記載のクラスタシステム。
【請求項７】
運用系計算機と待機系計算機からなるクラスタシステムのクラスタ切り替え方法であって、
前記運用系計算機におけるハードウェア又はソフトウェアの障害又はその障害の可能性を検出するステップと、
検出された前記障害又は障害の可能性の内容と、当該システムの利用率とを考慮して前記待機系計算機への切り替えタイミングを決定するステップと、
決定した前記切り替えタイミングで前記待機系計算機への切り替えを実行するステップとを有することを特徴とするクラスタシステムのクラスタ切り替え方法。
【請求項８】
前記システムの利用率を測定するサービス測定ステップを有することを特徴とする請求項７に記載のクラスタシステムのクラスタ切り替え方法。
【請求項９】
サービス利用率が低いタイミングでクラスタ切り替えを行うことを特徴とする請求項７又は請求項８に記載のクラスタシステムのクラスタ切り替え方法。
【請求項１０】
前記障害の可能性を示す状態を予め定義した監視ファイルを備え、
前記監視ファイルに定義された状態の有無によって前記障害の可能性を検出することを特徴とする請求項７から請求項９の何れか１項に記載のクラスタシステムのクラスタ切り替え方法。
【請求項１１】
前記障害の可能性を示す状態が、前記運用系計算機のオペレーティングシステムやアプリケーションから出力されるメッセージであることを特徴とする請求項１０に記載のクラスタシステムのクラスタ切り替え方法。
【請求項１２】
検出された前記障害又は障害の可能性毎に、前記サービス利用率に基づく切り替えを実行するタイミングを設定した切り替えポリシー定義ファイルを備え、
検出された前記障害又は障害の可能性について、測定された前記サービスの利用率が前記切り替えポリシー定義ファイルの切り替えのタイミングとしてのサービス利用率と一致した場合に、前記クラスタ切り替えを行うことを特徴とする請求項８から請求項１１に記載のクラスタシステムのクラスタ切り替え方法。
【請求項１３】
運用系計算機と待機系計算機からなるクラスタシステム上で、前記運用系計算機から前記待機系計算機への切り替えを実行するクラスタ切り替えプログラムであって、
前記運用系計算機に、
前記運用系計算機におけるハードウェア又はソフトウェアの障害又はその障害の可能性を検出する処理と、
検出された前記障害又は障害の可能性の内容と、当該システムの利用率とを考慮して前記待機系計算機への切り替えタイミングを決定する処理と、
決定した前記切り替えタイミングで前記待機系計算機への切り替えを実行する処理を行わせることを特徴とするクラスタシステムのクラスタ切り替えプログラム。
【請求項１４】
前記システムの利用率を測定するサービス測定処理を実行させることを特徴とする請求項１３に記載のクラスタシステムのクラスタ切り替えプログラム。
【請求項１５】
サービス利用率が低いタイミングでクラスタ切り替えを行うことを特徴とする請求項１３又は請求項１４に記載のクラスタシステムのクラスタ切り替えプログラム。
【請求項１６】
前記障害の可能性を示す状態を予め定義した監視ファイルを備え、
前記監視ファイルに定義された状態の有無によって前記障害の可能性を検出することを特徴とする請求項１３から請求項１５の何れか１項に記載のクラスタシステムのクラスタ切り替えプログラム。
【請求項１７】
前記障害の可能性を示す状態が、前記運用系計算機のオペレーティングシステムやアプリケーションから出力されるメッセージであることを特徴とする請求項１６に記載のクラスタシステムのクラスタ切り替えプログラム。
【請求項１８】
検出された前記障害又は障害の可能性毎に、前記サービス利用率に基づく切り替えを実行するタイミングを設定した切り替えポリシー定義ファイルを備え、
検出された前記障害又は障害の可能性について、測定された前記サービスの利用率が前記切り替えポリシー定義ファイルの切り替えのタイミングとしてのサービス利用率と一致した場合に、前記クラスタ切り替えを行うことを特徴とする請求項１４から請求項１７に記載のクラスタシステムのクラスタ切り替えプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、運用系計算機装置と待機系計算機装置からなるクラスタシステムに関し、特に、サービス停止への影響を最小限に抑えることを可能にする障害発生による切り替えを実現するクラスタシステム、クラスタ切り替え方法、クラスタ切り替え制御プログラムに関する。
【背景技術】
【０００２】
従来の運用系計算機装置と待機系計算機装置からなるクラスタシステムでは、運用系計算機装置上で動作しているハードウェアやアプリケーションなどにおける障害の発生を常時監視しており、実際に障害が発生した場合（障害の発生を検出した後）に、運用系計算機から待機系計算機装置への切り替え処理を行なうことにより、切り替えた待機系計算機によってシステムサービスの提供を継続できるように構成されている。これにより、障害の発生によって可能な限りサービス提供が途切れることがないようにしている。
【０００３】
このようなクラスタシステムの従来例が、例えば、特開２００１−２９０６７０号公報（特許文献）に開示されている。この特許文献１では、現用計算機装置で障害が発生した場合に、自動的に現用計算機装置を停止させて予備計算機装置側に切り替え、以後予備計算機装置にて現用計算機装置の処理を継続して行う技術が開示されている。
【特許文献１】特開２００１−２９０６７０号公報
【特許文献２】特開２００１−９２８０００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述のように、従来のクラスタシステムにおいては、現実に障害の発生を検出した時点で無条件に待機系計算機へのクラスタ切り替えを実行し、当該待機系計算機によって運用系計算機の処理を継続する、いわゆる、障害発生後のクラスタ切り替えが一般的になされていた。
【０００５】
しかしながら、現実に障害の発生を検出した時点でクラスタ切り替えを行う方式にあっては、待機系計算機への切り替え作業が完了するまでの間サービスの提供が停止してしまうという問題点があった。
【０００６】
特に、従来のクラスタ切り替えでは、サービスの利用状況と無関係に障害の検出によって一律に切り替えを実行するため、サービスの利用率（サービス需要）が高い時間帯でクラスタ切り替えが発生した場合、短時間のサービス停止でもサービス提供に大きな影響を与えてしまうことになる。
【０００７】
なお、特開２００１−９２８００号公報（特許文献２）には、マシン（計算機）の高負荷に原因となる障害発生時のシステム切り替えにおいて、マシンの高負荷を予測した場合に、無条件にシステム切り替えることなく、一定時間延期させた上でシステム切り替えを行うように制御することで、システムの稼働率を向上させる技術が開示されている。
【０００８】
しかし、特許文献２の技術は、マシンの高負荷という特定の障害時にシステム切り替えを延期することにより、システムへの影響を少なくするための技術であり、従来のクラスタ切り替えが無条件になされることでサービス提供が停止するといった問題を解決することはできない。
【０００９】
本発明の目的は、上述したような従来の技術が有する問題を鑑みてなされたものであって、運用系計算機装置と待機系計算機装置から成るクラスタシステムにおいて、クラスタ切り替えによるサービス停止による影響を最小限に抑えることを可能とするクラスタシステム、クラスタ切り替え方法、クラスタ切り替え制御プログラムを提案することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成する本発明は、運用系計算機と待機系計算機からなるクラスタシステムであって、前記運用系計算機におけるハードウェア又はソフトウェアの障害又はその障害の可能性を検出する機能と、検出された前記障害又は障害の可能性の内容と、当該システムの利用率とを考慮して前記待機系計算機への切り替えタイミングを決定する機能と、決定した前記切り替えタイミングで前記待機系計算機への切り替えを実行する機能とを備えることを特徴とする。
【００１１】
（作  用）
クラスタシステムの運用系計算機において検出されたハードウェア又はソフトウェアの障害又はその障害の可能性が、直ちに切り替えを必要としない障害及び障害の可能性である場合、当該システムの利用率を考慮して待機系計算機への切り替えタイミングを決定し、決定した切り替えタイミングで切り替えが実行される。
【発明の効果】
【００１２】
本発明のクラスタシステム、クラスタ切り替え方法、クラスタ切り替え制御プログラムによれば、障害発生の可能性を監視し、サービス利用率の低いタイミングでクラスタ切り替えを行うようにすることより、サービス停止による影響を最小限に抑えることが可能となる。
【発明を実施するための最良の形態】
【００１３】
次に、本発明の実施例を図面を用いて詳細に説明する。
【００１４】
（構成の説明）
図１は、本発明が適用されるクラスタシステムの全体構成を示すブロック図である。
【００１５】
本実施の形態によるクラスタシステム１００は、現時点で稼働している運用系計算機１１０と、運用系計算機１１０における障害の発生時に運用系計算機１１０から切り替えられる待機系計算機１２０とからなり、これら運用系計算機１１０と待機系計算機１２０は、インターネット等のネットワーク２００を介して当該クラスタシステムが提供するサービスを利用する端末３００と接続されている。
【００１６】
このようなクラスタシステムにおいて、運用計算機１１０にサービスの提供を妨げるような障害が発生した場合でも、システムの運転を待機系計算機１２０に切り替えることにより、途切れることなくサービスの提供を継続することが可能となる。
【００１７】
これら運用系計算機１１０と待機系計算機１２０は共に、ＣＰＵ、主記憶装置やＨＤＤ等の補助記憶装置及びその他のハードウェアを備える一般的なコンピュータ装置によって実現される。
【００１８】
本実施の形態によるクラスタシステムの運用系計算機１１０の特徴的な構成を図２に示す。なお、待機系計算機１２０の構成は、運用系計算機１１０と共通であるのでここでは運用系計算機１１０について説明する。
【００１９】
図２を参照すると、運用系計算機１１０は、障害の発生及び障害発生の可能性を監視して検出する障害監視装置１０と、障害監視装置１０で監視する所定のメッセージを定義する監視メッセージ定義ファイル２０と、クラスタ切り替え（運用計算機１００から待機系計算機２００への切り替え）の要不要を判断し、そのクラスタ切り替えのタイミングを決定するクラスタ切り替え判断装置３０と、クラスタ切り替えのための条件を定義した切り替えポリシー定義ファイル４０と、クラスタ切り替えを実行するクラスタ切り替え実行装置５０と、当該クラスタシステムで提供しているサービスの利用率の測定を行うサービス需要管理装置６０を備えている。
【００２０】
なお、図２においては、本発明の特徴的な構成要素のみを示したが、運用系計算機１００には上記の構成要素以外に、コンピュータ装置として一般的に備えられるハードウェア及びソフトウェアが設けられていることは言うまでもない。
【００２１】
障害監視装置１０、クラスタ切り替え判断装置３０、クラスタ切り替え実行装置５０、サービス需要管理装置６０の各機能は、運用系計算機１１０のＣＰＵでクラスタ切り替え制御プログラム５００を実行することにより、ソフトウェア的に実現することも可能である。
【００２２】
障害監視装置１０は、プロセス監視、応答監視、メッセージ監視等の方法を利用して障害の発生及び障害の可能性を監視する。
【００２３】
ここで、プロセス監視では、監視対象となっているプロセスの状態を監視し、その障害を検出する。応答監視では、対象となる所定のハードウェアやアプリケーション（プログラム）へのアクセスを行い、当該ハードウェアやアプリケーションからの応答の有無によって、ハードウェアやアプリケーションのハング状態やストール状態を検出する。
【００２４】
また、メッセージ監視とは、計算機のオペレーティングシステムやアプリケーション（プログラム）から出力される不具合やエラー等を通知する警告メッセージやエラーメッセージを監視する。このメッセージ監視においては、監視メッセージ定義ファイル２０に予め定義されたメッセージを検出する。
【００２５】
監視メッセージ定義ファイル２０は、計算機のオペレーティングシステムやアプリケーションが出力するメッセージうちで、監視すべきメッセージを指定するファイルであり、上記障害監視装置１０のメッセージ監視で利用される。
【００２６】
この監視メッセージ定義ファイル２０に定義されるメッセージとしては、クラスタ切り替えを必要とする障害発生の原因となる可能性の高いメッセージが定義されており、このようなメッセージの発生を検出することで、障害発生の可能性を予想するものである。図４に、監視メッセージ定義ファイル２０の内容例を示す。
【００２７】
例えば、メモリの修復可能エラーのメッセージやＩ／Ｏリトライのメッセージなどが出力された場合、メッセージで示される所定のハードウェアで将来的に障害が発生する可能性があるため、実際の障害が発生する前にそれらのメッセージを障害発生の可能性として検出するものである。
【００２８】
切り替えポリシー定義ファイル４０は、障害監視装置１０より報告される検出内容に基づいて、クラスタ切り替えを実行するための所定の条件とそのタイミングを定義するためのファイルである。
【００２９】
この切り替えポリシー定義ファイル４０は、障害監視装置１０より報告される検出内容のうち、直ちにクラスタ切り替えを必要としない障害発生の可能性を示す検出内容について、クラスタ切り替えを実行するための条件とそのタイミングが予め設定されている。
【００３０】
図５に、切り替えポリシー定義ファイル４０の内容例を示す。図５においては、検出内容は、障害監視装置１０より報告される検出内容であって、監視メッセージ定義ファイル２０に定義されるメッセージやその他の障害の可能性を示す検出内容が定義されている。
【００３１】
また、クラスタ切り替え条件には、検出内容の欄に示された検出内容が報告された場合に、その検出内容によってクラスタ切替を行うための条件が設定される。この切り替え条件としては、図示のように、検出内容がメモリ修復可能エラーメッセージの場合であれば、その回数（３回発生）を条件として設定することができる。また、検出内容が応答監視による応答無しの場合であれば、その状態の経過時間を条件として設定することができる。
【００３２】
切り替えタイミングには、切り替え条件が満たされた場合に、クラスタ切替をどのようなタイミングで行うかが設定されている。本実施の形態では、測定を行うサービス需要管理装置６０で測定される当該クラスタシステムで提供しているサービスの利用率に基づいた切り替えタイミングが設定されている。
【００３３】
（動作の説明）
次に、上記のように構成される本実施の形態による動作について、図２の構成図及び図３のフローチャートを参照して説明する。
【００３４】
クラスタシステム１００の運用系計算機１１０の障害監視装置１０では、プロセス監視、メッセージ監視、応答監視によって障害及び障害発生の可能性の監視が行われる（ステップ３０１）。
【００３５】
メッセージ監視では、上述した監視メッセージ定義ファイル２０で定義されたメッセージの出力が監視される。
【００３６】
この監視においては、直ぐにクラスタ切り替えを要する障害やそのような障害発生の原因となる可能性のある障害やメッセージの検出されたかどうかが判定される（ステップ３０２）。
【００３７】
障害又はメッセージが検出された場合、クラスタ切り替え判断装置３０で、その検出内容が上記切り替えポリシー定義ファイル４０に定義された検出内容であるかを判定する（ステップ３０３）。
【００３８】
切り替えポリシー定義ファイル４０に定義された検出内容でない場合には、クラスタ切り替えを要する障害やそのような障害発生の原因となる可能性のある障害やメッセージではなく、直ちにクラスタ切り替えを要する障害であるため、クラスタ切り替え判断装置３０は、クラスタ切り替え実行装置５０に対してクラスタ切替の実行を指示し（ステップ３０４）、これによりクラスタ切り替えが実行される（ステップ３０７）。
【００３９】
切り替えポリシー定義ファイル４０に定義された検出内容である場合、さらにその検出内容に対応して定義されている切り替え条件を満たすかどうかを判定する（ステップ３０５）。
【００４０】
切り替え条件を満たさない場合には、障害監視処理（ステップ３０１）へ戻る。
【００４１】
切り替え条件を満たす場合には、サービス需要管理装置６０から報告されるサービル利用率の測定結果に基づいて、切り替えポリシー定義ファイル４０に定義された切り替えタイミングでクラスタ切り替え実行装置５０に対してクラスタ切替の実行を指示する（ステップ３０６）。クラスタ切り替え装置５０は、この切り替え指示に基づいて待機系計算機１２０へのクラスタ切り替えを実行する（ステップ３０７）。
【００４２】
（実施の形態による効果）
システムおけるサービス需要(サービスの利用率)は、常に一定ではなく時間帯によって変化し、サービス利用率の高い時間帯と比較的サービス需要が低い時間帯が存在する。
【００４３】
本実施の形態では、直ちに切り替えを必要としない障害及び障害の可能性を検出した場合に、無条件にクラスタ切り替えを実行するのではなく、クラスタシステム１００のサービス利用率が低いタイミングでクラスタ切り替えを実行するようにすることで、サービス停止による影響を最小限に抑えることができるようになる。
【００４４】
上記各実施の形態のクラスタシステムにおける、計算機の各機能については、ハードウェアによることは勿論として、それらの各機能を有するクラスタ切り替え制御プログラム５００を、各計算機を構成するコンピュータ装置上で実行することで実現することが可能である。
【００４５】
このクラスタ切り替え制御プログラム５００は、磁気ディスク、半導体メモリその他の記録媒体に格納され、その記録媒体から運用系計算機１１０であるコンピュータ装置にロードされ、コンピュータ装置の動作を制御することにより、上述した各機能を実現する。
【００４６】
以上好ましい複数の実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【図面の簡単な説明】
【００４７】
【図１】本発明の好適な実施の形態によるクラスタシステムの全体構成を示すブロック図である。
【図２】本実施の形態によるクラスタシステムを構成する運用系計算機の構成を示すブロックである。
【図３】本実施の形態によるクラスタシステムにおける障害発生によるクラスタ切り替え処理の内容を説明するフローチャートである。
【図４】本実施の形態によるクラスタシステムにおける監視メッセージ定義ファイルの内容例を示す図である。
【図５】本実施の形態によるクラスタシステムにおける切り替えポリシー定義ファイルの内容例を示す図である。
【符号の説明】
【００４８】
１０：障害監視装置
２０：監視メッセージ定義ファイル
３０：クラスタ切り替え判断装置
４０：切り替えポリシー定義ファイル
５０：クラスタ切り替え実行装置
６０：サービス需要管理装置
１００：クラスタシステム
１１０：運用系計算機
１２０：待機系計算機
２００：ネットワーク
３００：端末
５００：クラスタ切り替え制御プログラム５００
【図１】
2006277690.tif 000003
【図２】
2006277690.tif 000004
【図３】
2006277690.tif 000005
【図４】
2006277690.tif 000006
【図５】
2006277690.tif 000007