(57)【要約】【課題】  業務の重要度に応じた個別具体的な障害の対処手順を適用する支援を行うことを目的とする。【解決手段】  管理サーバ１００は、業務サーバ１１４からイベントを受信した場合、そのイベントの属性に基づいて、メモリ１０の業務監視条件の変数を満たす業務を特定する。また、管理サーバ１００は、前記特定した業務について、前記受信したイベントに応じたシナリオを前記メモリ１０から読み出し、前記読み出したシナリオの一覧をネットワークを介してクライアント１１１に出力する。【選択図】      図１
2006344061.tif 000002
【特許請求の範囲】
【請求項１】
各種の業務を実行する複数の業務サーバとこれらの業務サーバからイベントの通知を受ける管理サーバとを含んで構成されるコンピュータシステムを用いて、前記イベントにより通知された障害に対処する対処手順を表すシナリオの適用を支援するシナリオ適用支援方法であって、
前記管理サーバは、情報の記憶部と処理部とを含み、
前記記憶部は、前記業務毎に、前記イベントの通知により運用に支障を受ける可能性のある当該イベントの属性を変数にもつ業務監視条件を格納するとともに、前記業務に関し、前記イベントに応じた前記シナリオを格納し、
前記管理サーバの処理部は、
前記業務サーバから前記イベントを受信した場合、そのイベントの属性に基づいて、前記記憶部の業務監視条件の変数を満たす業務を特定し、
前記特定した業務に関し、前記受信したイベントに応じたシナリオを前記記憶部から読み出し、
前記読み出したシナリオの一覧を外部出力するステップを実行することを特徴とするシナリオ適用支援方法。
【請求項２】
前記管理サーバの処理部は、
前記外部出力したシナリオの一覧の中から選択された特定のシナリオを受信し、
受信した特定のシナリオを実行させるための対処コマンド列を生成し、
生成した対処コマンド列の実行を前記業務サーバに指示するステップをさらに実行するとともに、
前記業務サーバは、
前記対処コマンド列を実行するステップをさらに実行することを特徴とする請求項１に記載のシナリオ適用支援方法。
【請求項３】
前記イベントの属性には、当該イベントの事象、その事象に関する障害の緊急度、および当該イベントの受信元である前記業務サーバの識別情報が含まれていることを特徴とする請求項１に記載のシナリオ適用支援方法。
【請求項４】
各種の業務を実行する複数の業務サーバからイベントの通知を受ける管理サーバであって、
前記管理サーバは、情報の記憶部と処理部とを含み、
前記記憶部は、前記業務毎に、前記イベントの通知により運用に支障を受ける可能性のある当該イベントの属性を変数にもつ業務監視条件を格納するとともに、前記業務に関し、前記イベントに応じたシナリオを格納し、
前記処理部は、
前記業務サーバから前記イベントを受信した場合、そのイベントの属性に基づいて、前記記憶部の業務監視条件の変数を満たす業務を特定し、
前記特定した業務に関し、前記受信したイベントに応じたシナリオを前記記憶部から読み出し、
前記読み出したシナリオの一覧を外部出力することを特徴とする管理サーバ。
【請求項５】
各種の業務を実行する複数の業務サーバからイベントの通知を受けるコンピュータに用いられ、
前記コンピュータは、情報の記憶部と処理部とを含み、
前記記憶部は、前記業務毎に、前記イベントの通知により運用に支障を受ける可能性のある当該イベントの属性を変数にもつ業務監視条件を格納するとともに、前記業務に関し、前記イベントに応じたシナリオを格納し、
前記処理部に、
前記業務サーバから前記イベントを受信した場合、そのイベントの属性に基づいて、前記記憶部の業務監視条件の変数を満たす業務を特定し、前記特定した業務に関し、前記受信したイベントに応じたシナリオを前記記憶部から読み出し、前記読み出したシナリオの一覧を外部出力させることを特徴とする管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、業務障害に対処するシナリオを適用する支援を行う技術に関するものである。
【背景技術】
【０００２】
近年、複数の異なるプラットフォームを持つ計算機上で稼動する業務をスケジューリングして一元管理するシステムが開発されている。このシステムのサーバでは、計算機のハード障害等をあらわす障害情報をイベントとしてテーブルに集約する。集約されたイベントの内容は、ユーザによって、クライアント上のＧＵＩ（Graphical User Interface）を通じて確認され、計算機上で業務が正常に処理されているかどうか等の判断が行われる。そして、その判断により前記障害を検知した場合の対処が行われることになる。しかし、このような方法により対処を行うとしても、システムには、さまざまな種類のハードウェアやソフトウェアが搭載されていることが多いため、ユーザは、それらの対処法に関する高度なノウハウも知っておく必要がある。
このような状況下、従来、システム上のハードウェア・ソフトウェアの診断状況や障害の対処履歴を蓄積しておくことにより、蓄積した対処履歴の確信度等に基づき、その状況の近い過去の対処手順を適用する方法が開示されている（たとえば、特許文献１参照）。
【特許文献１】特開平８−３１４７５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、一般には業務といっても様々な業務があるため、それぞれの業務の重要性も多様である。そのため、障害が生じた場合、その障害により影響を受ける業務の重要度を考慮した個別具体的な障害の対処手順を適用することが望ましい。個別具体的とは、業務をそれぞれ別々に取り扱いかつ個々の障害の事実に着目することを意味する。
この点、特許文献１に開示された方法では、障害の種類に応じた一連の対処手順のみが定義されているのみで、業務の重要度を考慮した個別具体的な障害の対処手順を適用するように構成されていない。
そこで、本発明は、前記課題を解決するためになされたものであり、業務の重要度に応じた個別具体的な障害の対処手順を適用する支援を行うことを目的とする。
【課題を解決するための手段】
【０００４】
前記課題を解決するため、本発明では、各種の業務を実行する複数の業務サーバとこれらの業務サーバからイベントの通知を受ける管理サーバとを含んで構成されるコンピュータシステムを用いて、前記イベントにより通知された障害に対処する一連の対処手順を表すシナリオの適用を支援するシナリオ適用支援方法であって、前記管理サーバは、情報の記憶部と処理部とを含み、前記記憶部は、前記業務毎に、前記イベントの通知により運用に支障を受けるおそれのある当該イベントの属性を変数にもつ業務監視条件を格納するとともに、前記業務に関し、前記イベントに応じた前記シナリオを格納する。前記管理サーバの処理部は、前記業務サーバから前記イベントを受信した場合、そのイベントの属性に基づいて、前記記憶部の業務監視条件の変数を満たす業務を特定し、前記特定した業務に関し、前記受信したイベントに応じたシナリオを前記記憶部から読み出し、前記読み出したシナリオの一覧を外部出力するステップを実行する。
【発明の効果】
【０００５】
本発明によれば、業務の重要度に応じた個別具体的な障害の対処手順を適用する支援を行うことができる。
【発明を実施するための最良の形態】
【０００６】
図１は実施の形態におけるシナリオ適用支援システムの構成例を示す図である。シナリオ適用支援システムは、管理サーバ１００と、クライアント１１１と、複数の業務サーバ１１４とを含んで構成され、これらはインターネット等のネットワークを介して相互に接続されている。図１では、２台の業務サーバ１１４が示されているが、３台以上の業務１１４をネットワークに接続するように構成してもよい。
【０００７】
（管理サーバの構成）
管理サーバ１００は、各業務サーバ１１４における運用状況を収集して管理する計算機であり、メモリ（記憶部）１０とＣＰＵ（処理部）１１とを含んで構成されている。
メモリ１０は、たとえば、後記する複数のテーブル１０１、１０２、１０３、１０８、１０９、１１０、１１８、１１９、１２１を登録している。
また、メモリ１０は、イベント受信部１０４と、ガイド生成部１０５と、シナリオ制御部１０６と、業務監視部１０７と、業務制御部１２０とを有する。これら各部１０４、１０５、１０６、１０７、１２０は各種プログラム（ソフトウェア）を指し、各種プログラム（管理プログラムともいう）はＣＰＵ１１によって実行される。
【０００８】
次に、各テーブルについて説明する（適宜図１参照）。
イベントテーブル１０１は、図５に示すように、通し番号５００、イベントＩＤ５０１、通知事象５０２、緊急度５０３、受信時刻５０４およびサーバ名５０５を関連付けている。
通し番号５００は、管理サーバ１００で一意に決められるイベントの通し番号であり、イベントＩＤ５０１は、イベントを一意に識別するためのＩＤである。なお、本実施の形態におけるイベントは、業務サーバ１１４のハードウェアあるいはソフトウェア自身の状態の変化を示す通知を意味し、この通知には、イベントＩＤ５０１のほか、通知事象５０２、緊急度５０３およびサーバ名５０５を表す変数（パラメータ）が含まれている。なお、通し番号５００、イベントＩＤ５０１、通知事象５０２、緊急度５０３およびサーバ名５０５を総称してイベントの属性ともいう。
【０００９】
通知事象５０２は、イベントの通知内容を表す。具体的には、業務サーバ１１４のハードウェアあるいはソフトウェアの状態を表す事象（障害）である。図５では、たとえば、ＣＰＵ利用率が危険域に達したとか、日次業務が正常に終了したことを表す内容の事象が示されている。
緊急度５０３は、イベントにより通知された障害のレベル（程度）を定量的にあらわしたものであり、たとえば、警戒以上（高レベル）、警告以上（中レベル）およびエラー以上（低レベル）の３つのレベルがある。このレベル数は、２つあるいは４つ以上にしてもよい。なお、緊急度５０３の値は、一般的には、製品たる業務サーバ１１４の仕様等で決まることになる。
受信時刻５０４は、イベントの受信時刻を表す。サーバ名５０５は、イベント発行元のサーバ名（業務サーバＡ等）を表す。つまり、業務サーバ１１４の識別情報である。
【００１０】
業務テーブル１０３は、業務の運用状況を管理するものであり、図６に示すように、業務ＩＤ６００、業務名６０１、スケジュール６０２、業務６０３および実行サーバ名６０４を関連付けている。この関連付けは、シナリオ適用支援システムで用いられる業務の内容等をもとにして行われる。
業務ＩＤ６００は、業務を識別するためのＩＤを表し、業務名６０１は、当該業務の名称を表す。たとえば、日次業務や月次業務等がある。
スケジュール６０２は、業務の実行スケジュールを表す。たとえば、毎日２３時に実行することを表す「毎日２３：００実行」等がある。
業務６０３は、業務内容を表す。図６では、たとえば、業務データ収集、業務データ集計等の内容が業務６０３に設定されている。
実行サーバ名６０４は、業務を実行するサーバのサーバ名（業務サーバＡ等）を表す。
【００１１】
シナリオテーブル１０９は、図７に示すように、シナリオＩＤ７００、シナリオ名称７０１および正規化コマンドリスト７０２を関連付けている。
シナリオＩＤ７００は、シナリオを識別するためのＩＤを表し、シナリオ名称７０１は、スケールアウト等のシナリオの名称を表す。シナリオというのは、イベントで通知された障害（事象）に対する一連の対処手順を意味する。
正規化コマンドリスト７０２は、一連の対処手順を定義したもので、変数を含むコマンド（割り当て等）などのコマンド列（個々のコマンドを正規化コマンドともいう）により構成されている。変数としては、イベントの属性（通し番号、イベントＩＤ、通知事象、緊急度、サーバ名）や、業務テーブル１０３（図６参照）の業務情報（業務ＩＤ、業務名、スケジュール、業務、実行サーバ名）がある。
このようにすると、新規サーバ名等の値を変数に代入することにより、イベントとして通知された障害により影響を受ける業務サーバ１１４上の業務に対して、その障害に対処するための一連の対処手順を適用することが可能となる。つまり、汎用性のある一連の対処手順を正規化コマンドリストを用いて提供することが可能となる。
【００１２】
たとえば図７に示した「スケールアウト」のシナリオ名称７０１の場合、「新規サーバ名」と「業務名」とを変数に持つコマンドが正規化コマンドリスト７０２に定義付けられているので、それぞれの変数に値を代入することにより、スケールアウトという一連の対処手順を適用することが可能となる。
また図７では、「スケールアウト」のほかにも、「スケールイン」や「データベースのバックアップ」、「データベースのリストア」、「セキュリティパッチの配布」といったシナリオ名称７０１に関する正規化コマンドリスト７０２が定義付けられているので、それらの種類についての一連の対処手順を適用することも可能となる。
【００１３】
なお、正規化コマンドリスト７０２中の変数に値が指定されて代入されると、それが対処コマンド列として対処コマンドリスト１２１（図１参照）に登録される。
【００１４】
業務・シナリオ関連テーブル１０２は、図８に示すように、業務ＩＤ８００、シナリオＩＤ８０１および緊急度の条件８０２を関連付けている。
業務ＩＤ８００は、業務テーブル１０３（図６参照）の業務ＩＤ６００と同様の内容であり、シナリオＩＤ８０１は、シナリオテーブル１０９（図７参照）のシナリオＩＤ７００と同様の内容である。
緊急度の条件８０２は、イベントの変数である緊急度５０３がどの値になったときに、当該業務に対する一連の対処手順（シナリオ）を適用するかを示す条件である。たとえば、エラー以上が緊急度の条件８０２に指定されている場合、エラー以上の値を持つ緊急度５０３のイベントが通知されたときに、当該業務に対する一連の対処手順が適用されることになる。
このようにすると、業務の重要性に応じて、緊急度の条件８０２の値を変更することが可能になるので、イベントの緊急度５０３の値（レベル）によっては、シナリオを適用しないように設定することが可能となる。たとえば、重要度の高い業務に関しては、緊急性が低い値（エラー以上）を持つイベントが通知されたとしても、緊急性が高い値（警戒以上）を持つイベントが通知されなければ、その通知されたイベントの障害に対するシナリオを適用させないように設定することが可能となる。
また逆に、重要度の低い業務に関しては、緊急性が高い値（警戒以上）を持つイベントが通知された場合にのみ、スケールアウト等のシナリオを適用させるように設定することも可能となる。
【００１５】
業務監視テーブル１０８は、図９に示すように、業務ＩＤ９００、業務監視名９０１および業務監視条件９０２を関連付けている。業務ＩＤ９００は、業務テーブル１０３（図６参照）の業務ＩＤ６００と同様の内容である。
業務監視名９０１は、業務の監視名を表す。たとえば、業務サーバＡを監視することを表す「業務サーバＡ監視」等がある。
業務監視条件９０２は、業務の監視条件を表し、イベントの属性（図５の通し番号、イベントＩＤ、通知事象、緊急度、サーバ名）の一部あるいは全部が業務監視条件の変数に用いられる。つまり、イベントのどの属性に着目して業務の監視を行うのかが定義されている。
図９では、業務監視名９０１が「業務サーバＡ監視」の場合が例示されているが、この場合であれば、イベントＩＤ（１０００の値）とサーバ名（業務サーバＡ）の２つの属性に着目して業務を監視することが定義されていることになる。
【００１６】
なお、業務監視条件９０２内の変数は、業務実行中の業務サーバ１１４から通知されたイベントをもとに、決定するようにしてもよいし、あるいは、システム管理者が業務サーバ１１４の仕様や業務内容等をもとに、あらかじめ決定しておくようにしてもよい。
たとえば、イベントの通知事象として、発行元の業務サーバ１１４の異常（ＣＰＵ温度異常等）が示されている場合、そのイベント発行時に稼働していた業務とその異常内容との関係を関連付けて、それらの値を業務監視条件９０２の変数に用いるようにしてもよい。
【００１７】
ガイドテーブル１１０は、図１０に示すように、イベントＩＤ１０００とガイダンス１００１とを関連付けている。イベントＩＤ１０００は、イベントテーブル１０１（図５参照）のイベントＩＤ５０１と同様の内容である。
ガイダンス１００１は、イベントにより通知された障害の内容とその対処法（対処手順を含む）とを表す。図１０では、たとえば、「ＣＰＵ利用率がしきい値を超えています。（中略）再スケジューリングして下さい。」等のテキストデータがガイダンスに登録されている。これにより、障害に対する対処法をたとえばシステム管理者等に提示することが可能となる。
なお、ガイダンス１００１の内容には、たとえば、イベントの発行元となる業務サーバ１１４（製品）から提供された内容を設定しているが、システム管理者がその内容を変更してもよい。
【００１８】
イベント・業務関連リスト１１８は、図１１に示すように、通し番号１１００と業務ＩＤ１１０１とを関連付けている。通し番号１１００は、イベントテーブル１０１（図５参照）の通し番号５００と同様の内容であり、業務ＩＤ１１０１は、業務テーブル１０３（図６参照）の業務ＩＤ６００と同様の内容である。これにより、対応するイベントと業務との関係を一意に対応付けることが可能となる。
【００１９】
イベント・シナリオ関連リスト１１９は、図１２に示すように、通し番号１２００とシナリオＩＤ１２０１とを関連付けている。通し番号１２００は、イベントテーブル１０１（図５参照）の通し番号５００と同様の内容であり、シナリオＩＤ１２０１は、シナリオテーブル１０９（図７参照）のシナリオＩＤ７００と同様の内容である。これにより、対応するイベントとシナリオとの関係を一意に対応付けることが可能となる。
【００２０】
次に、各種プログラム（図１参照）の機能について概説する。
イベント受信部１０４は、業務サーバ１１４（イベント発行部１１６）で発行されたイベントをネットワーク経由で受信してイベントテーブル１０１に格納する機能を持つ。
ガイド生成部１０５は、業務・シナリオ関連テーブル１０２と業務監視部１０７が特定したイベントが影響する業務の情報をもとにイベント・シナリオ関連リスト１１９を生成し、ガイドテーブル１１０から取得したイベントに対応するガイダンスの情報とともに、クライアント１１１のガイドＶｉｅｗ１１２に送信する機能を持つ。
【００２１】
シナリオ制御部１０６は、クライアント１１１のガイドＶｉｅｗ１１２により選択されたシナリオに関する定義をシナリオテーブル１０９から取得し、対処コマンドリストを生成する。また、シナリオ制御部１０６は、業務サーバ１１４のシナリオ実行部１１７に対処コマンドの実行を指示する機能を持つ。なお、対処コマンドリスト１２１の実行状況はシナリオＶｉｅｗ１１３に表示される。
業務監視部１０７は、業務監視テーブル１０８の定義をもとにイベントテーブル１０１内のイベントと業務監視テーブル１０８内の業務とを関連付け、イベント・業務関連リスト１１８に格納する。また、業務監視部１０７は、通知されたイベントの事象により影響を受ける業務を特定する機能を持つ。
業務制御部１２０は、業務テーブル１０３の内容をもとに、業務サーバ１１４の業務実行部１１５に業務の実行を指示する機能を持つ。
【００２２】
（業務サーバの構成）
次に、業務サーバ１１４の構成について説明する。
業務サーバ１１４は、データ収集等の各種業務を遂行するための計算機であり、たとえばメールサーバやウェブサーバ、データベースサーバ、プロキシサーバなどがある。なお、１台の業務サーバ１１４は、複数の種類の業務を遂行してもよい。
業務サーバ１１４は、図１に示すように、メモリ３０とＣＰＵ３１とを含んで構成されている。メモリ３０は、業務実行部１１５と、イベント発行部１１６と、シナリオ実行部１１７とを有する。これら各部１１５、１１６、１１７は、各種プログラムを指す。
【００２３】
業務実行部１１５は、業務を実行し、イベント発行部１１６は、障害等の事象を通知するイベントを発行する機能がある。障害としては、たとえば、ウェブサーバとしての業務サーバにアクセスが集中した場合や、業務サーバのハードウェアに障害（ＣＰＵの温度異常等）が生じた場合等がある。
シナリオ実行部１１７は、障害対処のシナリオ（対処コマンド列）を実行する。これらを用いることにより、業務実行部１１５で実行中の業務が失敗した場合等、業務サーバ１１４に何らかの障害が発生した場合、イベント発行部１１６は、その障害の内容を通知するイベントを管理サーバ１００に発行する。そして、この発行により、シナリオ実行部１１７は、障害に対するシナリオを実行してその障害を復旧することが可能となる。
【００２４】
（クライアントの構成）
次に、クライアント１１１の構成について説明する。
クライアント１１１は、ユーザが監視を行うための計算機（パーソナルコンピュータ等）であり、図１に示すように、メモリ２０とＣＰＵ２１とを含んで構成されている。
メモリ２０は、ガイドＶｉｅｗ１１２と、シナリオＶｉｅｗ１１３とを有する。これら１１２、１１３は、各種プログラムを指す。
【００２５】
ガイドＶｉｅｗ１１２は、管理サーバ１００が障害をイベントとして通知した場合にそのイベントに関するガイダンスとその障害に適用可能なシナリオの一覧を表示する機能を持つ。
ガイドＶｉｅｗ１１２の機能により、システム管理者は、シナリオを適切に選択することが可能となる。
シナリオＶｉｅｗ１１３は、シナリオの詳細と実行結果を表示する機能を持つ。
【００２６】
次に、このようなシナリオ適用支援システムを用いて、業務サーバ１１４に障害が発生した場合のその障害を対処するためのシナリオを実行するまでの処理を説明する（適宜図１参照）。
図２は、シナリオ適用支援システムにおけるシナリオの実行に関する全体の処理手順を示す図である。ここでは、ある業務サーバ１１４の業務実行部１１５が業務を実行しているときにその業務に障害が発生し、その業務サーバ１１４のイベント発行部１１６がその障害を示すイベントを管理サーバ１００に発行した場合を例に説明する。
ステップ２００では、管理サーバ１００のイベント受信部１０４（ＣＰＵ１１）が、業務サーバ１１４のイベント発行部１１６によって発行されたイベントをネットワークを介して受信する。受信したイベントには、イベントＩＤ、通知事象、緊急度および業務サーバ１１４のサーバ名の各値が変数として含まれている。
イベントの受信により、管理サーバ１００では、イベント受信部１０４が、そのイベントのイベントＩＤ５０１と通知事象５０２と緊急度５０３とサーバ名５０５との各値をイベントテーブル１０１（図５参照）に登録する。このとき、イベントテーブル１０１の通し番号５００には、イベント受信部１０４によって採番された値が登録される。また、受信時刻５０４には、イベント受信部１０４に受信されたイベントの受信時刻が登録される。これにより、以後、通し番号５００の値をキーとして、管理サーバ１００で受信したイベントの属性等（図５のイベントＩＤ、通知事象、緊急度、受信時刻、サーバ名）を一意に対応付けることが可能となる。
【００２７】
ステップ２０１では、管理サーバ１００の業務監視部１０７（ＣＰＵ１１）が、受信したイベントと、そのイベントにより運用に支障が生じるおそれのある業務との組をあらわすイベント・業務関連リスト１１８を作成する（詳細は後記図３）。
【００２８】
ステップ２０２では、管理サーバ１００のガイド生成部１０５（ＣＰＵ１１）が、ステップ２０１で作成したイベント・業務関連リスト１１８と、業務・シナリオ関連テーブル１０２とをもとに、イベント・シナリオ関連リスト１１９を作成する（詳細は後記図４）。
【００２９】
ステップ２０３では、管理サーバ１００のガイド生成部１０５（ＣＰＵ１１）が、ガイドテーブル１１０（図１０参照）から、対応するイベントＩＤ１０００の値に対応するガイダンス１００１を取得する。
【００３０】
ステップ２０４では、ガイド生成部１０５が、シナリオ一覧とイベントのガイダンスとを、ネットワークを介して、クライアント１１１に送信する。シナリオ一覧は、次のような処理により送信される。すなわち、ガイド生成部１０５は、ステップ２０２で作成されたイベント・シナリオ関連リスト１１９（図１２参照）のシナリオＩＤ１２０１の値に対応するシナリオ名称をシナリオテーブル１０９（図７参照）から読み出し、それらのシナリオ名称をシナリオ一覧として送信する。送信されたシナリオ一覧のシナリオ名称には、シナリオＩＤが対応付けられている。
また、イベントのガイダンスは、次のような処理により送信される。すなわち、ガイド生成部１０５は、対応するイベントＩＤに対応するガイダンスをガイドテーブル１１０（図１０参照）から読み出して送信する。
【００３１】
ステップ２０５では、当該送信を受け、クライアント１１１（ＣＰＵ２１）は、ガイドＶｉｅｗ１１２で、ガイダンスとシナリオ一覧とを表示する。この表示は、クライアント１１１のＣＰＵ２１によって、たとえば、クライアント１１１に接続されたコンピュータディスプレイ等の表示装置に行われる。
表示例を図１３に示す。この表示例では、「ＣＰＵ利用率がしきい値を超えています。該当サーバで稼動する業務が正常に終了しない危険性があります。」という内容のガイダンスが表示されている。また、「スケールイン、スケールアウト」という内容のシナリオ一覧が「適用可能シナリオ」の項目に表示されている。これにより、たとえば、システム管理者は、障害の程度とその対処法を確認することが可能となる。
【００３２】
そして、たとえば、システム管理者が、マウス等の入力装置を用いて、表示されたシナリオ一覧の中から、１つのシナリオ（たとえばスケールアウト）を選択する。この選択方法としては、たとえば、１つのシナリオを残し、他のシナリオを削除する方法等がある。なお、システム管理者は、シナリオを選択する際、シナリオＶｉｅｗ１１３を用いて、各シナリオの具体例（スケールアウトの処理方法等）を表示装置に表示することができる。
このようにして、図２のステップ２０６では、クライアント１１１は、シナリオ一覧の中から、特定のシナリオを選択する。選択されたシナリオ（シナリオＩＤ）は、システム管理者による入力装置の操作により、クライアント１１１から管理サーバ１００に送信される。
【００３３】
ステップ２０７では、管理サーバ１００のシナリオ制御部１０６（ＣＰＵ１１）は、対処コマンド列を生成する（詳細は後記図１４、図１５）。
ステップ２０８では、管理サーバ１００のシナリオ制御部１０６は、ネットワークを介して、業務サーバ１１４のシナリオ実行部１１７に対し、生成した対処コマンド列の実行を指示する。当該指示に受け、業務サーバ１１４のシナリオ実行部１１７が対処コマンド列の実行を完了すると、その旨を管理サーバ１０００に通知する。なお、対処コマンド列の実行により、イベントで通知された障害が回復することになる。
ステップ２０９では、当該通知を受け、クライアント１１１は、業務サーバ１１４のシナリオ実行部１１７でのシナリオの実行結果（たとえば、図１５の対処コマンドリストの実行内容等）をシナリオＶｉｅｗ１１３で表示する（ステップ２０９）。
【００３４】
次に、ステップ２０１（図２参照）の作成処理の詳細手順を図３に示す。
ステップ３００では、まず、業務監視部１０７が、イベントテーブル１０１（図５参照）から、対応するイベントの属性（図５の通し番号、イベントＩＤ、通知事象、緊急度、サーバ名）を取得する。そして、業務監視部１０７が、取得したイベントの属性に関して、業務監視テーブル１０８（図９参照）に未比較の項目（レコード）が存在するかどうかを判定する。たとえば、イベントの属性と、業務監視テーブル１０８の業務監視条件９０２の内容との比較を行っていなければ、未比較の項目が存在することになる。
【００３５】
このような判定の結果、項目が存在しない場合（ステップ３００のＮｏ）、処理を終了し、他方、存在する場合（ステップ３００のＹｅｓ）、業務監視部１０７が、ステップ３０１に進み、業務監視テーブル１０８（図９参照）から、未比較の項目の業務監視条件を取得する。
【００３６】
ステップ３０２では、業務監視部１０７は、当該イベントの属性とステップ３０１で取得した業務監視条件とを比較する。たとえば、イベントの属性（通し番号、イベントＩＤ、通知事象、緊急度、サーバ名）の一部または全部が、業務監視テーブル１０８（図９参照）の業務監視条件９０２の変数（イベントＩＤ、サーバ名等）の値と一致する場合、ステップ３０２における判定は、一致するとの結果を得ることになる。
図９では、たとえば、業務監視条件９０２には、「１０００」のイベントＩＤと「業務サーバＡ」のサーバ名が変数に含まれているので、これらの変数の値を属性に持つイベントであれば、ステップ３０２の判定は一致するとの結果を得ることになる。
【００３７】
このような判定の結果、不一致の場合（ステップ３０２の不一致）、ステップ３００に進んで処理を繰り返し、他方、一致の場合（ステップ３０２の一致）、ステップ３０３に進んだ後、ステップ３００に戻って処理を繰り返す。
ステップ３０３では、業務監視部１０７は、イベントと業務の対応関係をイベント・業務関連リスト１１８に追加する。具体的には、業務監視部１０７は、ステップ３０２で一致した業務監視条件に対応する業務ＩＤを業務監視テーブル１０８から読み出す。また、業務監視部１０７は、対応するイベントテーブル１０１（図５参照）の通し番号と、前記読み出した業務ＩＤとを含むレコードをイベント・業務関連リスト１１８（図１１参照）に追加する。
このようにして、イベントの通知により運用に影響するおそれのある業務とそのイベントとの関係をイベント・業務関連リスト１１８を用いて対応付けることとなる。
【００３８】
次に、ステップ２０２（図２参照）の作成処理の詳細手順を図４に示す（適宜図１参照）。
ステップ４００では、まず、ガイド生成部１０５が、イベント・業務関連リスト１１８（図１１参照）を参照し、後記するステップ４０２以降の処理が未処理の項目（レコード）が存在するかを確認する。
確認の結果、未処理の項目が存在しない場合（ステップ４００のＮｏ）、処理を終了し、他方、未処理の項目が存在した場合（ステップ４００のＹｅｓ）、ステップ４０１に進む。
ステップ４０１では、ガイド生成部１０５が、イベント・業務関連リスト１１８から、未処理の項目を取得する。
【００３９】
ステップ４０２では、ガイド生成部１０５は、取得した項目の業務ＩＤをキーとして、シナリオテーブル１０９に業務に対応するシナリオが存在するかどうかを確認する。具体的には、ガイド生成部１０５は、業務テーブル１０３（図６参照）から、キーとした業務ＩＤに対応する、業務名６０１とスケジュール６０２と業務６０３と実行サーバ名６０４の各値を読み出す。そして、ガイド生成部１０５は、シナリオテーブル１０９（図７参照）の正規化コマンドリスト７０２中に、読み出した値を変数に持つ正規化コマンドリストが存在するかどうかを確認する。確認の結果、正規化コマンドリストが存在すれば、ステップ４０２では、シナリオが存在するとの結果を得る。
【００４０】
ステップ４０３において、シナリオが存在する場合（ステップ４０２のＹｅｓ）、ガイド生成部１０５は、業務・シナリオ関連テーブル１０２（図８参照）から、キーとした業務ＩＤの業務に対応するシナリオＩＤと緊急度の条件とを取得する。
ステップ４０４では、ガイド生成部１０５は、イベントの緊急度とシナリオの緊急度の条件とを比較する。たとえば、シナリオの緊急度の条件で指定された値が、イベントの緊急度を満たす場合には、比較の結果が一致するとの結果を得る。ここでいう一致というのは、シナリオの緊急度の条件を満たすことを意味する。たとえば、シナリオの緊急度の条件が、エラー以上（低レベル以上）の値の場合、シナリオの緊急度がどの値であっても、シナリオの緊急度の条件は満たされることとなる。したがって、双方は一致することになる。
【００４１】
このようにして比較した結果、一致しなければ（ステップ４０４の不一致）、ステップ４０２に戻って処理を繰り返し、他方、一致すれば（ステップ４０４の一致）、ステップ４０５に進んだ後、ステップ４０２に戻って処理を繰り返す。
ステップ４０５では、ガイド生成部１０５は、当該シナリオをイベント・シナリオ関連リスト１１９に追加する。具体的には、ガイド生成部１０５は、一致した緊急度の条件に対応するシナリオＩＤと、対応するイベントの通し番号とを含むレコードをイベント・シナリオ関連リスト１１９（図１２参照）に追加する。
このようにして、イベントにより通知された障害に対処するためのシナリオとそのイベントとの関係をイベント・シナリオ関連リスト１１９を用いて対応付けることとなる。
【００４２】
次に、ステップ２０７（図２参照）の生成処理の詳細手順を図１４に示す（適宜図１参照）。
ステップ１４００では、シナリオ制御部１０６は、シナリオテーブル１０９（から、選択されたシナリオのシナリオＩＤ（図２のステップ２０６参照）に対応する正規化コマンドリストを取得する。
ステップ１４０１では、シナリオ制御部１０６は、イベントテーブル１０１（図５参照）から、対応するイベントの属性を取得する。
【００４３】
ステップ１４０２では、シナリオ制御部１０６は、シナリオテーブル１０９を参照し、ステップ１４０３以降の処理が未処理の正規化コマンドが存在するかどうかを確認する。
確認の結果、未処理の正規化コマンドが存在しない場合（ステップ１４０２のＮｏ）、処理を終了する。他方、未処理の正規化コマンドが存在した場合（ステップ１４０２のＹｅｓ）、ステップ１４０３で、シナリオ制御部１０６は、未代入の変数が存在しないかどうかを確認する。
【００４４】
そして、変数が存在しない場合（ステップ１４０３のＮｏ）、シナリオ制御部１０６は、正規化コマンドリスト中の正規化コマンドのすべての変数に値を代入したこととなり、それを対処コマンド列として対処コマンドリスト１２１（図１参照）に追加（登録）し、ステップ１４０２に戻る。
【００４５】
対処コマンド列の例を図１５に示す。この例では、図７に示したスケールアウトの正規化コマンドリストに「業務サーバＣ」と「日次業務」という値が変数に代入されている。このため、日次業務を業務サーバＣに割り当てるスケールアウトを実行させることが可能となる。
【００４６】
図１４に戻って、他方、未代入の変数が存在した場合（ステップ１４０３のＹｅｓ）、シナリオ制御部１０６は、その変数に対応するイベントの属性（通し番号、イベントＩＤ、通知事象、緊急度、サーバ名）または業務情報（業務ＩＤ、業務名、スケジュール、業務、実行サーバ名）が存在するかどうかを確認する（ステップ１４０４）。つまり、変数に代入すべき値が存在するかどうかを確認する。
確認の結果、代入すべき値が存在しない場合（ステップ１４０４のＮｏ）、シナリオ制御部１０６は、たとえば、正規化コマンドリストの変数の値の入力を促し、それを代入させるための処理を行う（ステップ１４０６）。この処理では、シナリオ制御部１０６は、たとえば、クライアント１１１にその旨の情報をネットワークを介して通知して、クライアント１１１の表示装置に表示させる。そして、システム管理者による入力装置の操作により、未代入の変数の値を指定させ、管理サーバ１００に送信させることとなる。
【００４７】
これに対して、代入すべき値が存在する場合（ステップ１４０４のＹｅｓ）、シナリオ制御部１０６は、その値を正規化コマンドの変数に代入する（ステップ１４０５）。このようにして、当該障害に対処するための一連の対処コマンドリストを生成することとなる。
【００４８】
なお、本発明は、本実施の形態に限定されない。管理サーバ等を含むシナリオ適用支援システムのハードウェア構成、データ構造および処理手順は、本発明の趣旨を逸脱しない限り、変更して構成するようにしてもよい。たとえば、管理サーバ１００は、１台のＣＰＵで処理することとしたが、複数のＣＰＵを用いて分散処理を行うように構成してもよい。また、複数台の管理サーバで分散処理を行うように構成してもよい。
【図面の簡単な説明】
【００４９】
【図１】実施の形態におけるシナリオ適用支援システムの構成例を示す図である。
【図２】シナリオ適用支援システムにおけるシナリオの実行に関する全体の処理手順を示す図である。
【図３】図２のステップ２０１の作成処理の詳細手順を示す図である。
【図４】図２のステップ２０２の作成処理の詳細手順を示す図である。
【図５】図１のイベントテーブルの構成例を示す図である。
【図６】図１の業務テーブルの構成例を示す図である。
【図７】図１のシナリオテーブルの構成例を示す図である。
【図８】図１の業務・シナリオ関連テーブルの構成例を示す図である。
【図９】図１の業務監視テーブルの構成例を示す図である。
【図１０】図１のガイドテーブルの構成例を示す図である。
【図１１】図１のイベント・業務関連リストの構成例を示す図である。
【図１２】図１のイベント・シナリオ関連テーブルの構成例を示す図である。
【図１３】クライアントの表示例を示す図である。
【図１４】図２のステップ２０７の生成処理の詳細手順を示す図である。
【図１５】対処コマンド列の例を示す図である。
【符号の説明】
【００５０】
１０      メモリ（記憶部）
１１      ＣＰＵ（処理部）
１００    管理サーバ
１１１    クライアント
１１４    業務サーバ
【図１】
2006344061.tif 000003
【図２】
2006344061.tif 000004
【図３】
2006344061.tif 000005
【図４】
2006344061.tif 000006
【図５】
2006344061.tif 000007
【図６】
2006344061.tif 000008
【図７】
2006344061.tif 000009
【図８】
2006344061.tif 000010
【図９】
2006344061.tif 000011
【図１０】
2006344061.tif 000012
【図１１】
2006344061.tif 000013
【図１２】
2006344061.tif 000014
【図１３】
2006344061.tif 000015
【図１４】
2006344061.tif 000016
【図１５】
2006344061.tif 000017