(57)【要約】【課題】ソフトウェアの更新に際して、保守者の作業負担の軽減及び工事期間の短縮を図る。【解決手段】ソフトウェア構成が同じサーバをまとめた構成グループの情報を記憶したサーバ構成テーブル１３２と、提供するサービスごとに構成グループをまとめた環境グループの情報を記憶した環境構成テーブル１３１と、構成グループごとにインストールされたソフトウェアの情報を記憶したソフトウェア構成テーブル１３３と、ソフトウェアの依存関係を記憶した依存ソフトウェア条件テーブル１３４を有し、工事対象の環境グループごとに、各構成グループにインストールされた工事対象ソフトウェアの依存関係に基づいて構成グループの工事順序を策定し、工事対象の環境グループに属する全ての構成グループを策定した工事順序に従って整列し、構成グループごとに、起動条件に基づいてサーバの工事順序を策定し、サーバごとに、工事対象ソフトウェアの工事順序を策定する。【選択図】図２
2018173841.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア構成が同じサーバをまとめた構成グループの情報を記憶したサーバ構成テーブルと、
提供するサービスごとに前記構成グループをまとめた環境グループの情報を記憶した環境構成テーブルと、
前記構成グループごとにインストールされたソフトウェアの情報を記憶したソフトウェア構成テーブルと、
前記ソフトウェアの依存関係を記憶した依存ソフトウェア条件テーブルと、
工事対象の前記環境グループごとに、前記構成グループにインストールされた前記ソフトウェアの依存関係に基づいて前記環境グループ内での前記構成グループの工事順序を決定する構成グループ順序決定手段と、
工事対象の前記環境グループに属する全ての前記構成グループを前記工事順序に従って整列し、前記構成グループごとに、当該構成グループ内の前記サーバの起動条件に基づいて、前記サーバの工事順序を決定するサーバ順序決定手段と、
前記サーバごとに、前記ソフトウェアの工事順序を決定するソフトウェア順序決定手段と、
を有することを特徴とする工事順序決定装置。
【請求項２】
前記サーバ順序決定手段は、前記環境グループの順位に従って前記構成グループを整列させることを特徴とする請求項１に記載の工事順序決定装置。
【請求項３】
ソフトウェア構成が同じサーバをまとめた構成グループの情報を記憶したサーバ構成テーブルと、提供するサービスごとに前記構成グループをまとめた環境グループの情報を記憶した環境構成テーブルと、前記構成グループごとにインストールされたソフトウェアの情報を記憶したソフトウェア構成テーブルと、前記ソフトウェアの依存関係を記憶した依存ソフトウェア条件テーブルを有する工事順序決定装置によって実行される工事順序決定方法であって、
工事対象の前記環境グループごとに、前記構成グループにインストールされた前記ソフトウェアの依存関係に基づいて前記環境グループ内での前記構成グループの工事順序を決定するステップと、
工事対象の前記環境グループに属する全ての前記構成グループを前記工事順序に従って整列し、前記構成グループごとに、当該構成グループ内の前記サーバの起動条件に基づいて、前記サーバの工事順序を決定するステップと、
前記サーバごとに、前記ソフトウェアの工事順序を決定するステップと、
を有することを特徴とする工事順序決定方法。
【請求項４】
前記サーバの工事順序を決定ステップは、前記環境グループの順位に従って前記構成グループを整列させることを特徴とする請求項３に記載の工事順序決定方法。
【請求項５】
請求項１又は２に記載の工事順序決定装置の各手段としてコンピュータを動作させることを特徴とする工事順序決定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバにインストールされたソフトウェアを更新する技術に関する。
【背景技術】
【０００２】
ＩＴサービスを提供するサーバでは、セキュリティ脆弱性への対応等のために、ソフトウェアのバージョンアップやパッチ適用などのファイル更新が必要である。ファイル更新時には、保守者が工事手順書に沿って対象サーバに対して作業を行う。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−６０１４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
同一サーバに対し複数の工事が発生した際も、各工事に対して工事手順書を準備して別々に工事を実施している。そのため、同一サーバに何度も工事が行われて、保守者の負担及び運用コストが増大するという問題があった。
【０００５】
また、同一サーバに対して複数の工事が発生した場合、ひとつの工事が完了した後に次の工事を実施するため、工事が長期化してしまうという問題があった。工事毎のサービスの影響を最小化する仕組みが取られていない点にも問題があった。
【０００６】
本発明は、上記に鑑みてなされたものであり、ソフトウェアの更新に際して、保守者の作業負担の軽減及び工事期間の短縮を図ることを目的とする。
【課題を解決するための手段】
【０００７】
第１の本発明に係る工事順序決定装置は、ソフトウェア構成が同じサーバをまとめた構成グループの情報を記憶したサーバ構成テーブルと、提供するサービスごとに前記構成グループをまとめた環境グループの情報を記憶した環境構成テーブルと、前記構成グループごとにインストールされたソフトウェアの情報を記憶したソフトウェア構成テーブルと、前記ソフトウェアの依存関係を記憶した依存ソフトウェア条件テーブルと、工事対象の前記環境グループごとに、前記構成グループにインストールされた前記ソフトウェアの依存関係に基づいて前記環境グループ内での前記構成グループの工事順序を決定する構成グループ順序決定手段と、工事対象の前記環境グループに属する全ての前記構成グループを前記工事順序に従って整列し、前記構成グループごとに、当該構成グループ内の前記サーバの起動条件に基づいて、前記サーバの工事順序を決定するサーバ順序決定手段と、前記サーバごとに、前記ソフトウェアの工事順序を決定するソフトウェア順序決定手段と、を有することを特徴とする。
【０００８】
第２の本発明に係る工事順序決定方法は、ソフトウェア構成が同じサーバをまとめた構成グループの情報を記憶したサーバ構成テーブルと、提供するサービスごとに前記構成グループをまとめた環境グループの情報を記憶した環境構成テーブルと、前記構成グループごとにインストールされたソフトウェアの情報を記憶したソフトウェア構成テーブルと、前記ソフトウェアの依存関係を記憶した依存ソフトウェア条件テーブルを有する工事順序決定装置によって実行される工事順序決定方法であって、工事対象の前記環境グループごとに、前記構成グループにインストールされた前記ソフトウェアの依存関係に基づいて前記環境グループ内での前記構成グループの工事順序を決定するステップと、工事対象の前記環境グループに属する全ての前記構成グループを前記工事順序に従って整列し、前記構成グループごとに、当該構成グループ内の前記サーバの起動条件に基づいて、前記サーバの工事順序を決定するステップと、前記サーバごとに、前記ソフトウェアの工事順序を決定するステップと、を有することを特徴とする。
【０００９】
第３の本発明に係る工事順序決定プログラムは、上記工事順序決定装置の各手段としてコンピュータを動作させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ソフトウェアの更新に際して、保守者の作業負担の軽減及び工事期間の短縮を図ることができる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態の工事順序決定装置により工事順序を決定するシステムの全体構成図である。
【図２】本実施形態の工事順序決定装置の構成を示す機能ブロック図である。
【図３】環境構成テーブルの例を示す図である。
【図４】サーバ構成テーブルの例を示す図である。
【図５】ソフトウェア構成テーブルの例を示す図である。
【図６】依存ソフトウェア条件テーブルの例を示す図である。
【図７】本実施形態の工事順序決定装置の処理の流れを示すシーケンス図である。
【図８】構成グループの工事順序を策定する処理の流れを示すフローチャートである。
【図９】工事条件の例を示す図である。
【図１０】各環境グループについて、構成グループ内の工事対象ソフトウェアを抽出した結果を示す図である。
【図１１】ソフトウェアの依存関係に基づいて構成グループの工事順序を決定する処理の流れを示すフローチャートである。
【図１２】工事対象ソフトウェアの前提条件と後続条件の調査結果を示す図である。
【図１３】構成グループを分類した例を示す図である。
【図１４】構成グループを分類後にソフトウェアの前提条件を変更した結果を示す図である。
【図１５】構成グループの順位の例を示す図である。
【図１６】構成グループの各サーバ及び各ソフトウェアの工事順序の策定する処理の流れを示すフローチャートである。
【図１７】各構成グループの順位に従って構成グループを整列させたようすを示す図である。
【図１８】図１７の順位に従って各構成グループを階層に配置した図である。
【図１９】各構成グループのサーバとサーバの順位の例を示す図である。
【図２０】サーバ内順序に従って工事対象ソフトウェアを各サーバに展開した様子を示す図である。
【図２１】本実施形態の工事順序決定装置が策定した工事順序の例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図面を用いて説明する。
【００１３】
図１は、本実施形態の工事順序決定装置１により工事順序を決定するシステムの全体構成図である。同図に示すシステムは、サービスＸを提供するサーバ群とサービスＹを提供するサーバ群で構成される。サービスＸを提供するサーバ群は、ＤＢサーバＸ−Ａ，Ｘ−Ｓ、ＷｅｂサーバＸ−１，Ｘ−２，Ｘ−３、及びロードバランサＸを含む。サービスＹを提供するサーバ群は、ＤＢサーバＹ−Ａ，Ｙ−Ｓ、ＷｅｂサーバＹ−１，Ｙ−２、及びロードバランサＹを含む。また、サービスＸ，Ｙのサーバを監視する監視サーバＸＹが含まれる。
【００１４】
［工事順序決定装置の構成］
図２は、本実施形態の工事順序決定装置１の構成を示す機能ブロック図である。本工事順序決定装置１は、工事手順書を入力し、決定した工事順序を表示するユーザインタフェース１１、工事手順書と工事対象システムのサーバ構成やソフトウェア構成に基づいて工事順序を決定する制御部１２、及び工事対象システムのサーバ構成やソフトウェア構成などの各種情報を保持する記憶部１３を備える。工事順序決定装置１が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは工事順序決定装置１が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。以下、工事順序決定装置１が備える各部について説明する。
【００１５】
ユーザインタフェース１１は、工事手順書入力機能１１１、設定機能１１２、及び工事順序表示機能１１３を有する。工事手順書入力機能１１１は、工事担当から工事手順書を入力する。工事手順書入力機能１１１は、複数の工事手順書を入力してもよい。設定機能１１２は、工事手順を決定する際に必要な設定を入力する。例えば、工事対象とするサービスの情報を入力する。工事順序表示機能１１３は、制御部１２が決定した工事順序を表示する。
【００１６】
制御部１２は、情報収集機能１２１及び工事順序判定機能１２２を有する。情報収集機能１２１は、ユーザインタフェース１１から工事手順書を受信する。また、情報収集機能１２１は、工事対象システムの各サーバから必要な情報を受信する。工事順序判定機能１２２は、工事手順書と記憶部１３に記憶された各種情報に基づき、工事対象システムに含まれるサーバの工事手順を決定する。
【００１７】
記憶部１３は、環境構成テーブル１３１、サーバ構成テーブル１３２、ソフトウェア構成テーブル１３３、及び依存ソフトウェア条件テーブル１３４を有する。
【００１８】
環境構成テーブル１３１は、工事対象システムの提供するサービスごとのサーバ群の情報を保持する。図３に、環境構成テーブル１３１の例を示す。図３に示す環境構成テーブル１３１は、環境、環境グループ、構成グループ、及びサービスの項目を保持する。
【００１９】
環境グループは、提供するサービスごとにサーバ群（構成グループ）をまとめたものであり、ソフトウェア依存関係が適用される一連のグループである。構成グループは、ソフトウェア構成が同じサーバをまとめたグループである。本実施形態では、ソフトウェア構成が同じサーバを構成グループとしてまとめておき、環境グループごとに、構成グループの工事順序をソフトウェア依存関係に基づいて策定した後、構成グループごとに、サーバの起動条件に基づき、構成グループ内のサーバの工事順序を策定する。
【００２０】
サーバ構成テーブル１３２は、構成グループに含まれるサーバを管理するテーブルである。図４に、サーバ構成テーブル１３２の例を示す。図４に示すサーバ構成テーブル１３２は、構成グループ、サーバ、クラスタ構成、クラスタ構成稼働／非稼働、分散稼働、及び分散稼働作業順位の項目を保持する。
【００２１】
サーバの項目には、各構成グループに属するサーバの情報が記憶される。例えば、図４の例では、Ｗｅｂサーバ＿Ｘ群の構成グループは、Ｗｅｂサーバ＿Ｘ−１、Ｗｅｂサーバ＿Ｘ−２、及びＷｅｂサーバ＿Ｘ−３の３つのサーバで構成される。この３つのサーバのいずれにも同じソフトウェアがインストールされている。
【００２２】
サーバ構成テーブル１３２は、サーバの起動条件として、クラスタ構成や分散稼働の情報を保持する。具体的には、クラスタ構成及びクラスタ構成稼働／非稼働の項目には、クラスタ構成であるか否か、及び稼働系か待機系かの情報が記憶される。分散稼働及び分散稼働作業順位の項目には、分散稼働するサーバであるか否か、及び分散稼働するサーバ内での作業順位が記憶される。このサーバの起動条件は、構成グループ内のサーバの工事順序を策定するために用いられる。
【００２３】
ソフトウェア構成テーブル１３３は、構成グループにインストールされているソフトウェアを管理するテーブルである。図５に、ソフトウェア構成テーブル１３３の例を示す。図５に示すソフトウェア構成テーブル１３３は、構成グループ、ソフトウェア、バージョン、及びサーバ内順序の項目を保持する。図５の例では、Ｗｅｂサーバ＿Ｘ群には、Ｌｉｎｕｘ（登録商標）、Ａｐａｃｈｅ、Ｔｏｍｃａｔ、Ｚａｂｂｉｘ  Ａｇｅｎｔがインストールされている。つまり、Ｗｅｂサーバ＿Ｘ−１、Ｗｅｂサーバ＿Ｘ−２、及びＷｅｂサーバ＿Ｘ−３には上記のソフトウェアがインストールされている。サーバ内順序は、構成グループにおけるソフトウェアの更新順序を示す。
【００２４】
依存ソフトウェア条件テーブル１３４は、ソフトウェア間の依存関係を定義する。図６に、依存ソフトウェア条件テーブル１３４の例を示す。図６の例では、Ｔｏｍｃａｔ及びＰｏｓｔｇｒｅＳＱＬは、Ａｐａｃｈｅを前提として動作し、Ｚａｂｂｉｘ  ＡｇｅｎｔはＺａｂｂｉｘ  Ｓｅｒｖｅｒを前提として動作することが示されている。
【００２５】
［工事順序決定装置の動作］
次に、本実施形態の工事順序決定装置１の動作について説明する。
【００２６】
図７は、本実施形態の工事順序決定装置１の処理の流れを示すシーケンス図である。
【００２７】
工事担当が、ユーザインタフェース１１を介して工事対象環境の選定及び工事手順書の投入を行う（ステップＳ１１，Ｓ１２）。
【００２８】
制御部１２は、環境構成テーブル１３１を参照し、環境グループごとに、構成グループの情報を取得する（ステップＳ１３）。
【００２９】
制御部１２は、ソフトウェア構成テーブル１３３を参照し、各構成グループにインストールされているソフトウェアの情報を取得する（ステップＳ１４）。
【００３０】
制御部１２は、依存ソフトウェア条件テーブル１３４を参照し、ソフトウェア依存関係を取得する（ステップＳ１５）。
【００３１】
そして、制御部１２は、ステップＳ１３〜Ｓ１５で取得した情報をもとに、環境グループごとに、構成グループの工事順序を策定する（ステップＳ１６）。構成グループの工事順序の策定の詳細については後述する。
【００３２】
環境グループごとに、構成グループの工事順序を策定した後、制御部１２は、サーバ構成テーブル１３２を参照し、各構成グループのサーバの情報を取得する（ステップＳ１７）。
【００３３】
制御部１２は、ソフトウェア構成テーブル１３３を参照し、各サーバにインストールされているソフトウェアの情報を取得する（ステップＳ１８）。
【００３４】
そして、制御部１２は、ステップＳ１６で策定した構成グループの工事順序とステップＳ１７，Ｓ１８で取得した情報をもとに、各サーバについてソフトウェアの工事順序を策定し（ステップＳ１９）、サーバの工事順序及びソフトウェアの工事順序を確定する（ステップＳ２０）。ソフトウェアの工事順序の策定の詳細については後述する。
【００３５】
工事担当は、工事順序決定装置１の決定した工事順序を確認する（ステップＳ２１）。
【００３６】
次に、本実施形態の工事順序決定装置１が工事順序を決定する処理を具体例を用いて説明する。ここでは図３〜６に示したデータが記憶部１３に記憶されているとする。
【００３７】
図８は、本実施形態の工事順序決定装置１が構成グループの工事順序を策定する処理の流れを示すフローチャートである。
【００３８】
まず、工事担当が工事条件を工事順序決定装置１に入力する（ステップＳ３１）。例えば、図９に示す工事条件を入力する。具体的には、商用環境のサービスＸ，Ｙを工事対象とし、Ｌｉｎｕｘ（工事１）、Ｚａｂｂｉｘ  ＳｅｒｖｅｒとＺａｂｂｉｘ  Ａｇｅｎｔ（工事２）、及びＰｏｓｔｇｒｅＳＱＬとＡｐａｃｈｅ（工事３）を更新する指示を記載した工事手順書を入力する。
【００３９】
工事順序決定装置１は、工事対象の環境グループを特定し、環境構成テーブル１３１を参照して環境グループのそれぞれの構成グループを抽出する（ステップＳ３２）。工事対象の環境グループは、商用環境＿サービスＸと商用環境＿サービスＹである。図３の環境構成テーブル１３１を参照すると、商用環境＿サービスＸの構成グループは、Ｗｅｂサーバ＿Ｘ群、ＤＢサーバ＿Ｘ群、及び監視サーバ＿ＸＹ群であり、商用環境＿サービスＹの構成グループは、Ｗｅｂサーバ＿Ｙ群、ＤＢサーバ＿Ｙ群、及び監視サーバ＿ＸＹ群である。
【００４０】
工事順序決定装置１は、ソフトウェア構成テーブル１３３を参照し、ステップＳ３２で得た構成グループ内の工事対象ソフトウェアを抽出する（ステップＳ３３）。図１０に、工事対象の商用環境＿サービスＸと商用環境＿サービスＹについて、構成グループ内の工事対象ソフトウェアを抽出した結果を示す。例えば、図１０の例では、Ｗｅｂサーバ＿Ｘ群では、Ｌｉｎｕｘ、Ａｐａｃｈｅ、及びＺａｂｂｉｘ  Ａｇｅｎｔが抽出されている。図５のソフトウェア構成テーブル１３３を見ると、Ｗｅｂサーバ＿Ｘ群には、Ｔｏｍｃａｔもインストールされているが、Ｔｏｍｃａｔは今回の工事対象ではないので、ステップＳ３３では抽出されない。
【００４１】
工事順序決定装置１は、依存ソフトウェア条件テーブル１３４を参照し、構成グループの工事順序を決定する（ステップＳ３４）。
【００４２】
ここで、ステップＳ３４の、ソフトウェアの依存関係に基づいて構成グループの工事順序を決定する処理について説明する。図１１は、ソフトウェアの依存関係に基づいて構成グループの工事順序を決定する処理の流れを示すフローチャートである。
【００４３】
工事順序決定装置１は、依存ソフトウェア条件テーブル１３４を参照し、各構成グループの工事対象ソフトウェア間の前提条件と後続条件を調べる（ステップＳ４１）。図１２に、工事対象ソフトウェアの前提条件と後続条件の調査結果を示す。例えば、図１２の例では、Ｗｅｂサーバ＿Ｘ群の前提条件はＺａｂｂｉｘ Ｓｅｒｖｅｒであり、後続条件はＰｏｓｔｇｒｅＳＱＬである。ＤＢサーバ＿Ｘ群の前提条件はＡｐａｃｈｅとＺａｂｂｉｘ Ｓｅｒｖｅｒであり、後続条件は無い。監視サーバ＿ＸＹ群の前提条件は無く、後続条件はＺａｂｂｉｘ  Ａｇｅｎｔである。
【００４４】
工事順序決定装置１は、ステップＳ４１の調査結果をもとに、前提条件の有無、後続条件の有無に基づいて各構成グループの順位を決定する（ステップＳ４２）。具体的には、図１１内の表のように、前提条件なし、後続条件なしの構成グループは「単独可能」、前提条件なし、後続条件ありの構成グループは「先頭」、前提条件あり、後続条件なしの構成グループは「最終」、前提条件あり、後続条件ありの構成グループは「順位未定」に分類する。そして、「単独可能」と「先頭」に分類された構成グループの順位を高く（先に工事されるように）設定し、「最終」に分類された構成グループの順位を低く（後で工事されるように）設定する。なお、構成グループの順位は、環境グループごとに設定される。
【００４５】
図１２の例では、商用環境＿サービスＸの環境グループについて、Ｗｅｂサーバ＿Ｘ群は、前提条件あり、後続条件ありなので「順位未定」に分類され、ＤＢサーバ＿Ｘ群は、前提条件あり、後続条件なしなので「最終」に分類され、監視サーバ＿ＸＹ群は、前提条件なし、後続条件ありなので「先頭」に分類される。図１３に構成グループを分類した結果を示す。図１３では、Ｗｅｂサーバ＿Ｘ群とＤＢサーバ＿Ｘ群は「順位未定」に分類され、監視サーバ＿ＸＹ群は「先頭」に分類されている。なお、ＤＢサーバ＿Ｘ群の後続条件はなしであるから図１２内の表を用いると「最終」に分類されるが、ここでは、２回目の分類を説明するために「順位未定」と分類している。このように、前提条件の有無だけで構成グループの順位を設定してもよい。具体的には、前提条件なしの構成グループの順位を高く設定し、前提条件ありの構成グループは「順位未定」と分類する。
【００４６】
続いて、工事順序決定装置１は、順位が確定した構成グループのソフトウェアが前提条件となっている調査結果を前提条件無しに変更する（ステップＳ４３）。図１２の例では、監視サーバ＿ＸＹ群の順位が確定したので、監視サーバ＿ＸＹ群のＺａｂｂｉｘ  Ｓｅｒｖｅｒを前提条件としている箇所を前提条件無しに変更する。図１４に前提条件の変更結果を示す。図１４の例では、Ｗｅｂサーバ＿Ｘ群とＷｅｂサーバ＿Ｙ群の前提条件が無しに変更されている。
【００４７】
工事順序決定装置１は、順位未定の構成グループがなくなるまでステップＳ４２，Ｓ４３の処理を繰り返す（ステップＳ４４）。
【００４８】
本実施例では、商用環境＿サービスＸの環境グループでは、１回目の分類が終わった時点で、Ｗｅｂサーバ＿Ｘ群とＤＢサーバ＿Ｘ群が順位未定である。ステップＳ４３でＷｅｂサーバ＿Ｘ群とＤＢサーバ＿Ｘ群の前提条件は更新されて、Ｗｅｂサーバ＿Ｘ群は、前提条件なし、後続条件ありとなる。その結果、Ｗｅｂサーバ＿Ｘ群は、２回目の分類処理で「先頭」に分類される。図１５に、上記の処理で決定した本実施例の構成グループの順位を示す。
【００４９】
次に、構成グループの各サーバ及び各ソフトウェアの工事順序の策定について説明する。
【００５０】
これまでの処理により、環境グループごとに、構成グループの工事順序が策定されている。以降の処理では、工事対象の環境グループを合わせて、サーバの工事順序とソフトウェアの工事順序を策定する。
【００５１】
図１６は、構成グループの各サーバ及び各ソフトウェアの工事順序の策定する処理の流れを示すフローチャートである。
【００５２】
工事順序決定装置１は、工事対象の環境グループの全ての構成グループを順位に基づいて整列させる（ステップＳ５１）。図１７，１８に、各構成グループの順位に従って構成グループを整列させたようすを示す。構成グループの順位が同じ場合は、並行して作業できる。
【００５３】
なお、環境グループ間に順位を設定し、環境グループの順位を考慮して構成グループの全体順位を決めてもよい。例えば、商用環境＿サービスＸの順位が商用環境＿サービスＹの順位よりも高く設定されていた場合、商用環境＿サービスＸの構成グループの後に商用環境＿サービスＹの構成グループを整列させる。
【００５４】
続いて、工事順序決定装置１は、サーバ構成テーブル１３２を参照し、構成グループに属するサーバの起動条件を取得して、各構成グループ内でのサーバの順位を策定する（ステップＳ５２）。図１９に、ステップＳ５２で策定した各構成グループのサーバとサーバの順位を示す。本実施形態では、分散稼働するサーバの順位は、分散稼働作業順位が最後のサーバ以外を同じとし、最後のサーバを最後にする。また、クラスタ構成のサーバの順位は、待機→稼働の順とする。具体的には、Ｗｅｂサーバ＿Ｘ群は、分散稼働するＷｅｂサーバ＿Ｘ−１、Ｗｅｂサーバ＿Ｘ−２、Ｗｅｂサーバ＿Ｘ−３で構成される。Ｗｅｂサーバ＿Ｘ−３の分散稼働作業順位は最後であるから、Ｗｅｂサーバ＿Ｘ−１とＷｅｂサーバ＿Ｘ−２の順位を同じ１位とし、Ｗｅｂサーバ＿Ｘ−３の順位を２位とする。また、ＤＢサーバ＿Ｘ群は、待機系のＤＢサーバ＿Ｘ−Ｓと稼働系のＤＢサーバ＿Ｘ−Ａのクラスタ構成である。この場合、ＤＢサーバ＿Ｘ−Ｓ，ＤＢサーバ＿Ｘ−Ａの順に順位をつける。
【００５５】
続いて、工事順序決定装置１は、ソフトウェア構成テーブル１３３を参照し、各構成グループの工事対象ソフトウェアを各サーバに展開して、ソフトウェアのサーバ内順序に従ってソフトウェアの順位を策定する（ステップＳ５３）。図２０に、サーバ内順序に従って工事対象ソフトウェアを各サーバに展開した様子を示す。
【００５６】
工事順序決定装置１は、サーバごとに、工事対象ソフトウェアの工事順序を表示する（ステップＳ５４）。図２１に、工事順序決定装置１が策定した工事順序の例を示す。構成グループ順位と構成グループ内サーバ順位が同じサーバは、並行して作業ができる。具体的には、Ｗｅｂサーバ＿Ｘ−１、Ｗｅｂサーバ＿Ｘ−２、及びＷｅｂサーバ＿Ｙ−１のいずれも構成グループ順位が２で、構成グループ内サーバ順位が１なので、並行して作業ができる。また、図２１によると、Ｗｅｂサーバ＿Ｘ−１とＷｅｂサーバ＿Ｘ−２の作業後は、後続のＷｅｂサーバ＿Ｘ−３の作業ができ、Ｗｅｂサーバ＿Ｙ−１の作業後は、後続のＷｅｂサーバ＿Ｙ−２の作業ができることがわかる。
【００５７】
以上説明したように、本実施の形態によれば、ソフトウェア構成が同じサーバをまとめた構成グループの情報を記憶したサーバ構成テーブル１３２と、提供するサービスごとに構成グループをまとめた環境グループの情報を記憶した環境構成テーブル１３１と、構成グループごとにインストールされたソフトウェアの情報を記憶したソフトウェア構成テーブル１３３と、ソフトウェアの依存関係を記憶した依存ソフトウェア条件テーブル１３４を有し、工事対象の環境グループごとに、各構成グループにインストールされた工事対象ソフトウェアの依存関係に基づいて構成グループの工事順序を策定し、工事対象の環境グループに属する全ての構成グループを策定した工事順序に従って整列し、構成グループごとに、構成グループを構成するサーバをサーバの起動条件に基づいて工事順序を策定し、サーバごとに、サーバにインストールされた工事対象ソフトウェアの工事順序を策定することにより、複数の工事が存在する場合であっても、サーバ単位で適切な工事順序を決定することができ、ソフトウェアの更新に際して、保守者の作業負担の軽減及び工事期間の短縮が期待できる。その結果、脆弱性への即時対応によるセキュリティインシデント発生確率の低減に伴うビジネス損失の軽減、及び早期サービスの提供を可能とする。
【符号の説明】
【００５８】
１…工事順序決定装置
１１…ユーザインタフェース
１１１…工事手順書入力機能
１１２…設定機能
１１３…工事順序表示機能
１２…制御部
１２１…情報収集機能
１２２…工事順序判定機能
１３…記憶部
１３１…環境構成テーブル
１３２…サーバ構成テーブル
１３３…ソフトウェア構成テーブル
１３４…依存ソフトウェア条件テーブル
【図１】
2018173841.tif 000003
【図２】
2018173841.tif 000004
【図３】
2018173841.tif 000005
【図４】
2018173841.tif 000006
【図５】
2018173841.tif 000007
【図６】
2018173841.tif 000008
【図７】
2018173841.tif 000009
【図８】
2018173841.tif 000010
【図９】
2018173841.tif 000011
【図１０】
2018173841.tif 000012
【図１１】
2018173841.tif 000013
【図１２】
2018173841.tif 000014
【図１３】
2018173841.tif 000015
【図１４】
2018173841.tif 000016
【図１５】
2018173841.tif 000017
【図１６】
2018173841.tif 000018
【図１７】
2018173841.tif 000019
【図１８】
2018173841.tif 000020
【図１９】
2018173841.tif 000021
【図２０】
2018173841.tif 000022
【図２１】
2018173841.tif 000023