(57)【特許請求の範囲】
【請求項１】
システムの構築手順を記述したスクリプトを入力する入力手段と、
前記スクリプトに含まれる複数の所定構成要素を複数のノードとして抽出し、ノード間の依存関係に基づいて、ノード間のリンクを作成し、ノードの情報とリンクの情報とをデータ格納部に格納する分析手段と、
前記データ格納部からノードの情報及びリンクの情報を読み出し、当該ノードの情報及びリンクの情報から有向グラフを作成し、当該有向グラフを出力する出力手段と、
前記有向グラフにおけるあるノードが障害箇所である場合に、障害の原因の被疑箇所として、当該障害箇所のノードを始点とするリンクの終点のノードを前記データ格納部から抽出する原因検索手段とを備え、
前記複数の所定構成要素のそれぞれは、前記スクリプトにおいて、システムの構築処理の記述をブロック化したブロックであり、前記構築処理は、ソフトウェアのインストール、インストールしたソフトウェアの設定、及び、設定したソフトウェアのスタートを含む複数の構築処理のうちのいずれか１つの構築処理である
ことを特徴とするシステム管理支援装置。
【請求項２】
システムの構築手順を記述したスクリプトを入力する入力手段と、
前記スクリプトに含まれる複数の所定構成要素を複数のノードとして抽出し、ノード間の依存関係に基づいて、ノード間のリンクを作成し、ノードの情報とリンクの情報とをデータ格納部に格納する分析手段と、
前記データ格納部からノードの情報及びリンクの情報を読み出し、当該ノードの情報及びリンクの情報から有向グラフを作成し、当該有向グラフを出力する出力手段と、
前記有向グラフにおける一以上のノードのパラメータを変更する指示を受けた場合に、前記一以上のノードと他のノードとの間の依存関係に基づいて、当該パラメータを変更するための工事手順を作成する変更手順作成手段とを備え、
前記複数の所定構成要素のそれぞれは、前記スクリプトにおいて、システムの構築処理の記述をブロック化したブロックであり、前記構築処理は、ソフトウェアのインストール、インストールしたソフトウェアの設定、及び、設定したソフトウェアのスタートを含む複数の構築処理のうちのいずれか１つの構築処理である
ことを特徴とするシステム管理支援装置。
【請求項３】
前記分析手段は、前記ブロックに記述された情報に基づいて、前記依存関係を決定する
ことを特徴とする請求項１又は２に記載のシステム管理支援装置。
【請求項４】
前記分析手段は、前記スクリプトに含まれる手順情報に基づいて、前記依存関係を決定する
ことを特徴とする請求項１ないし３のうちいずれか１項に記載のシステム管理支援装置。
【請求項５】
前記分析手段は、ノードに対応する構築処理で使用されるパラメータを抽出し、ノード間でのパラメータが一致するか、不一致であるか、又は、包含関係を有するかを示す関連性情報を作成し、当該関連性情報を前記データ格納部に格納する
ことを特徴とする請求項１ないし４のうちいずれか１項に記載のシステム管理支援装置。
【請求項６】
システム管理支援装置により実行されるシステム管理支援方法であって、
システムの構築手順を記述したスクリプトを入力する入力ステップと、
前記スクリプトに含まれる複数の所定構成要素を複数のノードとして抽出し、ノード間の依存関係に基づいて、ノード間のリンクを作成し、ノードの情報とリンクの情報とをデータ格納部に格納する分析ステップと、
前記データ格納部からノードの情報及びリンクの情報を読み出し、当該ノードの情報及びリンクの情報から有向グラフを作成し、当該有向グラフを出力する出力ステップと、
前記有向グラフにおけるあるノードが障害箇所である場合に、障害の原因の被疑箇所として、当該障害箇所のノードを始点とするリンクの終点のノードを前記データ格納部から抽出する原因検索ステップとを備え、
前記複数の所定構成要素のそれぞれは、前記スクリプトにおいて、システムの構築処理の記述をブロック化したブロックであり、前記構築処理は、ソフトウェアのインストール、インストールしたソフトウェアの設定、及び、設定したソフトウェアのスタートを含む複数の構築処理のうちのいずれか１つの構築処理である
ことを特徴とするシステム管理支援方法。
【請求項７】
システム管理支援装置により実行されるシステム管理支援方法であって、
システムの構築手順を記述したスクリプトを入力する入力ステップと、
前記スクリプトに含まれる複数の所定構成要素を複数のノードとして抽出し、ノード間の依存関係に基づいて、ノード間のリンクを作成し、ノードの情報とリンクの情報とをデータ格納部に格納する分析ステップと、
前記データ格納部からノードの情報及びリンクの情報を読み出し、当該ノードの情報及びリンクの情報から有向グラフを作成し、当該有向グラフを出力する出力ステップと、
前記有向グラフにおける一以上のノードのパラメータを変更する指示を受けた場合に、前記一以上のノードと他のノードとの間の依存関係に基づいて、当該パラメータを変更するための工事手順を作成する変更手順作成ステップとを備え、
前記複数の所定構成要素のそれぞれは、前記スクリプトにおいて、システムの構築処理の記述をブロック化したブロックであり、前記構築処理は、ソフトウェアのインストール、インストールしたソフトウェアの設定、及び、設定したソフトウェアのスタートを含む複数の構築処理のうちのいずれか１つの構築処理である
ことを特徴とするシステム管理支援方法。
【請求項８】
コンピュータを、請求項１ない５のうちいずれか１項に記載のシステム管理支援装置における各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムの運用・管理の技術分野に関連するものである。
【背景技術】
【０００２】
従来からネットワーク上で様々なシステムが構築され、運用されている。従来技術においては、システムの構築／運用に当たり、システム構築を行うための「構築手順書」と、構築前は構築手順書作成のために用いられ、構築後は運用時にシステムを俯瞰的に確認することに用いられる「設計書」の作成が必須である。
【０００３】
上記の「設計書」は、システムの運用中にシステムを保守する運用者が使用する。例えば、システムの障害を監視する監視システムは、アラートが発生している「サーバ名」とアラート内容（ログのキーワードやＴＣＰ／ＩＰポート・アドレスのダウン、プロセスダウンなど）を通知する。運用者は、このアラートと設計書とを突き合わせ、「何が起きたか」を把握し、対応手順書等に従った対処を行う。
【０００４】
「構築手順書」と「設計書」については、作成をサポートするツールなどが存在する。構築手順書については、例えば、非特許文献１〜３に開示された自動化ツールが存在する。設計書については、例えば非特許文献５、６に開示された設計書自動作成補助ツールが存在する。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】https://www.ansible.com/、平成２８年４月６日検索
【非特許文献２】https://www.chef.io/chef/、平成２８年４月６日検索
【非特許文献３】https://puppetlabs.com/、平成２８年４月６日検索
【非特許文献４】http://www.itsmf-japan.org/、平成２８年４月６日検索
【非特許文献５】https://www.microsoft.com/ja-jp/dev/default.aspx、平成２８年４月６日検索
【非特許文献６】http://www.sint.co.jp/products/obdz/product/product.html、平成２８年４月６日検索
【非特許文献７】http://h50146.www5.hp.com/info/newsroom/pr/fy2003/fy03-047.html、平成２８年４月６日検索
【非特許文献８】http://www.zabbix.com/jp/、平成２８年４月６日検索
【非特許文献９】http://www-06.ibm.com/systems/jp/software/director/、平成２８年４月６日検索
【発明の概要】
【発明が解決しようとする課題】
【０００６】
構築手順書と設計書は、同一システムについて「作り方」と「作った結果」を記載しているため、パラメータは共通である。しかし、これらは二重に作成する必要があり、稼働がかかっていた。また、運用中にシステムの改修や変更などを行う際には、新たに「変更手順書」を作成し、その変更に即して「設計書」を再作成・修正する必要があった。上述したサポートツールは手順書作成や設計書作成の稼働を軽減してくれるものの、根本的に２つを作成しなくてはならないことは変わらない。
【０００７】
本発明は上記の点に鑑みてなされたものであり、構築手順書から設計書を自動的に作成することを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の実施の形態によれば、システムの構築手順を記述したスクリプトを入力する入力手段と、
前記スクリプトに含まれる複数の所定構成要素を複数のノードとして抽出し、ノード間の依存関係に基づいて、ノード間のリンクを作成し、ノードの情報とリンクの情報とをデータ格納部に格納する分析手段と、
前記データ格納部からノードの情報及びリンクの情報を読み出し、当該ノードの情報及びリンクの情報から有向グラフを作成し、当該有向グラフを出力する出力手段と、
前記有向グラフにおけるあるノードが障害箇所である場合に、障害の原因の被疑箇所として、当該障害箇所のノードを始点とするリンクの終点のノードを前記データ格納部から抽出する原因検索手段とを備え、
前記複数の所定構成要素のそれぞれは、前記スクリプトにおいて、システムの構築処理の記述をブロック化したブロックであり、前記構築処理は、ソフトウェアのインストール、インストールしたソフトウェアの設定、及び、設定したソフトウェアのスタートを含む複数の構築処理のうちのいずれか１つの構築処理である
ことを特徴とするシステム管理支援装置が提供される。
【発明の効果】
【０００９】
本発明の実施の形態によれば、構築手順書から設計書を自動的に作成することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態におけるシステム管理支援装置１００の構成図である。
【図２】自動構築スクリプトの例を示す図である。
【図３】自動構築スクリプトを実行する工事手順書の例を示す図である。
【図４】依存関係を表す有向グラフデータの作成を説明するための図である。
【図５】データの表示を説明するための図である。
【図６】関連性の検索、及び表示の例を説明するための図である。
【図７】関連性の検索、及び表示の例を説明するための図である。
【図８】表示例１を示す図である。
【図９】表示例２を示す図である。
【図１０】表示例３を示す図である。
【図１１】表示例４を示す図である。
【図１２】表示例５を示す図である。
【図１３】表示例６を示す図である。
【図１４】変更の影響把握に関する表示例７を示す図である。
【図１５】変更の影響把握に関する表示例８を示す図である。
【図１６】変更の影響把握に関する表示例９を示す図である。
【図１７】故障箇所の設定と原因特定を説明するための図である。
【図１８】原因特定に関する例を説明するための図である。
【図１９】原因特定に関する例を説明するための図である。
【図２０】原因特定に関する例を説明するための図である。
【図２１】工事手順自動作成の概要を説明するための図である。
【図２２】工事手順自動作成の対象例を説明するための図である。
【図２３】工事手順自動作成の動作例を説明するための図である。
【図２４】工事手順自動作成の動作例を説明するための図である。
【図２５】工事手順自動作成の動作例を説明するための図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施の形態（本実施の形態）を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
【００１２】
（本実施の形態の概要）
本実施の形態では、システムの開発者が従来行っていた「構築手順書」と「設計書」の作成を「構築手順書」の作成のみとする。また、本実施の形態では、「構築手順書」として、例えば、非特許文献１に開示されている構築自動化ツールで使用される自動構築スクリプトを使用する。
【００１３】
そして、後述するシステム管理支援装置１００が、自動構築スクリプトを解析し、設計書を作成する。この設計書は有向グラフとして作成され、当該有効グラフに基づいて、システム内の依存関係等を分かり易く表示することが可能である。
【００１４】
依存関係の把握には、例えば、自動構築スクリプト内部に記載された依存関係を示すパラメータ、自動構築スクリプトの実行順序、同一パラメータ、パラメータの包含関係、パラメータの命名規則等が用いられる。
【００１５】
また、自動構築スクリプトを解析する際に、システムを構成するサーバ毎の情報を解析するだけでなく、システムを構成するサーバ間についても依存関係等を解析して、システムの系全体についての情報を表示することを可能としている。
【００１６】
以下、本実施の形態におけるシステム管理支援装置１００の構成、動作を詳細に説明する。なお、以下で説明する表示の例においては、依存関係を示すリンク、関連性を示す線等に、依存関係や関連性を分かり易く示すための色が付されてもよい。
【００１７】
（装置構成）
図１に、本実施の形態におけるシステム管理支援装置１００の構成例を示す。図１に示すように、システム管理支援装置１００は、分析部１０１、データ格納部１０２、変換部１０３、操作画面作成部１０４、関連情報検索部１０５、障害箇所設定部１０６、原因検索部１０７、変更手順作成部１０８を有する。各部の動作の概要は以下のとおりである。
【００１８】
分析部１０１は、入力された自動構築スクリプトから有向グラフに相当するノード情報及びリンク情報を作成し、作成したノード情報及びリンク情報（これをまとめて有向グラフデータと呼ぶ）をデータ格納部１０２に格納する。また、分析部１０１は、パラメータ間の関係等の関連情報についても自動構築スクリプトから抽出し、データ格納部１０２に格納する。データ格納部１０２には、有向グラフデータ、関連情報等が格納される。
【００１９】
変換部１０３は、データ格納部１０２に格納されたデータや操作画面作成部１０４により作成されたデータ等を、表示のためのデータ(例：HTML、PDF、PostScript)に変換し、出力する。操作画面作成部１０４は、ユーザが画面上で操作を行うためのデータ（例：変更情報を入力するためのインタフェース画面のデータ等）を作成する。
【００２０】
関連情報検索部１０５は、有向グラフデータ、関連情報等に基づいて、ある情報に関連した情報を検索する。障害箇所設定部１０６は、有向グラフ内における障害箇所となるノードを設定する。原因検索部１０７は、障害箇所等に基づき、障害の原因と推定されるノードを検索し、特定する。変更手順作成部１０８は、システムにおける変更（例：設定されたアドレスの変更）を行う場合の工事手順を作成する。
【００２１】
本実施の形態におけるシステム管理支援装置１００は、例えば、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、システム管理支援装置１００が有する機能は、当該コンピュータに内蔵されるＣＰＵやメモリ、ハードディスクなどのハードウェア資源を用いて、システム管理支援装置１００で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体（可搬メモリ等）に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
【００２２】
以下、システム管理支援装置１００における各機能部の処理内容を詳細に説明する。
【００２３】
（有向グラフデータの作成処理）
まず、分析部１０１により実行される有向グラフデータの作成処理について説明する。前述したように、分析部１０１は、自動構築スクリプトから有向グラフデータを作成する。
【００２４】
図２に、分析部１０１への入力となる自動構築スクリプトの一例を示す。本実施の形態で使用する自動構築スクリプトは、図２に示すように、再利用を意識して複数のブロックに分けて作成される。また、ブロックの中で使用する値（パラメータ）は変数化され、変数の値はブロックの外にまとめて記述される。また、各ブロックには、他のブロックとの依存関係を設定することもできる。
【００２５】
より具体的に、例えばAP（アプリケーション）サーバ（例：Webサーバ）を構築するためのソフトウェアに関しては、自動構築スクリプトは、通常、ソフトウェアのインストールを行う「install_[識別名]」、インストールしたソフトウェアの設定を行う「setting_[識別名]」、設定したソフトウェアをスタートさせる「start_[識別名]」の３のブロックを有する。図２は、識別名＝AAAAというソフトウェアの例について、当該３つのブロックを有することが示されている。また、図２の例では、各ブロックはroleと呼ばれる。
【００２６】
また、通常、工事においては「切り戻し手順」を作成するが、切り戻し手順は構築手順の逆向きとして「start」は「stop」、「setting」は「reset」、「install」は「uninstall」を対応付けてブロック化を行う。この対応ブロックは後述する工事手順の自動生成に使用されるので、入力データとして、データ格納部１０２に予め格納される。
【００２７】
なお、図２は、install/setting/start(切り戻し手順としてはuninstall/reset/stop)の３つ全てが揃っている例を示しているが、OSのネットワーク設定のようにsetting/start(reset/stop)しかないもの、OSのユーザ設定のようにsetting(reset)しかないものなどもある。
【００２８】
図３は、図２に示すようなブロックを適用して、ソフトウェアAAAAのインストールや設定等を行うことでWebサーバ構築を行う場合のイメージを示す図である。図３に示すように、ブロックの実行手順を記載した工事手順書（これも、分析部１０１に入力される自動構築スクリプトに含まれる）が準備され、当該工事手順書に従って、各ブロックがロードされ、実行（install/setting/start）される。工事手順書には、対象のサーバ（図３の例では"Web"）と当該サーバに対して実行するブロックが、実行される順番で記述されている。後述するように、このような順番により、ブロック間、サーバ間の依存関係を把握できる。また、各ブロックに記述されている依存関係や、パラメータ等によっても依存関係を把握できる。なお、工事手順書に記載されてないブロックについても、ブロック間の依存関係に従って、実行される場合がある。また、自動構築スクリプトのブロックと工事手順書をあわせて「構築手順書」と呼んでも良い。以降、「構築手順書」は、自動構築スクリプトのブロックと工事手順書をあわせたものを指す。
【００２９】
図４に示すように、上記のような自動構築スクリプトが分析部１０１に入力され、分析部１０１は、ブロック間やサーバ間の依存関係を示す有向グラフデータを作成する。
【００３０】
依存関係について説明すると、例えば、[install_AAAA]と[setting_AAAA]に関して、ソフトウェアAAAAはインストールされないと設定できないから、[setting_AAAA]は[install_AAAA]に依存する、という依存関係がある。この場合、本実施の形態では、依存されるほうに矢印が向くように、[install_ AAAA]←[setting_ AAAA]と有向グラフとして記述する。同様に、ソフトウェアAAAAは設定されないと正常に動作しないためスタートできないから、[start_ AAAA]は[setting_ AAAA]に依存する、つまり、[setting_ AAAA]←[start_ AAAA]と記述する。
【００３１】
すなわち、「あるブロックの実行のために前もって実行しておくべきブロック」の２つのブロック間に「依存関係」があるとする。上記の３つのブロックの例では、有効グラフとして、[install_ AAAA]←[setting_ AAAA]←[start_ AAAA]と記述する。分析部１０１は、このような有向グラフに相当する有向グラフデータを作成する。
【００３２】
なお、依存関係は、単一のソフトウェアモジュール内のみでなく、ソフトウェアモジュール間にも存在する。例えば、WebサーバソフトウェアモジュールがDBサーバソフトウェアモジュールを使用し、WebサーバソフトウェアモジュールはDBサーバソフトウェアモジュールがスタートしていないとサービスの提供ができないとする。この場合には、以下の有向グラフで示す依存関係が存在する。
【００３３】
[install_database]←[setting_database]←[start_database]
↑
[install_webserver]←[setting_webserver]←[start_webserver]
＜分析部１０１の処理手順＞
自動構築スクリプトの入力がされた分析部１０１は、以下の手順で有向グラフデータを作成する。
【００３４】
ステップＳ１０１）まず、分析部１０１は、一連のブロックを適用する対象となるサーバ情報を取得する。例えば、分析部１０１は、工事手順書に記載されている、一連のブロックの適用対象となるホストの情報を当該サーバ情報として取得することができる。
【００３５】
ステップＳ１０２）次に、分析部１０１は、対象のサーバ毎に、自動構築スクリプトにおける複数ブロックをinstall/setting/startの３つのグループに分けノード化する。なお、前述したように、スクリプトの適用対象によっては、installのみ、settingのみ等の場合もある。
【００３６】
ステップＳ１０２では、例えば、ソフトウェアＡに関するスクリプトのブロックとしてinstall/setting/startの３つがあり、ネットワーク設定に関するスクリプトのブロックとしてsettingがある場合、分析部１０１は、ソフトウェアＡについてのinstallのノード、settingのノード、startのノードを作成し、ネットワーク設定についてのsettingのノードを作成する。
【００３７】
ステップＳ１０３）次に、分析部１０１は、各ブロックに関連する変数（パラメータ）をnetwork/filepath/id/device等のグループに分けて関連付ける。すなわち、ファイルパス、ネットワーク、ユーザ、log、conf、serviceなど、システムを構成する内容によってグルーピングし、一致、不一致、関係性（例：包含関係）を抽出し、その情報をデータ格納部１０２に格納する。より詳細には、ファイルパスは前方一致、ネットワークはセグメント管理、ユーザはid,name,$home、logはローカルとリモート、confはファイル格納場所と起動時読み込み、serviceは自動起動、起動順序などの観点で、一致、不一致、関係性を抽出する。一例として、ソフトウェアAのsettingにおける設定アドレスがアドレス１であり、ソフトウェアBのsettingにおける設定アドレスがアドレス１である場合、両者は一致の関係があるとして、そのことを示す情報が格納される。
【００３８】
ステップＳ１０４）分析部１０１は、依存関係のあるノード間について、ノード間を結びつけるリンク情報を作成する。依存関係は、例えば、工事手順書におけるブロックの実行手順から判断することができる。また、ブロック内に依存関係の記述がある場合には、その記述から判断することもできる。
【００３９】
ステップＳ１０５）分析部１０１は、上記の処理により得られたノード情報及びリンク情報、パラメータの関連情報等をサーバ情報に紐づけてデータ格納部１０２に格納する。
【００４０】
図４の左側には、データ格納部１０２に格納されるデータのイメージが示されている。当該イメージは、右側に示す入力情報に対応するものである。図４の例では、install_AAAA、setting_AAAA、start_AAAAのノード情報と、これらの間に「install_AAAA←setting_AAAA←start_AAAA」で示される依存関係が存在することを示すリンク情報がデータ格納部１０２に格納される。また、図示するように、各ノードにパラメータが関連付けられている。
【００４１】
（変換、表示動作）
変換部１０３は、上記のようにして作成された有向グラフデータを変換し、可視化に適した形式のデータにして出力する。例えば、ネットワーク経由で、ユーザ端末にWeb画面として表示を行う場合、変換部１０３は、有向グラフデータをhtmlデータに変換し、出力する。また、変換部１０３は、有向グラフデータを印刷データや、数式で使用するようなデータに変換し、出力することもできる。また、変換部１０３をディスプレイを含む機能部とし、当該ディスプレイに有向グラフを表示させる形態であってもよい。
【００４２】
図５は、APサーバの構築に関する有向グラフをWebサーバからユーザ端末に対してWebページとして出力する場合の例を示している。以下で説明する例では、この形態を想定している。
【００４３】
変換部１０３は、以下の手順で、データ格納部１０２に格納されている有向グラフデータから、表示データを作成し、出力する。以下では、例として、「APサーバ」についての有向グラフを表示する場合について説明する。
【００４４】
ステップＳ２０１）変換部１０３は、データ格納部１０２からAPサーバに関連するノードの情報を全て取得する。
【００４５】
ステップＳ２０２）次に、変換部１０３は、取得したノードを含む（つまり、ノードを端点とする）リンク情報を取得する。
【００４６】
ステップＳ２０３）そして、変換部１０３は、ノード情報とリンク情報とから有向グラフを作成する。なお、ここで作成される有向グラフは、例えば、有向グラフの画像である。
【００４７】
ステップＳ２０４）変換部１０３は、作成した有向グラフを、表示するデータに変換して(例：PDF/HTML/PS等)、当該データを出力する。
【００４８】
なお、上記の例では、APサーバという１つのサーバに関する有向グラフを表示する例であるが、複数のサーバの有向グラフを結び付けても表示することも可能である。
【００４９】
例えば、図６（ａ）に示す、データ格納部１０２に格納されている有向グラフデータ（便宜上、表示イメージで記載している）において、APサーバとLB（ロードバランシング）サーバとの間に依存関係がある場合、図６（ｂ）に示すように、各サーバの有向グラフを結びつけた表示を行うことができる。なお、図６は、APサーバにソフトウェアAAAAがインストールされ、LBサーバにソフトウェアlbがインストールされる場合の例を示している。以下で説明する図７についても同様である。
【００５０】
（関連性検索、及び表示）
本実施の形態では、関連情報検索部１０５が、依存関係がない関連性のあるデータについての検索を行って、変換部１０３がその表示を行うことができる。
【００５１】
例えば、図７（ａ）に示すように、有向グラフデータにおいて、APサーバとLBサーバとに依存関係がないが、同じIPアドレスの設定がなされる場合を想定する。この場合、例えば、図７（ｂ）の上側に示すように、APサーバについての有向グラフとともに検索を行うことを示す操作ボタンが表示される。この操作ボタン等の操作に関わる画面データは、操作画面作成部１０４により、作成され、変換部１０３を介して表示されるものである。
【００５２】
ユーザが操作ボタンを操作することで、関連情報検索部１０５が、データ格納部１０２における、APサーバの有向グラフに関連する情報を検索する。ここでは、関連情報検索部１０５は、APサーバのsettingのノードに関連付けられたIPアドレスと同じIPアドレスがLBサーバの有向グラフデータにあることを検知し、図７（ｂ）の下側に示すように、当該IPアドレスとともに、APサーバの有向グラフとLBサーバの有向グラフを表示する。これにより、同じIPアドレスが設定されることが一目でわかる。
【００５３】
関連情報検索部１０５の処理は、例えば、以下の手順で実行される。
【００５４】
ステップＳ２５１）関連情報検索部１０５は、操作画面からユーザにより指定された情報そのものを検索する。
【００５５】
ステップＳ２５２）そして、関連情報検索部１０５は、指定された情報に関連する情報を検索する。一例として、指定された情報があるノードの特定のIPアドレスであるとすると、当該IPアドレスを包含するセグメント情報を有するノードを検索する。また、指定された情報があるノードの特定のファイルパスであるとすると、当該ファイルパスと前方一致で、所定の文字数まで一致する情報を有するノードを検索する。
【００５６】
ステップＳ２５３）関連情報検索部１０５は、上記のようにして検索された関連するノードが含まれる情報を表示する。
【００５７】
（表示の具体例）
以下、本実施の形態におけるシステム管理支援装置１００において、これまでに説明した機能により表示される具体的な表示例を説明する。
【００５８】
ここでは、分析部１０１への入力情報にAP（アプリケーション）サーバ構築情報と、LB（ロードバランシング）サーバ構築情報が含まれている。また、APサーバ構築情報は、デーモン化を行うソフトウェアであるBBBB（インタプリタCCCC上で動作するソフトウェア）、BBBBがデーモン化対象とするCCCCスクリプト、CCCCスクリプトのユーザ設定情報、CCCCスクリプトのインタプリタであるCCCC、CCCCスクリプトが使用するデータベースソフトであるDDDD、及びネットワーク設定情報のそれぞれに対応する自動構築スクリプトのブロックを含む。また、ＬＢサーバ構築情報は、WebサーバソフトであるEEEE、及びネットワーク設定情報のそれぞれに対応する自動構築スクリプトのブロックを含む。
【００５９】
図８は、表示例１を示す。BBBBとCCCCスクリプトは、いずれもCCCC上で動作するため、図８の（１）と（２）の矢印付き線で示すように、依存関係としてCCCCを指示している。また、LBサーバに対し、同様にEEEEというソフトウェアにおけるinstall/setting/startの依存関係が表示されている。
【００６０】
図９は、表示例２を示す。本実施の形態で使用する自動構築スクリプトにおける各ブロックでは、インストールや設定でパラメータを使用する。前述したように、これを各ブロックで把握し、関連付けられる内容でサーバをまたいだ依存関係を表示することができる。単にパラメータの一致だけでなく、ファイルパスの部分一致や、Networkセグメントの包含関係等も考慮して関連性を表示することが可能である。これにより、関連性、影響範囲の把握を行うことができる。このような関連性の検出は、システム管理支援装置１００の関連情報検索部１０５により実行される。
【００６１】
図９に示す例では、LBサーバのブロックsetting_EEEEで使用するパラメータに、APサーバのsetting_BBBB(より具体的にはBBBB.conf)で使用されているIPアドレス（10.0.0.1）が指定されている。そして、この両者は関連性があることが点線の表示で示されている。
【００６２】
また、LBサーバのnetwork_settingで使用されいているアドレスは、BBBB.confの中に記載されているセグメントに含まれるため、これも関連性があるとして表示がなされている。
【００６３】
図１０に、表示例３を示す。表示例３では、サーバ間での依存関係を表示している。例えば、分析部１０１は、図１０（ｂ）に示すように、構築手順書に記載されたサーバの構築の「実行順序」に基づき、サーバ間の依存関係を把握し、サーバ間で依存関係を示すリンクを設定することができる。図１０（ｂ）の例では、APサーバを先に、次にLBサーバを構築するので、「APサーバ←LBサーバ」という依存関係になり、図１０（ａ）に示すとおりの表示を行うことができる。また、構築手順書の実行順序で依存関係を把握することのほか、スクリプトの内部のパラメータの意味に基づいて依存関係を把握することも可能である。
【００６４】
図１１（ａ）は、表示例４を示す。システムによっては「サーバAのモジュール１が、サーバBに依存し、サーバBはサーバAのモジュール２に依存する」というような、サーバ内部のモジュールも関係する依存関係が生じる場合がある。表示例４はそのような場合の表示例である。表示例３の場合と同様に、分析部１０１は、このような依存関係についても構築手順書に基づき把握することが可能である。
【００６５】
図１１（ｂ）に示すように、本例では、構築手順書における実行手順は、（１）APサーバのCCCCまで、（２）LBサーバ、（３）APサーバのBBBBまで、の順番である。よって、図１１（ａ）に示すとおり、「APサーバのCCCC←LBサーバ←APサーバのBBBB」という依存関係が表示される。図１１（ａ）におけるCCCCが上記のモジュール２に相当し、図１１（ａ）におけるLBサーバが上記のサーバBに相当し、図１１（ａ）におけるBBBBが上記のモジュール１に相当する。
【００６６】
図１２は、表示例５を示す。分析部１０１が、パラメータによりサーバ間依存関係の把握を行う場合の例である。表示例５では、自動構築スクリプトのパラメータについて、一定のルールに従った命名を行うことで、分析部１０１が、パラメータの命名規則に基づいて、サーバ間の依存関係を把握し、把握した依存関係に基づく有向グラフデータを作成している。
【００６７】
具体的には、ラウンドロビンの投げ先と、待ち受けのアドレスについてのIPアドレスの変数名として、下記の通り変数名を使用している。
【００６８】
net_ip_listen=10.0.0.1
net_ip_target=10.0.0.1
分析部１０１は、この命名規則とIPアドレスの値に基づいて、RoundRobin元⇒RoundRobin先という、サーバ間の依存関係を把握することができ、結果として表示例５の表示を行うことができる。また、別の命名規則を用いることで、クライアント⇒サーバという依存関係を把握することもできる。例えば、サーバが先に落ちているとクライアントの動作が止まるので、このような依存関係を表示することで、ユーザは、確実に「クライアントを落としてからサーバを落とす」ということを認識できる。
【００６９】
また、上記の例の他にも、例えば、DBサーバに設定されている他サーバのIPアドレス⇒ACL（ACcess List、アクセスリスト）、Webサーバに設定されている他サーバのIPアドレス⇒Forward先のように、サーバの特性によって依存関係を把握し、表示することも可能である。
【００７０】
図１３は、表示例６を示す。表示例６では、APサーバにおけるeth0というデバイス名に割り当てたネットワークアドレス(10.0.0.1/24、自サーバのアドレス)を、webサーバであるEEEEが使用しているため、APサーバがLBサーバからのフォワード先であると推定し、それを表示している。すなわち、依存関係としてはLBサーバ→APサーバとなる。
【００７１】
＜変更の影響把握に関する表示例＞
システム管理支援装置１００の関連情報検索部１０５は、データ格納部１０２に格納された関連性の情報等に基づいて、システムの変更に伴う影響箇所を検索して把握し、表示を行うことが可能である。
【００７２】
システムの変更の例としては、Network公開によるIPアドレスの変更、脆弱性対応によるソフトウェアのバージョンアップ等がある。
【００７３】
図１４は、変更の影響把握に関する表示例７を示す。表示例７では、LBサーバのIPアドレスを変えたことにより、関連情報検索部１０５が、関連箇所の検索を行った結果、BBBBの設定に影響があることが表示されている。つまり、LBサーバの変更後のIPアドレスが、BBBBのACLのセグメントから外れてしまっている（包含されていない）ことが示されている。
【００７４】
図１５は、表示例８を示す。表示例８は、CCCCの脆弱性対応（ソフトウェアのバージョンアップ）を行ったときの変更の影響箇所を表示した例である。具体的には、CCCCを利用するBBBBにおける、CCCCを指定するパスと、CCCCがインストールされる場所のパスとが異なるものとなったことが表示されている。
【００７５】
図１６は、表示例９を示す。表示例９は、APサーバにNIC（eh1）を追加する変更の影響を表示した例である。この例では、eh1のIPアドレスとLBサーバのeth0のIPアドレスが同一セグメントとなってしまったことが示されている。
【００７６】
（障害箇所の設定と原因の特定の処理について）
次に、システム管理支援装置１００の障害箇所設定部１０６及び原因検索部１０７により実行される処理について説明する。図１７は、当該処理の概要を説明するための図である。図１７の例では、図６（ａ）で示した有向グラフデータと同じデータを対象とする。そして、依存関係を示す画面（図６（ｂ））が表示されているものとする。障害が発生した場合の処理手順は以下のようにして行われる。この手順において、適宜、図１７の例を使用する。
【００７７】
ステップＳ３０１）障害箇所を示す情報が、監視システムから、もしくは手動でシステム管理支援装置１００に入力されると、操作画面作成部１０４により、当該障害箇所が目立つように表示される。図１７の例では、LBサーバのstartブロックが目立つように表示される。また、障害箇所設定部１０６により、当該障害箇所の情報がデータ格納部１０２に格納される。
【００７８】
ステップＳ３０２）次に、原因検索部１０７は、障害箇所のノードを終点とするリンクを検索し、始点のノードを影響箇所として目立つように表示する。図１７の例では、障害箇所のノード（LBサーバのstart）を終点とするリンクの始点のノードとして、start_AAAAが目立つように表示される。
【００７９】
ステップＳ３０３）また、原因検索部１０７は、障害箇所のノードを始点とするリンクを検索し、終点のノードを原因（被疑箇所）として目立つように表示する。図１７の例では、障害箇所のノード（LBサーバのstart）を始点とするリンクの終点のノードとして、LBサーバのsettingが目立つように表示される。被疑箇所については、実際のシステムに対する確認が行われる。
【００８０】
ステップＳ３０４）被疑箇所が複数表示された場合、疑義が晴れた箇所は被疑箇所としての表示をクリアする。
【００８１】
ステップＳ３０５）原因検索部１０７は、被疑箇所を始点としているリンクを検索し、終点のノードを更なる被疑個所として遷移し、ステップＳ３０３に戻る。ステップＳ３０３では、この被疑箇所を障害箇所と見なして処理を行う。
【００８２】
（障害箇所の設定と原因の特定の処理についての表示例）
図１８〜２０は、障害箇所の設定と原因の特定の処理についての具体的な表示例１〜３を示す。
【００８３】
図１８では、BBBB（start_BBBB）にエラーが出ていることが示されている。そして、上記のステップＳ３０３に従って、依存先の１つ目である、setting_BBBBとstart_DDDD（DDDDがスタートしているかどうか）が被疑箇所として表示される。この表示を見たユーザはその確認を行う。
【００８４】
ここで、setting_BBBBの設定に変更がなく（障害の原因ではなく）、start_DDDDが原因である（DDDDがスタートしていない）ことがわかったとすると、図１９に示すように、start_DDDDが被疑箇所として残る。そして、依存先を辿ることで、setting_network（ネットワークの設定）とsetting_DDDDが被疑個所となる。
【００８５】
これらを調べた結果、図２０に示すように、最終的にDDDDの設定変更によるトラブルであることが判明した。この場合、DDDDの設定がBBBBの動作に影響を及ぼしていることが、論理的に最短距離で把握できる。
【００８６】
上記のように、本実施の形態のシステム管理支援装置１００により、障害が発生している箇所を選択すると、可能性のある個所を表示させることができる。設計書上は関連性が把握しにくい箇所であっても、依存関係が有向グラフで確認できるため、依存先をわかりやすく表示できる。
【００８７】
（変更手順自動作成処理について）
次に、システム管理支援装置１００の変更手順作成部１０８により実行される処理について説明する。図２１は、当該処理の概要を説明するための図である。図２１の例は、左側の画面に表示されている有向グラフにおいて、例えば、settingにおけるIPアドレスを変更する場合を示している。この場合、操作画面作成部１０４により、アドレス変更を入力する画面が表示される。そして、ユーザにより、変更の操作がなされると、変更手順作成部１０８が、当該変更内容と、データ格納部１０２に格納されている有向グラフデータに基づいて、変更手順を作成し、出力する。図２１の例では、AAAAを停止し、アドレス変更の設定を行って、AAAAを再スタートする、という手順が作成されたことが示されている。
【００８８】
＜変更手順自動作成の具体例＞
以下、変更手順作成部１０８が実行する変更手順作成処理をより具体的に説明する。
【００８９】
図２２は、本例で前提としている有向グラフを示している。この例は、既に説明した具体的な表示例におけるAPサーバ側の構成に相当する。そして、本例では、BBBBにおけるACLのアドレスを、172.16.0.0/28から172.16.0.0/24に変更する場合の手順作成処理を説明する。
【００９０】
図２３〜２５は、変更手順作成部１０８により実行される処理のフローチャートを示す。また、処理を分かり易く説明するために、図２３〜２５には、図２２で示した具体例に対応させた手順作成の進行状況が示されている。以下、図２３〜２５を参照して、変更手順作成処理を説明する。なお、図２３、図２４はフローチャートとしては同じである。手順を具体例を用いて説明するために２つに分けている。
【００９１】
図２３に示すように、変更手順作成部１０８は、まず、工事対象のノードを選択する。具体例では、ステップＳ１において、setting_BBBBを選択する。次に、現在の対象ノードを終点とするリンクがあるか否かを判定する。具体例では、ステップＳ２で示すように、当該リンクがあるので、判定はＹｅｓとなり、次に、リンクの始点を対象ノードとし、終点を親ノードとしてデータ格納部１０２にその情報を記録する。具体例では、ステップＳ３として示されるように、リンクの始点であるstart_BBBBを対象ノードとし、終点であるsetting_BBBBを親ノードとしてデータ格納部１０２にその情報を記録する。
【００９２】
次に、現在の対象ノードを終点とするリンクがあるか否かを判定すると、ステップＳ４に示すように、そのようなリンクはないので判定はＮｏとなり、次に、対象ノードの対称となる工事手順ノードを選択する。なお、対称となるノードの情報は、予めデータ格納部１０２に格納されているものとする。具体例では、ステップＳ５に示すように、start_BBBBの対称ノードであるstop_BBBBが選択される。
【００９３】
次に、工事手順ツリーにノードが１つでもあるかどうかを判定する。具体例では、ステップＳ６に示すように、ノードはないので、判定はＮｏとなり、次に、ステップＳ７に示すように、工事手順ノード（具体例でのstop_BBBB）を工事手順ツリーのトップに指定する。
【００９４】
次に、現在の対象ノードが、選択されたノードと一致するか否かを判定する。具体例では、ステップＳ８として示すように、対象ノード（start_BBBB）は選択されたノード（setting_BBBB）と一致しないので、判定はＮｏとなり、次に、対象ノードを呼び出したノードを対象ノードに設定する。具体例では、ステップＳ９（及びＳ２）に示されるように、対象ノード（start_BBBB）を呼び出したノードであるsetting_BBBBを対象ノードに設定する。
【００９５】
次に、図２４に進み、具体例でステップＳ１０として示されるように、対象ノードの対称となる工事手順ノードを選択する。具体例では、re_setting_BBBBが選択される。
【００９６】
次に、工事手順ツリーにノードが１つでもあるかどうかを判定する。具体例では、ステップＳ１１に示されるとおり、ノード（stop_BBBB）があるので、判定はＹｅｓとなり、次に、工事手順ノードを工事手順ツリーの末端ノードに設定する。具体例では、ステップＳ１２に示されるとおり、re_setting_BBBBが末端ノードとして設定される。
【００９７】
次に、対象ノードが、選択されたノードと一致するかどうかを判定する。具体例では、ステップＳ１３として示すように、一致するので、判定はＹｅｓとなり、前半処理が終了し、図２５に示す工事手順出力処理に進む。なお、この時点では、具体例の工事手順ツリーは、図２４のステップＳ１４に示すとおりである。
【００９８】
図２５において、まず、生成された工事手順ツリーの末端を選択する。具体例では、ステップＳ１５に示すように、末端ノードであるre_setting_BBBBが選択される。この選択されたノードが現在の対象ノードになる。
【００９９】
次に、現在の対象ノードを終点とするリンクがあるかどうかを判定する。具体例では、ステップＳ１６に示すように、re_setting_BBBBを終点とするリンクがあるので、判定はＹｅｓとなり、次に、リンクの始点ノードを対象ノードとして選択する。具体例では、ステップＳ１７に示すように、stop_BBBBが選択される。
【０１００】
次に、対象ノードと対称となる工事手順を選択し、これを工事手順ツリーの末端に設定する。具体例では、ステップＳ１８として示されるように、stop_BBBBの対称ノードであるstart_BBBBが末端に追加される。
【０１０１】
次に、再び、現在の対象ノードを終点とするリンクがあるかどうかを判定する。具体例では、ステップＳ１９に示すように、現在の対象ノードを終点とするリンクはないので、判定はＮｏとなり、ステップＳ２０に示すように、全体の工事手順ツリーを出力する。
【０１０２】
なお、上記の例は、１つのノードのパラメータを変更する場合の例である。複数のノードのパラメータを変更する場合には、例えば、変更対象の各ノードについて、上記の手順を適用すればよい。
【０１０３】
（実施の形態の効果）
以上、説明したように、本実施の形態では、以下のような効果を奏する。以下では、従来技術により発生することが想定される課題と、本実施の形態に係る技術により、その課題が解決されることを説明する。
【０１０４】
１）設計書の精度の向上
従来の技術では、設計書作成の稼働、構築手順書の稼働、両者をそれぞれ単体で減らす取り組みは行われてきた。しかし、設計書に記載されている情報が、本当に構築されたシステムに設定されているかどうかは、確認が必要であった。すでに作成した成果物からのデータ抽出も、開発コードからモジュールの関連性を表示するのが限界であった。
【０１０５】
システム構築後に、「使用したつもり」のパラメータや「インストールすることになっていた」アプリケーションモジュールの一覧表を記載するため、誤りが生じ易い。
【０１０６】
一方、本実施の形態に係る技術によれば、自動構築スクリプトから設計書（有向グラフ）を自動生成するため、高い精度の設計書を得ることができる。
【０１０７】
２）単一サーバ内の影響範囲、依存関係の把握容易化
従来技術では、システムの構成やモジュール間の依存関係、変更を加える際の影響箇所を確認するには、設計書そのものを理解し、設計書からシステムを想定しなければならない。設計書は一覧性を重視して作成されることが多く、単一のサーバ内にインストールされているアプリケーションやＩＰアドレスは記載されていても、それらの依存関係や影響箇所を推測するためには、ある程度の知識が必要であった。仮に、設計書全体を理解し把握する知識や経験が不足していると、大きなシステムや高度な技術を使用したシステムの構成を把握することができず、関連しているシステムやパラメータを見落としてしまう。
【０１０８】
例えば、NW装置のIPアドレスというパラメータが理解できても、ネットマスクというものがわかっていなければ、192.168.0.1と192.168.0.0/24や192.168.0.129と192.168.0.128/25の関係がわからない。同様にLinux（登録商標）でマウントされているディスクのマウントポイントとデバイス名は理解できても、iSCSIストレージの場合、iSCSIでのinitiator名やmultipath時のVENDOR名、PRODUCT名の影響は把握できない。また、uuidというユニークなIDはIPアドレスやMACアドレスによって生成されるが、この生成についても把握していないと関連性を見落とす可能性がある。
【０１０９】
一方、本実施の形態に係る技術によれば、自動構築スクリプトから有効グラフ及び関連性を示す情報を自動生成するため、上記のような関連性の見落としをなくすことができる。
【０１１０】
３）システム全体の影響範囲、依存関係の把握の容易化
従来技術では、サーバ間が複雑に依存し合っているシステム全体の影響を把握するためには、１つのサーバの設計書だけでなく、関連すると思われる設計書すべてを読み込む必要があった。これは、スキルの低い人にとっては、困難な作業である。設計書は単一のサーバについて一覧性を重要視して作成することが多く、他サーバへの関連性すべてを記載することが難しいことによる。特に、自サーバの設定が他サーバのどのパラメータのために設定しているか、設定が外れた際の影響については記載しきると一覧性が崩れてしまい、標記することができない。
【０１１１】
例えば、ロードバランサによるロードバランシングは、ロードバランサ配下のWebサーバのDMZのアドレスに依存している。これはWebサーバのIPアドレス情報として「ロードバランサにて使用」と記載したうえ、ロードバランサ側にも「WebサーバのIPアドレスを設定」というように関連性を明記しなければならない。これは関連性を明記しやすい例であるが、すべての関連性を明記しきることは難しい。例えば、あるサーバへのアクセス制御が「10.0.0.0/24」であった時「10.0.0.129/28」のサーバはアクセス可能である。しかし、このACLアクセス制御を10.0.0.0/25に変更することができるかどうかは、NWの知識とシステムの関連性を正しく把握していないと難しい。
【０１１２】
一方、本実施の形態に係る技術によれば、自動構築スクリプトから有効グラフ及び関連性を示す情報を自動生成するため、上記のような関連性の把握を容易に行うことができる。
【０１１３】
４）継続した開発における設計書と実環境の整合性の維持の容易化
システムはその後発生する仕様変更や追加開発、トラブルへのワークアラウンドなどのためにパラメータや構成が変化する。設計書は、都度この変更に追従する形で改変されなければならない。これには大きな手間がかかる。
【０１１４】
一方、本実施の形態に係る技術によれば、自動構築スクリプトから有効グラフ及び関連性を示す情報（設計書）を自動生成するため、容易に設計書と実環境の整合性の維持ができる。
【０１１５】
５）コスト削減
システムを正しく把握し運用するためには、設計書を構築者および開発者と同等のレベルにある技術スキル者が完全に理解する必要があり、従来技術では、実際にこのような運用が行われることが想定される。しかし、これは運用コストの増大につながる。
【０１１６】
一方、本実施の形態に係る技術によれば、自動構築スクリプトから有効グラフ及び関連性を示す情報（設計書）を自動生成するため、構築者および開発者と同等のレベルにある技術スキル者でなくても、容易にシステムを把握でき、コストの削減ができる。
【０１１７】
（実施の形態のまとめ）
本実施の形態では、システムの構築手順を記述したスクリプトを入力する入力手段と、前記スクリプトに含まれる所定構成要素をノードとして抽出し、ノード間の依存関係に基づいて、ノード間のリンクを作成し、ノードの情報とリンクの情報とをデータ格納部に格納する分析手段と、前記データ格納部からノードの情報及びリンクの情報を読み出し、当該ノードの情報及びリンクの情報から有向グラフを作成し、当該有向グラフを出力する出力手段とを備えることを特徴とするシステム管理支援装置が提供される。
【０１１８】
実施の形態で説明した分析部１０１は、上記の入力手段及び分析手段の例である。また、変換部１０３は出力手段の例である。上記の構成により、構築手順書に相当するスクリプトから設計書に相当する有向グラフを自動的に作成することが可能となる。
【０１１９】
前記所定構成要素は、例えば、前記スクリプトにおいて、システムの構築処理を、構築処理の種類別にグループ化したブロックである。前記分析手段は、前記ブロックに記述された情報に基づいて、前記依存関係を決定することとしてもよいし、前記分析手段は、前記スクリプトに含まれる手順情報に基づいて、前記依存関係を決定することとしてもよい。
【０１２０】
前記分析手段は、ノードで使用されるパラメータを抽出し、ノード間でのパラメータの関連性を示す関連性情報を作成し、当該関連性情報を前記データ格納部に格納することもできる。
【０１２１】
前記関連性情報に基づいて、ノード間の関連性、又は、ノードを含むサーバ間の関連性を検出する関連性検出手段を更に備えてもよく、その場合、前記出力手段は、前記関連性を示す情報を付加した有向グラフを出力することとしてもよい。
【０１２２】
前記有向グラフにおけるあるノードが障害箇所である場合に、障害の原因の被疑箇所として、当該障害箇所のノードを始点とするリンクの終点のノードを前記データ格納部から抽出する原因検索手段を更に備えることとしてもよい。
【０１２３】
前記有向グラフにおける一以上のノードのパラメータを変更する指示を受けた場合に、前記一以上のノードと他のノードとの間の依存関係に基づいて、当該パラメータを変更するための工事手順を作成する変更手順作成手段を更に備えることとしてもよい。
＜付記＞
（第１項）
システムの構築手順を記述したスクリプトを入力する入力手段と、
前記スクリプトに含まれる所定構成要素をノードとして抽出し、ノード間の依存関係に基づいて、ノード間のリンクを作成し、ノードの情報とリンクの情報とをデータ格納部に格納する分析手段と、
前記データ格納部からノードの情報及びリンクの情報を読み出し、当該ノードの情報及びリンクの情報から有向グラフを作成し、当該有向グラフを出力する出力手段と
を備えることを特徴とするシステム管理支援装置。
（第２項）
前記所定構成要素は、前記スクリプトにおいて、システムの構築処理を、構築処理の種類別にグループ化したブロックである
ことを特徴とする第１項に記載のシステム管理支援装置。
（第３項）
前記分析手段は、前記ブロックに記述された情報に基づいて、前記依存関係を決定する
ことを特徴とする第２項に記載のシステム管理支援装置。
（第４項）
前記分析手段は、前記スクリプトに含まれる手順情報に基づいて、前記依存関係を決定する
ことを特徴とする第１項ないし第３項のうちいずれか１項に記載のシステム管理支援装置。
（第５項）
前記分析手段は、ノードで使用されるパラメータを抽出し、ノード間でのパラメータの関連性を示す関連性情報を作成し、当該関連性情報を前記データ格納部に格納する
ことを特徴とする第１項ないし第４項のうちいずれか１項に記載のシステム管理支援装置。
（第６項）
前記関連性情報に基づいて、ノード間の関連性、又は、ノードを含むサーバ間の関連性を検出する関連性検出手段を更に備え、
前記出力手段は、前記関連性を示す情報を付加した有向グラフを出力する
ことを特徴とする第５項に記載のシステム管理支援装置。
（第７項）
前記有向グラフにおけるあるノードが障害箇所である場合に、障害の原因の被疑箇所として、当該障害箇所のノードを始点とするリンクの終点のノードを前記データ格納部から抽出する原因検索手段
を更に備えることを特徴とする第１項ないし第６項のうちいずれか１項に記載のシステム管理支援装置。
（第８項）
前記有向グラフにおける一以上のノードのパラメータを変更する指示を受けた場合に、前記一以上のノードと他のノードとの間の依存関係に基づいて、当該パラメータを変更するための工事手順を作成する変更手順作成手段
を更に備えることを特徴とする第１項ないし第７項のうちいずれか１項に記載のシステム管理支援装置。
（第９項）
システム管理支援装置により実行されるシステム管理支援方法であって、
システムの構築手順を記述したスクリプトを入力する入力ステップと、
前記スクリプトに含まれる所定構成要素をノードとして抽出し、ノード間の依存関係に基づいて、ノード間のリンクを作成し、ノードの情報とリンクの情報とをデータ格納部に格納する分析ステップと、
前記データ格納部からノードの情報及びリンクの情報を読み出し、当該ノードの情報及びリンクの情報から有向グラフを作成し、当該有向グラフを出力する出力ステップと
を備えることを特徴とするシステム管理支援方法。
（第１０項）
コンピュータを、第１項ないし第８項のうちいずれか１項に記載のシステム管理支援装置における各手段として機能させるためのプログラム。
【０１２４】
以上、本実施の形態について詳述したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【０１２５】
１００  システム管理支援装置
１０１  分析部
１０２  データ格納部
１０３  変換部
１０４  操作画面作成部
１０５  関連情報検索部
１０６  障害箇所設定部
１０７  原因検索部
１０８  変更手順作成部
【図１】
0006734689.tif 000002
【図２】
0006734689.tif 000003
【図３】
0006734689.tif 000004
【図４】
0006734689.tif 000005
【図５】
0006734689.tif 000006
【図６】
0006734689.tif 000007
【図７】
0006734689.tif 000008
【図８】
0006734689.tif 000009
【図９】
0006734689.tif 000010
【図１０】
0006734689.tif 000011
【図１１】
0006734689.tif 000012
【図１２】
0006734689.tif 000013
【図１３】
0006734689.tif 000014
【図１４】
0006734689.tif 000015
【図１５】
0006734689.tif 000016
【図１６】
0006734689.tif 000017
【図１７】
0006734689.tif 000018
【図１８】
0006734689.tif 000019
【図１９】
0006734689.tif 000020
【図２０】
0006734689.tif 000021
【図２１】
0006734689.tif 000022
【図２２】
0006734689.tif 000023
【図２３】
0006734689.tif 000024
【図２４】
0006734689.tif 000025
【図２５】
0006734689.tif 000026