まず、一般的に考えられる自動運用プロセスの形態について説明する。図1は、コマンド操作にパラメータを含んだ自動運用プロセスファイルの例を示す図である。
まず、図1の自動運用プロセス201では、開始後、操作1:「ジョブネット停止」が実行される。この場合、その操作1に対して、パラメータ「ホスト名」としてパラメータ値「host1 」が与えられ、パラメータ「ジョブネット名」としてパラメータ値「jobnet1, jobnet2」が与えられる。これにより、自動運用プロセス201を実行する管理サーバは、「ホスト名」=「host1 」である1つの管理対象サーバに対して、「ジョブネット名」=「jobnet1 」と「jobnet2 」のジョブネットの実行を停止させる。ここで、「ジョブネット」とは、実行順序を指定した1つ以上のジョブの集まりをいう。
次に、操作2:「ワークユニット停止」が実行され、その操作2に対して、パラメータ「ホスト名」としてパラメータ値「host1 」が与えられ、パラメータ「ワークユニット名」として「WU1 」が与えられる。これにより、管理サーバは、「ホスト名」=「host1 」である上記管理対象サーバに対して、「ワークユニット名」=「WU1 」のワークユニットの実行を停止させる。ここで、「ワークユニット」とは、ジョブネット内の1つのジョブによって起動される1つ以上のアプリケーション処理の集まりをいう。
つまり、上述の操作1と操作2によって、まず、「ホスト名」=「host1 」である管理対象サーバ上の全体の処理の流れを制御するジョブネット「jobnet1 」と「jobnet2 」の動作が停止させられる。続いて、それらのジョブネット内のジョブから起動されているワークユニット「WU1 」が停止させられる。これにより、上記管理対象サーバの動作が停止する。
次に、操作3:「パッチ適用」が実行され、その操作3に対して、パラメータ「ホスト名」として「host1 」が与えられる。これにより、管理サーバは、「ホスト名」=「host1 」である1つの管理対象サーバの例えばオペレーティングシステムに対して、所定のパッチプログラムを適用させ、そのオペレーティングシステムをアップデートさせる。具体的には、上記管理対象サーバは、例えば管理サーバからパッチプログラムをダウンロードし、そのパッチプログラムを実行することにより、自装置のオペレーティングシステムをアップデートする。
その後、操作4:「ワークユニット起動」が実行され、その操作4に対して、パラメータ「ホスト名」としてパラメータ値「host1 」が与えられ、パラメータ「ワークユニット名」として「WU1 」が与えられる。これにより、管理サーバは、例えば「ホスト名」=「host1 」である上記管理対象サーバに対して、「ワークユニット名」=「WU1 」のワークユニットを起動させる。
さらに、操作5:「ジョブネット起動」が実行され、その操作5に対して、パラメータ「ホスト名」としてパラメータ値「host1 」が与えられ、パラメータ「ジョブネット名」としてパラメータ値「jobnet1, jobnet2」が与えられる。これにより、管理サーバは、例えば「ホスト名」=「host1 」である上記管理対象サーバに対して、「ジョブネット名」=「jobnet1 」と「jobnet2 」のジョブネットを起動させる。
以上により、例えば「ホスト名」=「host1 」である上記管理対象サーバの例えばオペレーティングシステムのアップデートが完了する。
最後に、操作6:「結果通知」が実行され、その操作6に対して、パラメータ「通知先アドレス」としてパラメータ値「notice@domain 」が与えられ、パラメータ「ホスト名」としてパラメータ値「smtphost」が与えられる。これにより、管理サーバは、例えば「ホスト名」=「smtphost」であるホストコンピュータに向けて、メールアドレス「notice@domain 」宛てに、自動運用プロセスの実行結果を通知する。
ここで、「ホスト名」=「host2 」である他の管理対象サーバに対しても、同様の例えばオペレーティングシステムのアップデート作業を、図1の自動運用プロセス202として実行したいとする。この場合、自動運用プロセス202の操作1〜6は、自動運用プロセス201の操作1〜6をそのままコピーして再利用すればよい。しかしながら、パラメータ「ホスト名」はパラメータ値「host2 」に、パラメータ「ジョブネット名」はパラメータ値「jobnet3, jobnet4」に、パラメータ「ワークユニット名」はパラメータ値「WU2 」に、それぞれ変更する必要がある。
この場合、一般的に考えられる1つの方法としては、管理端末から管理サーバにアクセスして、まず、自動運用プロセス201を自動運用プロセス202としてコピーする。次に、専用のエディタ等を用いて、自動運用プロセス202の操作1〜6のそれぞれごとに、各パラメータのパラメータ値を変更する必要がある。しかし、自動運用プロセスの操作の数が増えると、この作業は非常に煩雑になってしまうという問題点が生じる。
図2は、上述の問題を解決するために、パラメータを分離した自動運用プロセスファイルの例を示す図である。管理サーバにおいて、自動運用プロセス301内の各操作1〜6において使用される各パラメータのパラメータ値は、自動運用プロセス301から分離されて、例えば管理サーバの外部記憶装置に、例えばパラメータ設定表302として記憶される。パラメータ設定表302には、自動運用プロセス301内の各操作ごとに、各操作で使用されるパラメータ名と、各パラメータ名に対応する値(パラメータ値)が登録される。
自動運用プロセス301の実行時には、まず、操作0:「パラメータ設定表の読込み」が実行される。これにより、管理サーバは、自装置内の外部記憶装置から、パラメータ設定表302を、自装置内のメモリに読み込む。
その後、操作1−1:「パラメータセット」が実行される。これにより、管理サーバは、メモリ上のパラメータ設定表302内の操作1−2:「ジョブネット停止」に対応するパラメータ「ホスト名」にパラメータ値「host1 」を、パラメータ「ジョブネット名」にパラメータ値「jobnet1, jobnet2」をそれぞれセットする。続いて、操作1−2:「ジョブネット停止」が実行される。これにより、管理サーバは、「ホスト名」=「host1 」である1つの管理対象サーバに対して、「ジョブネット名」=「jobnet1 」と「jobnet2 」のジョブネットの実行を停止させる。
次に、操作2−1:「パラメータセット」が実行される。これにより、管理サーバは、メモリ上のパラメータ設定表302内の操作2−2:「ワークユニット停止」に対応するパラメータ「ホスト名」にパラメータ値「host1 」を、パラメータ「ワークユニット名」に「WU1 」をそれぞれセットする。続いて、操作2−2:「ワークユニット停止」が実行される。これにより、管理サーバは、「ホスト名」=「host1 」である上記管理対象サーバに対して、「ワークユニット名」=「WU1 」のワークユニットの実行を停止させる。
次に、操作3−1:「パラメータセット」が実行される。これにより、管理サーバは、メモリ上のパラメータ設定表302内の操作3−2:「パッチ適用」に対応するパラメータ「ホスト名」にパラメータ値「host1 」をセットする。続いて、操作3−2:「パッチ適用」が実行される。これにより、管理サーバは、「ホスト名」=「host1 」である1つの管理対象サーバの例えばオペレーティングシステムに対して、所定のパッチプログラムを適用させ、そのオペレーティングシステムをアップデートさせる。
以下、操作4−1と4−2、操作5−1と5−2、操作6−1と6−2も同様である。
ここで、「ホスト名」=「host2 」である他の管理対象サーバに対しても、同様の例えばオペレーティングシステムのアップデート作業を、自動運用プロセスとして実行したいとする。図2の場合には、自動運用プロセス301は、そのまま再利用できる。そして、管理端末から管理サーバにアクセスして、パラメータ設定表302をパラメータ設定表303に書き換えて、自動運用プロセス301の操作0で、この新たなパラメータ設定表303を読み込ませればよい。
このように、パラメータ設定表302、303を、自動運用プロセス301から分離することにより、システム変更自のパラメータ値の再設定作業を比較的楽に行うことが可能となる。
しかし上記の場合でも、自動運用プロセスとパラメータを分離できたとしても、自動運用プロセスにおけるパラメータ入力は各操作に対して必要である。このため、異なるシステム構成に対してプロセスを再利用する時には、多数のパラメータ変更を必要とする。自動運用プロセスの操作の数が増えると、例えば図3に示されるように、パラメータ設定表303(302)の行数が増加し、変更前のパラメータ値401と変更後のパラメータ値402の対応関係が増加してしまう。この結果、例えばどのパラメータ値が変更が必要か否かの検討を含めた変更作業に手間がかかってしまう。また、複数の操作で同じパラメータ値が共有できる場合でも、どの操作で同じパラメータが共有できるかを利用者が把握しておく必要がある。
さらに、すべてのパラメータをプロセス定義から分離すると、再利用性は向上するものの、変更必要の有無の検討を含めた変更作業に手間がかかる。
以上の問題点を解決するために、本発明の第1および第2の実施形態について、以下に詳細に説明する。
図4は、本発明の第1および第2の実施形態が用いられるシステムの1例としての自動運用プロセスシステムの構成例を示す図である。
例えばローカルエリアネットワークであるネットワーク106に、自動運用プロセスの管理対象となる複数台(N台:#1〜#N)のサーバコンピュータ(「管理対象サーバ」)103や、ネットワーク機器(「管理対象ノード」)104が接続されている。
このほか、ネットワーク106には、開発コンピュータ101、管理サーバ102、管理端末105などが接続される。開発コンピュータ101は、自動運用プロセスの生成を行う(図4の107)。管理サーバ102は、自動運用プロセスの実行と実行結果などの管理を行う。管理端末105は、管理サーバ102にアクセスして、自動運用プロセスの実行や操作、動作状況の確認を行う。
開発コンピュータ101は、CPU(中央演算処理装置)101−1、メモリ101−2、外部記憶装置101−3、入出力装置101−4、ネットワークインタフェース(I/F)101−5、駆動装置101−6などがバスで接続された構成を有する。駆動装置101−6には、可搬記録媒体101−7が挿入される。CPU101−1は、例えば外部記憶装置101−3からメモリ101−2に、後述する各フローチャートで示される制御処理を実行するプログラムをロードして実行することにより、自動運用プロセスを生成する処理を制御する。このプログラムは、可搬記録媒体101−7に記録されて提供され、駆動装置101−6を介して外部記憶装置101−3にインストールされてもよい。あるいは、このプログラムは、I/F101−5を介して、ネットワーク106が接続されるインターネット等からダウンロードされて外部記憶装置101−3にインストールされてもよい。
管理サーバ102は、CPU102−1、メモリ102−2、外部記憶装置102−3、ネットワークインタフェース(I/F)102−4などがバスで接続された構成を有する。開発コンピュータ101は、外部記憶装置101−3からI/F101−5を介して、ネットワーク106およびI/F102−4を介して、管理サーバ102内の外部記憶装置102−3に、自動運用プロセスファイルをアップロードする(図4の108)。
管理端末105は、ネットワーク106を介して、管理サーバ102に対して、自動運用プロセスの実行を指示する(図4の109)。この指示を受けて、管理サーバ102内のCPU102−1は、外部記憶装置102−3からメモリ102−2に自動運用プロセスファイルをロードして実行する。これにより、管理サーバ102は、ネットワーク106を介して、管理対象サーバ103または管理対象ノード104に対して、自動運用プロセスで定義された一連のコマンド操作を実行し、情報収集を行う(図4の110)。コマンド操作等の実行結果は、管理サーバ102からネットワーク106を介して管理端末105に送信され、管理端末105のディスプレイに表示等される。
図5は、たとえば図4の開発コンピュータ101上で実現される自動運用プロセス生成装置の第1の実施形態500のブロック図である。
操作列入力部501は、自動運用プロセスデータを生成するための各操作の指定を受け取る。これらの各操作の指定は、例えば操作列入力部501が含まれるコンピュータを操作する者が指定してもよいし、あらかじめ各操作を記述した設定ファイルとして指定されてもよい。
パラメータ・操作対応表生成部502(パラメータ・操作対応関係生成部)は、操作列入力部501が受け取った操作ごとに、操作情報データベース(以下、「操作情報DB」と呼ぶ)503を参照する。操作情報DB503は、複数の操作のそれぞれごとにその操作で使われる1つ以上のパラメータ名にそれぞれそのパラメータの種別を示すパラメータ種別を対応づけて記憶するデータである。この結果、パラメータ・操作対応表生成部502は、操作列入力部501が受け取った操作ごとに、どのパラメータ種別がその操作に対応するかを示す対応関係を、例えばパラメータ・操作対応表として生成する。
パラメータ設定表生成部504は、同じパラメータ種別に重複して値が設定されないようにしながらパラメータ・操作対応表に現れるパラメータ種別に対して値の設定を指示するパラメータ設定表505(パラメータ設定情報)を生成して出力する。
自動運用プロセス生成部506は、以下の自動運用プロセス507を生成して出力する。
この自動運用プロセス507は、操作列入力部501が受け取った操作の一連の作業手順の定義を含む。この定義は、例えばXPDLによって記述される。
そして、自動運用プロセス507は、パラメータ・操作対応表生成部502が生成したパラメータ・操作対応表に基づいて、その表中に現れるパラメータ種別への値の設定を介して定義に従って実行される操作が使用するパラメータにその値をセットする操作を含む。
より具体的には、このセット操作として、自動運用プロセス507は例えば、次の構成を含む。
まず、自動運用プロセス507は、パラメータ・操作対応表生成部502が生成したパラメータ・操作対応表を含む。このパラメータ・操作対応表は、例えばCSV(Comma−Separated Values)形式でプロセス内部パラメータとして保持される。
さらに、自動運用プロセス507は、例えば図4の管理端末105から管理サーバ102にアクセスされることにより、その自動運用プロセス507の実行時に例えば利用者によって各パラメータ値が設定されたパラメータ設定表505を読み込む。
そして、自動運用プロセス507は、その自動運用プロセス507の実行時に、パラメータ設定表505とパラメータ・操作対応表とに基づいて、定義に従って実行される操作の各パラメータ種別に対応する各パラメータに、利用者によってその各パラメータ種別に設定された各値を反映させる。
図6は、図5の自動運用プロセス生成装置の第1の実施形態500により生成される、利用者が各パラメータ値を入力するためのパラメータ設定表505‘及びパラメータ値が入力されたパラメータ設定表505のデータ構成例を示す図である。パラメータ設定表505は各パラメータ種別、HOSTNAME、JOBNET、WORKUNIT,MAILADDRESS,SMTPHOST等にパラメータ値が設定された状態を示す。そして例えばパラメータ種別「HOSTNAME」は、図3に示される一般的に考えられるパラメータ設定表303の操作1〜5に現れる「ホスト名」に対応している。第1の実施形態では、利用者がパラメータ値「host1 」を設定しなければならないのは、パラメータ種別「HOSTNAME」に対して1回だけでよい。これに対して、図3に示される一般的に考えられるパラメータ設定表505では、操作1〜5のそれぞれのパラメータ「ホスト名」に対してパラメータ値「host1 」を5回設定しなければならない。図6に示されるパラメータ設定表505内の他のパラメータ種別についても同様である。このように、第1の実施形態では、利用者は、パラメータ設定表505において、共有可能なパラメータ種別がまとめられた各パラメータ種別を設定するだけでよい。このため、自動運用プロセス507内の操作の数が増加しても、設定すべきパラメータ値の数を最小限に抑制することが可能となり、値の設定が煩雑になることを防ぐことが可能となる。
図7は、図5の自動運用プロセス生成装置の第1の実施形態500の操作列入力部501受け取るコマンド操作のデータ構成例を示す図である。この場合、例えば図4の開発コンピュータ101の操作者は、入出力装置101−4のキーボードやマウスを用いてディスプレイを見ながら、自動運用プロセス507に対して順次実行させたい操作順序で、コマンド操作名を順次指定することができる。図7の例では、操作1として操作名「ジョブネット停止」が指定され、操作2として操作名「ワークユニット停止」が指定され、操作3として操作名「パッチ適用」が指定されている。さらに、操作4として操作名「ワークユニット起動」が指定され、操作5として操作名「ジョブネット起動」が指定され、操作6として「結果通知」が指定されている。
図8は、図5の操作情報DB503のデータ構成例を示す図である。このデータベースは、自動運用プロセスとして使用される可能性のあるコマンド操作ごとに、コマンドの操作名と、その操作で使用されるコマンドのパラメータ名およびパラメータ種別を管理する。図8の例では、「操作名」=「ジョブネット停止」に対しては、「コマンドのパラメータ名」と「パラメータ種別」の組合せとして、「connection_host 」と「HOSTNAME」および「jobnet_name 」と「JOBNET」などが登録されている。また、「操作名」=「パッチ適用」に対しては、「コマンドのパラメータ名」と「パラメータ種別」の組合せとして、「connection_host 」と「HOSTNAME」などが登録されている。また、「操作名」=「結果通知」に対しては、「コマンドのパラメータ名」と「パラメータ種別」の組合せとして、「mailaddress 」と「TOADDRESS 」および「smtpserver_host 」と「SMTPHOST」などが登録されている。
図8では、例えば操作「ジョブネット停止」において、パラメータ種別「HOSTNAME」に対して、コマンドのパラメータ名「connection_host 」が対応しているが、特には図示しない別の操作においては、同じパラメータ種別「HOSTNAME」に対して、別のコマンドのパラメータ名が対応してもよい。これにより、本実施形態では、例えばホスト名に対応する1つのパラメータ種別「HOSTNAME」に対するパラメータ値の1回の値設定によって、複数の操作における上記ホスト名に対応する各コマンドのパラメータ名に対して一括して値を設定することが可能となる。
すなわち、本実施形態では、値の設定時の対象を、操作ごとに異なる可能性がある複数のコマンドのパラメータ名がある場合であっても、共有可能な複数のコマンドのパラメータ名を1つにまとめたパラメータ種別とすることにより、値設定に必要なコストを削減可能としている
図9は、図5のパラメータ・操作対応表生成部502が生成するパラメータ・操作対応表901のデータ構成例を示す図である。また、図10は、パラメータ・操作対応表901の生成処理の説明図である。
このパラメータ・操作対応表901では、図10の1001として示されるように、横方向の各列に、操作列入力部501で入力された各操作が対応付けられる。また、図10の1002として示されるように、縦方向の各行に、各操作で使用されるパラメータ種別が操作情報DB503から取得されて対応付けられる。
このとき、複数の操作で共有可能なパラメータ種別は、1つの行にまとめられて対応付けられる。共有されないパラメータ種別も1つの行に対応付けられる。
そして、図5のパラメータ・操作対応表生成部502は、操作情報DB503を参照することで、各列と各行の交差枠ごとに、各列に対応する操作が各行に対応するパラメータ種別に対応するコマンドのパラメータ名を使用するならばその交差枠に1を設定し、使用しないならばその交差枠に0を設定する。
例えば、図10のパラメータ・操作対応表901において、「操作1」の列の例を見てみる。「操作1」の列とパラメータ種別「HOSTNAME」に対応する行の交差枠部分では、操作情報DB503上で、「操作1」に対応する「操作名」=「ジョブネット停止」に対応して、パラメータ種別「HOSTNAME」に対応するコマンドのパラメータ名「connection_host 」が使用されている。従って、その交差枠には“1”が設定される(図10の1003)。
同様に、「操作1」の列とパラメータ種別「JOBNET」に対応する行の交差枠部分では、操作情報DB503上で、「操作1」に対応する「操作名」=「ジョブネット停止」に対応して、パラメータ種別「JOBNET」に対応するコマンドの引数「jobnet_name 」が使用されている。従って、その交差枠にも“1”が設定される(図10の1003)。
一方、「操作1」の列とパラメータ種別「WORKUNIT」「MAILADDRESS 」「SMTPHOST」に対応する各行の交差枠部分では、操作情報DB503上で、「操作1」に対応する「操作名」=「ジョブネット停止」に対応して、それらのパラメータ種別に対応するコマンドのパラメータ名は使用されていない。従って、それらの交差枠には“0”が設定される。
以上のようにして、図5のパラメータ・操作対応表生成部502が生成するパラメータ・操作対応表901は、自動運用プロセス507のどの操作でどのパラメータ種別がその操作に対応するかという情報を保持することができる。
したがって、パラメータ種別HOSTNAMEについては操作1、2,3,4,5で使用されることがそれぞれの交差粋に“1”が設定されることで示される。
図11は、図5の自動運用プロセス生成部506が生成する自動運用プロセス507の例を示す図である。
自動運用プロセス507は、操作列入力部501で入力された操作の一連の作業手順の定義を含む。図11の例では、操作1−2、操作2−2、操作3−2、・・・等である。
また、自動運用プロセス507は、図11に例示されるように、図5のパラメータ・操作対応表生成部502が生成したパラメータ・操作対応表901を、前述したように例えばCSV形式でプロセス内部パラメータとして含む。
さらに、自動運用プロセス507は、図11の操作0−1として例示されるように、実行時に利用者によってパラメータ値が設定されたパラメータ設定表505を読み込む操作を含む。
そして、自動運用プロセス507は、実行時に、パラメータ設定表505とパラメータ・操作対応表とに基づいて、定義に従って実行される操作の各パラメータ種別に対応する各パラメータである各コマンドのパラメータに、利用者によって設定された各値を反映させる操作を含む。より具体的には、この反映させる操作は、パラメータ値反映表を生成する操作0−2と、各操作1−2、2−2、3−2、・・・等に対応して各パラメータ値をセットするパラメータセット操作1−1、2−1、3−1、・・・等からなる。各操作1−2、2−2,3−2はそれぞれジョブネット停止、パッチ適用、ワークユニット停止である。
図12は、たとえば図4の管理サーバ102での自動運用プロセス507の実行時に、図11の操作0−2で、管理サーバ102内のメモリ102−2上に生成される、パラメータ値反映表1201のデータ構成例を示す図である。
このパラメータ値反映表1201では、横方向の各列に、図9に例示されるパラメータ・操作対応表901の横方向の各列と同じ各操作が対応付けられる。また、縦方向の各行に、図9に例示されるパラメータ・操作対応表901の縦方向の各行と同じ各パラメータ種別が対応付けられる。
そして、パラメータ値反映表1201の各列と各行の交差枠ごとに、図9に例示されるパラメータ・操作対応表901の同じ位置の交差枠に“1”が設定されていれば、以下の動作が実行される。操作0−1で読み込まれた図6に例示されるパラメータ設定表505の上記交差枠の行のパラメータ種別に対応するパラメータ値が、パラメータ値反映表1201の上記交差枠に書き込まれる。
例えば、図12のパラメータ値反映表1201において、パラメータ種別「HOSTNAME」に対応する行と操作1〜5に対応する各列の交差枠部分は、図9に例示されるパラメータ・操作対応表901の同じ位置の交差枠に“1”が設定されている。このため、パラメータ値反映表1201の上記各交差枠に、図6に例示される「パラメータ種別」=「HOSTNAME」に対応して利用者によって設定された「パラメータ値」=「host1」が書き込まれる。
同様に、図12のパラメータ値反映表1201において、パラメータ種別「JOBNET」に対応する行と操作1および5に対応する各列の交差枠部分は、図9に例示されるパラメータ・操作対応表901の同じ位置の交差枠に“1”が設定されている。このため、パラメータ値反映表1201の上記各交差枠に、図6に例示される「パラメータ種別」=「JOBNET」に対応して利用者によって設定された「パラメータ値」=「jobnet1, jobnet2」が書き込まれる。
同様に、図12のパラメータ値反映表1201において、パラメータ種別「WORKUNIT」に対応する行と操作2および4に対応する各列の交差枠部分は、図9に例示されるパラメータ・操作対応表901の同じ位置の交差枠に“1”が設定されている。このため、パラメータ値反映表1201の上記各交差枠に、図6に例示される「パラメータ種別」=「WORKUNIT」に対応して利用者によって設定された「パラメータ値」=「WU1 」が書き込まれる。
また、図12のパラメータ値反映表1201において、パラメータ種別「MAILADDRESS 」に対応する行では、操作6に対応する列の交差枠部分のみ、図9に例示されるパラメータ・操作対応表901の同じ位置の交差枠に“1”が設定されている。パラメータ種別「SMTPHOST」に対応する行も同様に、操作6に対応する列の交差枠部分のみ、図9に例示されるパラメータ・操作対応表901の同じ位置の交差枠に“1”が設定されている。このため、パラメータ値反映表1201の上記各行の上記交差枠に、図6に例示される「パラメータ種別」=「MAILADDRESS 」「SMTPHOST」に対応して利用者によって設定された「パラメータ値」=「notice@domain 」「smtphost」がそれぞれ書き込まれる。
このように設定されたパラメータ値反映表1201に対して、図11に例示される自動運用プロセス507の実行時に実行される各パラメータセット操作1−1、2−1、3−1、・・・等では、以下の処理が実行される。各操作1−2、2−2、3−2、・・・等に対応するパラメータ値反映表1201上の各列ごとに、その列に書き込まれているパラメータ値が読み出される。そして、各操作1−2、2−2、3−2、・・・等における、上記各パラメータ値が書き込まれている各行のパラメータ種別に対応するコマンドのパラメータに、各パラメータ値がセットされる。パラメータ種別に対応するコマンドのパラメータは、管理サーバ102が例えば開発コンピュータ101上の操作情報DB503(図5、図8)を、操作とパラメータ種別をキーとして参照することにより抽出することができる。あるいは、管理サーバ102上に、開発コンピュータ101と同じ操作情報DBを保持するようにしてもよい。
例えば、図11のパラメータセット操作1−1では、操作1−2の「ジョブネット停止」操作に対応する図12の操作1の列が参照される。この列に書き込まれているパラメータ値「host1 」および「jobnet1, jobnet2」の各行の各パラメータ種別はそれぞれ、「HOSTNAME」および「JOBNET」である。従って、操作「ジョブネット停止」とパラメータ種別「HOSTNAME」によって例えば図8の構成を有する操作情報DB503を参照することにより、コマンドのパラメータ名として「connection_host 」が抽出できる。同様に、操作「ジョブネット停止」とパラメータ種別「JOBNET」によって例えば図8の構成を有する操作情報DB503を参照することにより、コマンドのパラメータ名として「jobnet_name 」が抽出できる。この結果、操作1−2の「ジョブネット停止」操作の各パラメータ「connection_host 」および「jobnet_name 」に、それぞれ各パラメータ値「host1 」および「jobnet1, jobnet2」がセットされる。
また例えば、図11のパラメータセット操作2−1では、操作2−2の「ワークユニット停止」操作に対応する図12の操作2の列が参照される。この列に書き込まれているパラメータ値「host1 」および「WU1 」の各行の各パラメータ種別はそれぞれ、「HOSTNAME」および「WORKUNIT」である。従って、操作「ワークユニット停止」とパラメータ種別「HOSTNAME」によって例えば操作情報DB503を参照することにより、図8には図示していないが、コマンドのパラメータ名として「connection_host 」が抽出できる。同様に、操作「ワークユニット停止」とパラメータ種別「WORKUNIT」によって例えば操作情報DB503を参照することにより、図8には図示していないが、コマンドのパラメータ名として「workunit_name 」が抽出できる。この結果、操作2−2の「ワークユニット停止」操作の各パラメータ名「connection_host 」および「workunit_name 」に、それぞれ各パラメータ値「host1 」および「WU1 」がセットされる。
さらに例えば、図11のパラメータセット操作3−1では、操作3−2の「パッチ適用」操作に対応する図12の操作3の列が参照される。この列に書き込まれているパラメータ値「host1 」の行のパラメータ種別は、「HOSTNAME」である。従って、操作「パッチ適用」とパラメータ種別「HOSTNAME」によって例えば図8の構成を有する操作情報DB503を参照することにより、コマンドのパラメータ名として「connection_host 」が抽出できる。この結果、操作3−2の「パッチ適用」操作のパラメータ名「connection_host 」に、パラメータ値「host1 」がセットされる。
その他の操作も同様である。
以上のように、第1の実施形態では、利用者は、パラメータ設定表505において、図6に例示されるように互いに共有可能なパラメータ種別がまとめられたパラメータ種別ごとにパラメータ値を設定するだけでよい。これにより、自動運用プロセス507の実行時に、すべての操作の各コマンドのパラメータに対して、それらのコマンドのパラメータに対応する各パラメータ種別の値を適切にセットすることが可能となる。
図13は、図5に示される自動運用プロセス生成装置の第1の実施形態500のブロック構成を実現するために、図4の開発コンピュータ101が実行する自動運用プロセス生成プログラムの全体処理を示すフローチャートである。このプログラムは、開発コンピュータ101内の例えば外部記憶装置101−3に記憶され、CPU101−1によって外部記憶装置101−3からメモリ101−2に読み出されて実行される。なお、このプログラムは、例えば可搬記録媒体101−7に記憶されて提供されてよく、駆動装置101−6を介して外部記憶装置101−3にインストールされてよい。
図13において、まず、操作列の入力処理(操作列入力ステップ)が実行される(ステップS1301)。この処理では、前述した図5の操作列入力部501の動作が実行される。この結果、図7に例示されるコマンド操作名が順次入力される。
次に、パラメータ・操作対応表生成処理(パラメータ・操作対応関係生成ステップ)が実行される(ステップS1302)。この処理では、前述した図5のパラメータ・操作対応表生成部502の動作が実行される。この結果、図4の開発コンピュータ101内の例えば外部記憶装置101−3に記憶されている図8に例示される操作情報DB503が参照されることによって、図9および図10で説明したパラメータ・操作対応表901が生成される。このパラメータ・操作対応表901は、例えば図4のメモリ101−2に保持される。
続いて、パラメータ設定表生成処理(パラメータ設定表生成ステップ)が実行される(ステップS1303)。この処理では、前述した図5のパラメータ設定表生成部504の動作が実行される。この結果、共有可能なパラメータ種別がまとめられた各パラメータ種別に対して各パラメータ値を利用者に設定させるための図6に例示されるパラメータ設定表505‘が生成される。そして、この生成されたパラメータ設定表505‘が、例えば図4の開発コンピュータ101内の例えば外部記憶装置101−3に出力される。さらに、生成されたパラメータ設定表505‘は、利用者によりパラメータ値の入力が行われ、パラメータ値が入力されたパラメータ設定表505となる。
ステップS1303の処理とともに、自動運用プロセス生成処理(自動運用プロセス生成ステップ)が実行される(ステップS1304)。この処理では、前述した図5の自動運用プロセス生成部506の動作が実行される。この結果、図11に例示される自動運用プロセス507のファイルが生成され、図4の開発コンピュータ101内の例えば外部記憶装置101−3に出力される。
以上のようにして、利用者によりパラメータ値の入力が行われたパラメータ設定表505および開発コンピュータ101の例えば外部記憶装置101−3に出力された自動運用プロセス507のファイルは、その後、図4の108として示されるように、管理サーバ102内の外部記憶装置102−3にアップロードされ、実際に運用される。
図13の主要な処理の詳細について、以下に説明する。
図14は、図13のステップS1302のパラメータ・操作対応表生成処理を示すフローチャートである。
まず、図13のステップS1301で例えば図4の入出力装置101−4から順次入力され例えばメモリ101−2に保持された、図7に例示されるコマンド操作列が受け付けられる(ステップS1401)。
次に、メモリ101−2上の図7に例示されるコマンド操作入力からコマンド操作が1つずつ選択されながら(ステップS1402)、ステップS1408ですべてのコマンド操作で処理が完了したか否かが判定される。そして、ステップS1408の判定がNOの間、以下のステップS1403〜S1407が繰り返し実行される。
まず、図9に例示されるパラメータ・操作対応表901に、現在選択されているコマンド操作(これをi番目とする)に対応する「操作i」列が生成される(ステップS1403)。
次に、現在選択されているコマンド操作に対応するパラメータ種別が、例えば図4の外部記憶装置101−3に記憶されている図8に例示される操作情報DB503から読み込まれる(ステップS1404)。
次に、ステップS1404で読み込まれたパラメータ種別がパラメータ・操作対応表901の行に未設定であるか否かが判定される(ステップS1405)。
未設定でステップS1405の判定がYESならば、未設定のパラメータ種別の行がパラメータ・操作対応表901に追加される(ステップS1406)。
ステップS1405の判定がNOの場合またはステップS1406の処理の後、ステップS1404で読み込まれたパラメータ種別に該当するパラメータ・操作対応表901の行で、現在選択されているコマンド操作に対応するパラメータ・操作対応表901の「操作i」列の欄に、値“1”が設定される(ステップS1407)。
以上の処理の後、メモリ101−2上の図7に例示されるコマンド操作入力からすべてのコマンド操作が選択されて処理が完了したか否かが判定される(ステップS1408)。
すべてのコマンド操作で処理が完了しておらずステップS1408の判定がNOならば、ステップS1402の処理に戻る。
すべてのコマンド操作で処理が完了しステップS1408の判定がYESになると、対応表の空欄に値“0”が設定される(ステップS1409)。そして図13のステップS1302のパラメータ・操作対応表生成処理に対応する図14のフローチャートの処理を終了する。
図15は、図13のステップS1303のパラメータ設定表生成処理を示すフローチャートである。
まず、図13のステップS1302で生成され例えば図4の外部記憶装置101−3に出力されている図9に例示されるパラメータ・操作対応表901が、例えば図4のメモリ101−2に読み込まれる(ステップS1501)。
そして、読み込まれたパラメータ・操作対応表901の各行のパラメータ種別を用いて、利用者にパラメータ値を入力させるための、前述した図6に例示されるパラメータ設定表505が生成される。そして、そのパラメータ設定表505が、例えば図4の外部記憶装置101−3に出力される(ステップS1502)。なお、パラメータ設定表505が生成された直後は、利用者はまだパラメータ値は入力していないため、図9のパラメータ値の欄はすべて空欄である。(図6のパラメータ設定表505‘)
図16は、図13のステップS1304の自動運用プロセス生成処理を示すフローチャートである。
まず、図13のステップS1301で例えば図4の入出力装置101−4から順次入力され例えば外部記憶装置101−3に保持されたコマンド操作列が、例えばメモリ101−2に読み込まれる(ステップS1601)。このコマンド操作列は、自動運用プロセスで実行するための操作群である。
次に、たとえば図4の管理サーバ102上での実行時に例えば外部記憶装置102−3に保持されているパラメータ設定表505を読込むための、図11の操作0−1として例示される操作が、例えば図4のメモリ101−2の一時領域に設定される(ステップS1602)。このパラメータ設定表505には、図6に例示されるように、自動運用プロセス507の運用開始時に、利用者によって管理端末105から各パラメータ種別ごとにパラメータ値が設定されており、上記操作により、例えば外部記憶装置102−3からメモリ102−2に読み込まれる。
次に、たとえば図4の管理サーバ102上での実行時に、図12に例示されるパラメータ値反映表1201を生成するための、例えば図11の操作0−2として示される操作が、例えば図4のメモリ101−2の一時領域に設定される(ステップS1603)。このパラメータ値反映表1201は、図12の説明で前述したように、パラメータ設定表505とパラメータ・操作対応表901とに基づいて生成される。パラメータ設定表505は、ステップS1602で設定された操作により、例えば図4の管理サーバ102上のメモリ102−2に予め読み込まれる。パラメータ・操作対応表901は、後述するステップS1609により、自動運用プロセス507のファイル内に内部パラメータとして保持されている。
次に、メモリ101−2上の図7に例示されるコマンド操作列からコマンド操作が1つずつ選択されながら(ステップS1604)、ステップS1607ですべてのコマンド操作で処理が完了したか否かが判定される。そして、ステップS1607の判定がNOの間、以下のステップS1605とS1606の処理が繰り返し実行される。
まず、現在選択されているコマンド操作(これをi番目とする)に対応する、「操作i−1:パラメータセット」操作が、例えば図4のメモリ101−2の一時領域に設定される(ステップS1605)。この操作i−1は、例えば図11の操作1−1、操作2−1、または操作3−1に対応する。この操作i−1では、たとえば図4の管理サーバ102上での自動運用プロセス507の実行時に、図12に例示されるように生成されるパラメータ値反映表1201上で、後述するステップS1606で設定される操作i−2に対応する操作の列が参照される。パラメータ値反映表1201は、前述したステップS1603で設定された操作0−2により例えば図4のメモリ102−2上に生成されている。次に、パラメータ値反映表1201上で、上記列に書き込まれている各パラメータ値とそのパラメータ値が書き込まれている各行に対応する各パラメータ種別が、それぞれ抽出される。続いて、操作i−2に対応する操作と各パラメータ種別とをキーとして、例えば操作情報DB503が参照されることにより、対応する各コマンドのパラメータが抽出される。そして、次のステップS1606で設定される操作i−2のコマンド操作において、上記抽出された各コマンドのパラメータ名に、上記抽出された各パラメータ値がセットされる。
次に、現在選択されているコマンド操作に対応する、「操作i−2」として選択されたコマンド操作が、例えば図4のメモリ101−2の一時領域に設定される(ステップS1606)。例えば「ジョブネット停止」操作ならば、たとえば図4の管理サーバ102からコマンドのパラメータ「connection_host」の値で指定されるホスト名の管理対象サーバ103等に対し、コマンドのパラメータ「jobnet_name」の値で指定されるジョブネットを停止させる操作である。その他のコマンド操作の場合も、たとえば管理サーバ102が、その操作に設定されているパラメータ名の値に応じて、その操作を、図4の管理対象サーバ103または管理対象ノード104に対して実行させる。
以上の処理の後、メモリ101−2上の図7に例示されるコマンド操作列からすべてのコマンド操作が選択されて処理が完了したか否かが判定される(ステップS1607)。
すべてのコマンド操作で処理が完了しておらずステップS1607の判定がNOならば、ステップS1604の処理に戻る。
すべてのコマンド操作で処理が完了しステップS1607の判定がYESになると、以下の処理が実行される。ステップS1602、S1603、S1605、およびS1606により例えば図4のメモリ101−2の一時領域に設定された各操作を順に実行する自動運用プロセス507(図5)の領域が、例えば図4のメモリ101−2上に生成される(ステップS1608)。
次に、図13のステップS1302で生成されたパラメータ・操作対応表901が、図5または図11の説明で前述したように、上記自動運用プロセス507の領域に例えば内部パラメータとして組み込まれる。最後に、上述のようにしてメモリ101−2上に生成された自動運用プロセス507の領域が、例えば図4の外部記憶装置101−3にファイルとして記憶される(以上、ステップS1609)。
以上の処理の後、図13のステップS1304の自動運用プロセス生成処理に対応する図16のフローチャートの処理を終了する。
図17は、たとえば図4の開発コンピュータ101上で実現される自動運用プロセス生成装置の第2の実施形態1700のブロック図である。
操作列入力部1701は、図5の第1の実施形態における操作列入力部501と同様に、自動運用プロセスのための各操作の指定を受け取る。操作列入力部1701が操作列入力部501と異なる点は、各操作の指定とともに、各操作の失敗時の操作の指定を併せて受け取る点である。
パラメータ・操作対応表生成部1702は、図5の第1の実施形態におけるパラメータ・操作対応表生成部502と同様に、操作情報DB503を参照して、パラメータ・操作対応表を生成する。操作情報DB503の構成は、第1の実施形態における図8に例示される構成と同様である。ここで生成されるパラメータ・操作対応表は、後述するように、第1の実施形態の場合の図9に例示されるパラメータ・操作対応表901に対して、さらに情報が付加されたものである。
パラメータ変更推奨度算出部1703は、操作列入力部1701で入力された各操作ごとに、その操作の失敗時の操作が図4の管理対象サーバ103または管理対象ノード104の動作に及ぼす影響度を示すリスク値を算出する。このとき、パラメータ変更推奨度算出部1703は、各操作の失敗時の操作ごとにリスク値が予め登録されている失敗時リスク値データベース(以下「失敗時リスク値DB」と表記する)1704を参照することにより、各操作ごとのリスク値を算出する。次に、パラメータ変更推奨度算出部1703は、上記算出した各操作ごとのリスク値とパラメータ・操作対応表生成部1702が生成したパラメータ・操作対応表とに基づいて、当該対応表中に現れるパラメータ種別ごとに、そのパラメータ種別が対応付けられる各操作のリスク値の和としてパラメータ変更推奨度を算出する。ここでパラメータ変更推奨度とは、変更しないと失敗したときに大変なことになる度合いを示すものである。
パラメータ設定表生成部1705は、パラメータ・操作対応表に現れるパラメータ種別ごとに、パラメータ変更推奨度算出部1703が算出した当該パラメータ種別のパラメータ変更推奨度の値に応じて、当該パラメータ種別の値の変更が必要か否かを判定する。そして、パラメータ設定表生成部1705は、パラメータ・操作対応表に現れるパラメータ種別のうち、上述の判定により値の変更が必要と判定したパラメータ種別ごとに、利用者にパラメータ値を設定させるためのパラメータ設定表1706を生成して出力する。
自動運用プロセス生成部1707は、図5の第1の実施形態における自動運用プロセス生成部506と同様にして、自動運用プロセスを生成する。ここで生成される自動運用プロセスは、図5の第1の実施形態における図11に例示される自動運用プロセス507と同様の形式を有する。
自動運用プロセス修正部1708は、パラメータ変更推奨度算出部1703が算出した各パラメータ種別のパラメータ変更推奨度の値に応じて、各パラメータ種別の値の変更が必要か否かを判定する。そして、自動運用プロセス修正部1708は、自動運用プロセス生成部1707が生成した自動運用プロセス中の各操作に対応するパラメータ種別のうち、上述の判定により値の変更が必要ないと判定したパラメータ種別については、以下の処理を行う。自動運用プロセス修正部1708は、値の変更が必要ないと判定したパラメータ種別の値を自動運用プロセス中のそのパラメータ種別が対応する各操作の対応するコマンドのパラメータに埋め込む、修正処理を行う。自動運用プロセス修正部1708は、このように修正を行った自動運用プロセスを、最終的な自動運用プロセス1709として出力する。
図18は、図17の自動運用プロセス生成装置の第2の実施形態1700により生成される、利用者がパラメータ値を入力するためのパラメータ設定表1706’及びパラメータ値が入力されたパラメータ設定表1706のデータ構成例を示す図である。このデータ構成例では、図5の自動運用プロセス生成装置の第1の実施形態500により生成される図6に例示されるパラメータ設定表505に対して、以下の点が異なる。自動運用プロセスの運用結果を通知する通知先のメールアドレスを示すパラメータ種別「MAILADDRESS 」と、メールの送信先のホストを示すパラメータ種別「SMTPHOST」が、パラメータ設定表1706による入力対象から除外されている。これは、これらのパラメータ種別については、パラメータ変更推奨度算出部1703が算出するパラメータ変更推奨度の値が小さく、パラメータ設定表生成部1705によってパラメータ値の変更が必要とは判定されなかったためである。すなわち自動運用プロセス1709の運用結果の通知先は、自動運用プロセス1709の運用先の図4の管理対象サーバ103等が変更されても変更される可能性が低く、これらのパラメータ種別が未変更でも問題は生じないと判断されたことになる。
このようにして、図17に示される自動運用プロセス生成装置の第2の実施形態1700では、自動運用プロセス1709の運用先の図4の管理対象サーバ103や管理対象ノード104が変更されたときに、次の効果がある。パラメータ値の変更を必要とするパラメータ種別の数を、第1の実施形態の場合よりもさらに削減することが可能となる。
図19は、図17の自動運用プロセス生成装置の第2の実施形態1700内の操作列入力部1701にて入力されるコマンド操作等のデータ構成例を示す図である。
ここで、例えば図4の開発コンピュータ101の操作者は、入出力装置101−4のキーボードやマウスを用いてディスプレイを見ながら、自動運用プロセス1709に対して順次実行させたい操作順序で、コマンド操作名を順次指定する。図19の第2の実施形態の例で指定されるコマンド操作名群は、図7の第1の実施形態の例の場合と同様である。
図19の第2の実施形態ではさらに、各コマンド操作名に対応させて、そのコマンド操作名に対応する操作の失敗時の操作も、それぞれ指定される。ここで、失敗時の操作「エスカレーションして継続」とは、運用管理者にメール通知を行った上で、自動運用プロセス1709中の続く操作を継続することを意味する。失敗時の操作「エスカレーションして終了」とは、運用管理者にメール通知を行った上で、自動運用プロセス1709を終了することを意味する。失敗時の操作「エスカレーションせず継続」とは、運用管理者にメール通知は行わずに、自動運用プロセス1709中の続く操作を継続することを意味する。失敗時の操作「エスカレーションせず終了」とは、運用管理者にメール通知を行わずに、自動運用プロセス1709を終了することを意味する。失敗時の操作「なし」とは、失敗時に何も操作を実行しないことを意味する。
そのほか、失敗時の操作は、例えばリトライ処理であってもよい。
図20は、図17のパラメータ・操作対応表生成部1702が生成するパラメータ・操作対応表2001のデータ構成例を示す図である。また、図21は、図17の失敗時リスク値DB1704のデータ構成例を示す図である。さらに、図22は、図17のパラメータ変更推奨度算出部1703が算出するパラメータ変更推奨度の算出処理の説明図である。
第2の実施形態において生成されるパラメータ・操作対応表2001は、基本的な構成は、第1の実施形態において生成される図9に例示されるパラメータ・操作対応表901と同様である。すなわち、図20のパラメータ・操作対応表2001では、横方向の各列に、操作列入力部1701で入力された各操作が対応付けられる。また、縦方向の各行に、各操作で使用されるパラメータ種別が、第1の実施形態の場合と同様の図8に例示される構成を有する操作情報DB503から取得されて対応付けられる。 このとき、第1の実施形態の場合と同様に、複数の操作で共有可能なパラメータ種別は、1つの行にまとめられて対応付けられる。共有されないパラメータ種別も1つの行に対応付けられる。そして、図17のパラメータ・操作対応表生成部1702は、操作情報DB503を参照することにより、各列と各行の交差枠ごとに、各列に対応する操作が各行に対応するパラメータ種別に対応するコマンドのパラメータを使用するならばその交差枠に1を設定し、使用しないならばその交差枠に0を設定する。
図20のパラメータ・操作対応表2001ではさらに、「操作失敗時の操作」行と、「操作失敗時のリスク」行と、「パラメータ変更推奨度」の列が追加されている。これらの情報は、図17のパラメータ変更推奨度算出部1703によって制御される
まず、パラメータ変更推奨度算出部1703は、図20のパラメータ・操作対応表2001において、横方向の各操作に対応する列の「操作失敗時の操作」行に、図17の操作列入力部1701で入力された各操作の失敗時の操作(図19参照)が設定される。
例えば、パラメータ・操作対応表2001の操作1に対応する列の「操作失敗時の操作」行に、操作列入力部1701で入力された操作1「ジョブネット停止」に対応する失敗時の操作「エスカレーションして継続」が設定される(図22の2201)。
加えて、パラメータ変更推奨度算出部1703は、図20のパラメータ・操作対応表2001において、横方向の各操作に対応して、操作列入力部1701で入力された各操作の失敗時の操作によって、図17の失敗時リスク値DB1704を参照する。
失敗時リスク値DB1704には、図21に示されるように、失敗時の操作ごとのリスク値が登録されている。例えば、失敗時の操作「エスカレーションして終了」には、最も高いリスク値「5」が対応付けられている。これは、その失敗時の操作が対応付けられた元の操作が失敗したときに、その操作が実行された図4の管理対象サーバ103または管理対象ノード104において最も大きな影響がでることを意味する。また、失敗時の操作「エスカレーションせず終了」「エスカレーションして継続」「エスカレーションせず継続」「なし」の順に、リスク値「4」「3」「2」「1」が対応付けられている。これらの順に、その失敗時の操作が対応付けられた元の操作が失敗したときに、その操作が実行された図4の管理対象サーバ103または管理対象ノード104における影響度が小さくなってゆくことを意味する。
パラメータ変更推奨度算出部1703は、失敗時リスク値DB1704を参照した結果、リスク値を取得し、図20のパラメータ・操作対応表2001の横方向の該当する操作の列の「操作失敗時のリスク」行に設定する。
例えば、パラメータ・操作対応表2001の操作1に対応して、操作1に対応する失敗時の操作「エスカレーションして継続」で失敗時リスク値DB1704が参照される。この結果、リスク値「3」が抽出され、パラメータ・操作対応表2001の操作1に対応する列の「操作失敗時のリスク」行に設定される(図22の2202)。
パラメータ変更推奨度算出部1703は、上述のようにして、パラメータ・操作対応表2001の各列の操作に対応して、「操作失敗時のリスク」行にリスク値を取得すると、次のようにして、各パラメータ種別ごとにパラメータ変更推奨度を算出する。パラメータ・操作対応表2001の各行のパラメータ種別ごとに、各列との交差枠部分に“1”が設定されている列に設定されているリスク値が加算されていく。そして、1つのパラメータ種別の行に対応する上記リスク値の加算結果が、「パラメータ変更推奨度」列のその行に対応する位置にパラメータ変更推奨度として設定される。
例えば、パラメータ種別「HOSTNAME」の行において、各列との交差枠部分に“1”が設定されている操作1〜5の各リスク値が、「3+3+5+2+4」として加算される。その加算結果「17」が、そのパラメータ種別に対応するパラメータ変更推奨度として設定される(図22の2203)。
同様にして、パラメータ種別「JOBNET」についてはパラメータ変更推奨度は「7」、パラメータ種別「WORKUNIT」についてはパラメータ変更推奨度は「5」として算出される。
これらのパラメータ変更推奨度の値は比較的大きいため、システム変更時に利用者がパラメータ値を入力すべきパラメータ設定表1706として設定されることになる(図18参照)。
一方、パラメータ種別「MAILADDRESS 」とパラメータ種別「SMTPHOST」については、パラメータ変更推奨度はともに「1」として算出される。
これらのパラメータ変更推奨度の値は小さいため、システム変更時に利用者がパラメータ値を入力する必要がないとしてパラメータ設定表1706から除外されることになる(図18参照)。
以上のようにして、図17の自動運用プロセス生成装置の第2の実施形態1700では、失敗時の操作に対応するリスク値から算出したパラメータ変更推奨度に基づき、システム変更時に利用者がパラメータ値を入力する必要があるか否かを制御することが可能となる。この結果、システム変更時に入力すべきパラメータ値の数をさらに削減することが可能となる。
図23は、図17の自動運用プロセス修正部1708が実行する自動運用プロセスの修正処理の説明図である。
自動運用プロセス修正部1708は、パラメータ変更推奨度算出部1703が算出した当該パラメータ種別のパラメータ変更推奨度の値に応じて、当該パラメータ種別の値の変更が必要か否かを判定する。例えば図22の例では、パラメータ種別「MAILADDRESS 」とパラメータ種別「SMTPHOST」については、上述のようにパラメータ変更推奨度はともに「1」という低い値である。この結果、自動運用プロセス修正部1708は、これらのパラメータ種別については、パラメータ値の変更が必要ないと判定する。
自動運用プロセス修正部1708は、自動運用プロセス生成部1707が生成した例えば第1の実施形態と同様の図11に例示されるような自動運用プロセス中の各操作1〜6の各パラメータ種別について、以下の処理を実行する。自動運用プロセス修正部1708は、パラメータ種別「MAILADDRESS 」とパラメータ種別「SMTPHOST」が対応する操作6で、次の処理を実行する。自動運用プロセス修正部1708は、図23に示されるように、上記各パラメータ種別に対応するパラメータ値「notice@domain 」と「smtphost」を、操作6の各コマンドの引数「mailaddress 」と「smtpserver_host 」に埋め込む修正を行う。また、特には図示しないが、自動運用プロセス修正部1708は、操作6については、自動運用プロセス1709の実行時に、パラメータセットを行わないように修正を行う。
自動運用プロセス修正部1708は、このように修正を行った自動運用プロセス1709を、最終的な自動運用プロセス1709として出力する。
図24は、図17に示される自動運用プロセス生成装置の第2の実施形態1700のブロック構成を実現するために、たとえば図4の開発コンピュータ101が実行する自動運用プロセス生成プログラムの全体処理を示すフローチャートである。このプログラムは、開発コンピュータ101内の例えば外部記憶装置101−3に記憶され、CPU101−1によって外部記憶装置101−3からメモリ101−2に読み出されて実行される。なお、このプログラムは、例えば可搬記録媒体101−7に記憶されて提供されてよく、駆動装置101−6を介して外部記憶装置101−3にインストールされてよい。
図24において、まず、操作列の入力処理(操作列入力ステップ)が実行される(ステップS2401)。この処理では、前述した図17の操作列入力部1701の動作が実行される。この結果、図19に例示されるコマンド操作名と操作失敗時の操作が順次入力される。
次に、パラメータ・操作対応表生成処理(パラメータ・操作対応関係生成ステップ)が実行される(ステップS2402)。この処理では、前述した図17のパラメータ・操作対応表生成部1702の動作が実行される。この結果、図4の開発コンピュータ101内の例えば外部記憶装置101−3に記憶されている図8に例示される操作情報DB503が参照されることによって、図20に例示されるパラメータ・操作対応表2001が生成される。このパラメータ・操作対応表2001は、例えば図4のメモリ101−2に保持される。
続いて、パラメータ変更推奨度算出処理(パラメータ変更推奨度算出ステップ)が実行される(ステップS2403)。この処理では、前述した図17のパラメータ変更推奨度算出部1703の動作が実行される。この結果、例えば図4のメモリ101−2上のパラメータ・操作対応表2001上で、各パラメータごとのパラメータ変更推奨度が算出される。
次に、パラメータ設定表生成処理(パラメータ設定表生成ステップ)が実行される(ステップS2404)。この処理では、前述した図7のパラメータ設定表生成部1705の動作が実行される。この結果、互いに共有可能なパラメータ種別がまとめられた各パラメータ種別のうち各パラメータ値の変更を必要とするパラメータ種別のパラメータ値を利用者に設定させるための図18に例示されるパラメータ設定表1706‘が生成される。そして、このパラメータ設定表1706’が、外部記憶装置101−3に出力される。
ステップS2403およびS2404の処理とともに、自動運用プロセス生成処理(自動運用プロセス生成ステップ)が実行される(ステップS2405)。この処理では、前述した図7の自動運用プロセス生成部1707の動作が実行される。この結果、第1の実施形態の場合と同様の図11に例示される自動運用プロセスのファイルが生成され、図4の開発コンピュータ101内の例えば外部記憶装置101−3に出力される。
さらに、ステップS2405に続いて、自動運用プロセス修正処理(自動運用プロセス修正ステップ)が実行される(ステップS2406)。この処理では、前述した図7の自動運用プロセス修正部1708の動作が実行される。この結果、ステップS2403で算出された各パラメータのパラメータ変更推奨度の値に応じて、各パラメータ種別の値の変更が必要か否かを判定する。そして、ステップS2405で生成された自動運用プロセス中の各操作のパラメータ種別のうち、上述の判定により値の変更が必要ないと判定したパラメータ種別については、以下の処理が実行される。値の変更が必要ないと判定したパラメータ種別の値を自動運用プロセス中のそのパラメータ種別が対応する各操作の対応するコマンドのパラメータに埋め込む、修正処理が行われる。そして、このように修正が行われた自動運用プロセスが、最終的な自動運用プロセス1709として、例えば図4の外部記憶装置101−3に出力される。さらに、生成されたパラメータ設定表1706‘は、利用者によりパラメータ値の入力が行われ、パラメータ値が入力されたパラメータ設定表1706となる。
以上のようにして、利用者によりパラメータ値の入力が行われたパラメータ設定表1706および開発コンピュータ101の例えば外部記憶装置101−3に出力された自動運用プロセス1709のファイルは、その後、図4の108として示されるように、たとえば管理サーバ102内の外部記憶装置102−3にアップロードされ、実際に運用される。
図24の主要な処理の詳細について、以下に説明する。
図24のステップS2402のパラメータ・操作対応表生成処理の詳細なフローチャートは、第1の実施形態における図13のステップS1302のパラメータ・操作対応表生成処理の詳細を示す図14のフローチャートとほぼ同様である。ただし、図14の各処理の後、図20に示される空の「操作失敗時の操作」行と空の「操作失敗時のリスク」行と空の「パラメータ変更推奨度」列を追加する処理が実行される。
図24のステップS2405の自動運用プロセス生成処理の詳細なフローチャートは、第1の実施形態における図13のステップS1304の自動運用プロセス生成処理を示す図16のフローチャートと同様である。
図25は、図24のステップS2403のパラメータ変更推奨度算出処理を示すフローチャートである。
まず、図24のステップS24502で生成され例えば図4の外部記憶装置101−3に出力されている図20に例示されるパラメータ・操作対応表2001が、例えば図4のメモリ101−2に読み込まれる(ステップS2501)。
次に、図24のステップS2401で例えば図4の入出力装置101−4から順次入力され例えば外部記憶装置101−3に保持されたコマンド操作列が、例えばメモリ101−2に読み込まれる(ステップS2502)。このコマンド操作列は、自動運用プロセスで実行するための操作群である。
次に、メモリ101−2上の図7に例示されるコマンド操作列からコマンド操作が1つずつ選択されながら(ステップS2503)、ステップS2505ですべてのコマンド操作で処理が完了したか否かが判定される。そして、ステップS2505の判定がNOの間、以下のステップS2504の処理が繰り返し実行される。
すなわち、現在選択されているコマンド操作に対して、図24のステップS2401で入力された操作失敗時の操作によって、例えば図4の外部記憶装置101−3に記憶されている失敗時リスク値DB1704が参照され、リスク値が取得される。そして、ステップS2501で例えばメモリ101−2に読み込まれているパラメータ・操作対応表2001の、現在選択されているコマンド操作に対応する列の「操作失敗時のリスク」行に書き込まれる(図22の2202参照)。
このステップS2504の処理が、ステップS2503とS2505のループ処理によってすべてのコマンド操作に対して実行される。この結果、パラメータ・操作対応表2001の、各操作に対応する横方向の各列の「操作失敗時のリスク」行に、各操作に対応するリスク値が書き込まれる。
すべてのコマンド操作で処理が終了しステップS2505の判定がYESになると、続いて以下の処理が実行される。メモリ101−2に読み込まれているパラメータ・操作対応表2001の縦方向の各行から、パラメータ種別が1つずつ選択されながら(ステップS2506)、ステップS2508ですべてのパラメータ種別に対して処理が完了したか否かが判定される。そして、このステップS2508の判定がNOの間、以下のステップS2507の処理が繰り返し実行される。
すなわち、パラメータ・操作対応表2001の現在選択されているパラメータ種別に対応する行において、各列との交差枠部分に“1”が設定されている列に設定されているリスク値が加算される。そして、現在選択されているパラメータ種別の行に対応する上記リスク値の加算結果が、「パラメータ変更推奨度」列のその行に対応する位置にパラメータ変更推奨度として書き込まれる(図22の2203参照)。
このステップS2507の処理が、ステップS2506とS2508のループ処理によって、パラメータ・操作対応表2001上のすべてのパラメータ種別の行に対して実行される。この結果、パラメータ・操作対応表2001の、縦方向の各行の「パラメータ変更推奨度」列に、各パラメータ種別に対応するパラメータ変更推奨度が書き込まれる。
すべてのパラメータで処理が終了しステップS2508の判定がYESになると、図24のステップS2403のパラメータ変更推奨度算出処理に対応する図25のフローチャートの処理を終了する。
図26は、図24のステップS2404のパラメータ設定表生成処理を示すフローチャートである。
まず、図24のステップS24502で生成され例えば図4の外部記憶装置101−3に出力されている図20に例示されるパラメータ・操作対応表2001が、例えば図4のメモリ101−2に読み込まれる(ステップS2601)。
次に、メモリ101−2に読み込まれているパラメータ・操作対応表2001の縦方向の各行から、パラメータ種別が1つずつ選択されながら(ステップS2602)、ステップS2605ですべてのパラメータ種別に対して処理が完了したか否かが判定される。そして、このステップS2605の判定がNOの間、以下のステップS2603およびS2604の処理が繰り返し実行される。
まず、パラメータ・操作対応表2001の現在選択されているパラメータ種別に対応する行の「パラメータ変更推奨度」列に設定されているパラメータ変更推奨度の値が、一定値以上であるか否かが判定される(ステップS2603)。
現在選択されているパラメータ種別に対応するパラメータ変更推奨度の値が一定値以上でステップS2603の判定がYESならば、以下の処理が実行される。現在選択されているパラメータ種別が、パラメータ値設定対象として、例えば図4のメモリ101−2の一時記憶領域に記憶される(ステップS2604)。ステップS2603の判定がNOならば、現在選択されているパラメータは、パラメータ値設定対象とはされない。
ステップS2604の処理の後またはステップS2603の判定がNOとなった後、ステップS2605が実行される。
以上のようにして、パラメータ・操作対応表2001に登録されているパラメータ種別の中から、パラメータ値設定対象となるパラメータ種別が選択される。
すべてのパラメータ種別に対して処理が完了しステップS2605の判定がYESになると、例えば図4のメモリ101−2の一時領域に得られているパラメータ値設定対象となるパラメータ種別を用いて、図18に例示されるパラメータ設定表1706が生成される(ステップS2606)。
ステップS2606の処理の後、図24のステップS2404のパラメータ設定表生成処理に対応する図26のフローチャートの処理を終了する。
図27は、図24のステップS2406の自動運用プロセス修正処理を示すフローチャートである。
まず、図24のステップS24502で生成され例えば図4の外部記憶装置101−3に出力されている図20に例示されるパラメータ・操作対応表2001が、例えば図4のメモリ101−2に読み込まれる(ステップS2701)。
次に、上記パラメータ・操作対応表2001の横方向の各列から操作が1つずつ選択されながら(ステップS2702)、ステップS2708ですべての操作で処理が完了したか否かが判定される。そして、このステップS2708の判定がNOの間、以下のステップS2703からS2707までの処理が繰り返し実行される。
まず、現在選択されている操作で使用されるパラメータ種別が抽出される(ステップS2703)。具体的には、メモリ101−2に読み出されているパラメータ・操作対応表2001上で、現在選択されている操作に対応する列において、“1”が設定されている各行に対応するパラメータ群が抽出される。
次に、抽出されたパラメータ群からパラメータが1つずつ選択されながら(ステップS2704)、ステップS2707で上記パラメータ群中のすべてのパラメータ種別に対して処理が完了したか否かが判定される。そして、このステップS2707の判定がNOの間、以下のステップS2705とS2706の処理が繰り返し実行される。
まず、パラメータ・操作対応表2001の現在選択されているパラメータ種別に対応する行の「パラメータ変更推奨度」列に設定されているパラメータ変更推奨度の値が、一定値以上であるか否かが判定される(ステップS2705)。
現在選択されているパラメータ種別に対応するパラメータ変更推奨度の値が一定値以上でステップS2705の判定がYESならば、以下の処理が実行される。現在選択されているパラメータのパラメータ値が未設定であれば、例えば図4の開発コンピュータ101の入出力装置101−4を介して、利用者にパラメータ値の設定が要求される。その上で、そのパラメータ値が、図24のステップS2405で生成された自動運用プロセス内の現在選択されている操作の対応するコマンドのパラメータの値として、図23に例示される形式で設定される(ステップS2706)。
ステップS2706の処理の後またはステップS2705の判定がNOとなった後は、ステップS2703で抽出されたパラメータ群内のすべてのパラメータ種別に対して処理が完了したか否かが判定される(ステップS2707)。
ステップS2707の判定がNOならば、ステップS2704に戻って、次のパラメータ種別に対する処理が実行される。
ステップS2707の判定がYESになると、ステップS2701で読み込まれたパラメータ・操作対応表2001内のすべての操作で処理が完了したか否かが判定される(ステップS2708)。
ステップS2708の判定がNOならば、ステップS2702に戻って、次の操作に対する処理が実行される。
ステップS2708の判定がYESになると、図24のステップS2406の自動運用プロセス修正処理に対応する図27のフローチャートの処理を終了する。
以上説明した実施形態において、パラメータ値反映表1201(図12参照)は、必ずしも生成される必要はなく、プログラム処理によって代替されてもよい。
以上の実施形態では、自動運用プロセス内の各操作はいずれかのパラメータ種別が対応することを前提として説明したが、パラメータ種別が対応しない操作が自動運用プロセス内にあってもよく、その場合には、本実施形態で説明したパラメータ種別に関する制御処理は、当然スキップされる。
以上の実施形態では、パラメータ・操作対応表を自動運用プロセスに内部パラメータとして保持する構成としてが、パラメータ種別と操作の対応関係は、必ずしもパラメータ・操作対応表として自動運用プロセスに保持させる必要はなく、自動運用プロセスの実行時に、例えば別ファイルとして提供されたり、あるいは都度操作情報DB503にアクセスして生成されてもよい。
第2の実施形態において、パラメータ変更推奨度は、自動運用プロセス内の操作ごとのリスク値に基づいて決定されたが、その他の基準に基づいて決定されてもよい。
また、第2の実施形態では、パラメータ種別ごとにパラメータ値を変更する必要があるか否かの判定は、パラメータ変更推奨度を一定値と比較するようにしたが、一定値でなくてもよく、様々な基準に基づいてパラメータ変更推奨度を評価して判定してもよい。
以上の第1および第2の実施形態に関して、更に以下の付記を開示する。
(付記1)
コンピュータを自動運用するための各操作の一連の作業手順の定義を含むデータである自動運用プロセス生成方法であって、
コンピュータが、
1つ以上の操作を含む操作列の入力を受け取り、
操作と操作で使われるパラメータの種別とを対応づけて記憶するデータベースを参照して、前記パラメータ種別が入力された各操作のどの操作に対応するかを示す対応関係を生成し、
当該対応関係中に現れるパラメータ種別への値の設定を受け付け、前記定義に従って実行される操作が使用するパラメータ種別に当該値を反映した反映情報を生成し、
前記値の変更が必要なパラメータ種別についてのみ前記パラメータ種別への前記値の設定を行う、パラメータ設定情報を生成して出力し、前記値の変更が必要ないパラメータ種別については前記値を前記自動運用プロセス中の前記操作の定義に埋め込み、
前記パラメータ種別の値を変更するとき、前記入力された各操作の失敗が管理対象のコンピュータの動作に及ぼす影響度を示すリスク値を算出し、
前記入力された各操作のリスク値と前記対応関係とに基づいて、前記対応関係中のパラメータ種別ごとに、前記パラメータ種別が対応付けられる前記各操作のリスク値に基づいてパラメータ変更推奨度を算出し、
前記パラメータ変更推奨度の値に応じて、前記パラメータ種別の値の変更が必要か否かを判定する、
ことを特徴とする自動運用プロセス生成方法。
(付記2)
前記対応関係は1つのパラメータ種別が複数の操作に共有するように形成する
ことを特徴とする付記1に記載の自動運用プロセス生成方法。
(付記3)
前記生成した反映情報を自動運用プロセスに含ませて出力する、
ことを特徴とする付記1または2のいずれかに記載の自動運用プロセス生成方法。
(付記4)
前記パラメータ種別は1つ以上のパラメータ名に対応する、
ことを特徴とする付記1に記載の自動運用プロセス生成方法。
(付記5)
前記リスク値は前記各操作の失敗時の操作ごとに予め設定し、
前記予め設定したリスク値に基づいて前記入力された各操作のリスク値を算出する、
ことを特徴とする付記1に記載の自動運用プロセス生成方法。
(付記6)
コンピュータを自動運用するための各操作の一連の作業手順の定義を含むデータである自動運用プロセス生成装置であって、
1つ以上の操作を含む操作列の入力を受け取る手段と、
操作と操作で使われるパラメータの種別とを対応づけて記憶するデータベースを参照して、前記パラメータ種別が入力された各操作のどの操作に対応するかを示す対応関係を生成する手段と、
当該対応関係中に現れるパラメータ種別への値の設定を受け付け、前記定義に従って実行される操作が使用するパラメータ種別に当該値を反映した反映情報を生成する手段と、
前記値の変更が必要なパラメータ種別についてのみ前記パラメータ種別への前記値の設定を行う、パラメータ設定情報を生成して出力し、前記値の変更が必要ないパラメータ種別については前記値を前記自動運用プロセス中の前記操作の定義に埋め込む手段と、
前記パラメータ種別の値を変更するとき、前記入力された各操作の失敗が管理対象のコンピュータの動作に及ぼす影響度を示すリスク値を算出する手段と、
前記入力された各操作のリスク値と前記対応関係とに基づいて、前記対応関係中のパラメータ種別ごとに、前記パラメータ種別が対応付けられる前記各操作のリスク値に基づいてパラメータ変更推奨度を算出する手段と、
前記パラメータ変更推奨度の値に応じて、前記パラメータ種別の値の変更が必要か否かを判定する手段と、
を具備することを特徴とする自動運用プロセス生成装置。
(付記7)
コンピュータを自動運用するための各操作の一連の作業手順の定義を含むデータである自動運用プロセス生成プログラムであって、
1つ以上の操作を含む操作列の入力を受け取り、
操作と操作で使われるパラメータの種別とを対応づけて記憶するデータベースを参照して、前記パラメータ種別が入力された各操作のどの操作に対応するかを示す対応関係を生成し、
当該対応関係中に現れるパラメータ種別への値の設定を受け付け、前記定義に従って実行される操作が使用するパラメータ種別に当該値を反映した反映情報を生成し、
前記値の変更が必要なパラメータ種別についてのみ前記パラメータ種別への前記値の設定を行う、パラメータ設定情報を生成して出力し、前記値の変更が必要ないパラメータ種別については前記値を前記自動運用プロセス中の前記操作の定義に埋め込み、
前記パラメータ種別の値を変更するとき、前記入力された各操作の失敗が管理対象のコンピュータの動作に及ぼす影響度を示すリスク値を算出し、
前記入力された各操作のリスク値と前記対応関係とに基づいて、前記対応関係中のパラメータ種別ごとに、前記パラメータ種別が対応付けられる前記各操作のリスク値に基づいてパラメータ変更推奨度を算出し、
前記パラメータ変更推奨度の値に応じて、前記パラメータ種別の値の変更が必要か否かを判定する、
処理をコンピュータに実行させる自動運用プロセス生成プログラム。