(57)【要約】【課題】  システムにおいて適切なポリシルールが規定されているか否かを検証する。【解決手段】  事前検証プログラムは、システムで実行される処理の内容と該処理を実行するための条件とが記述されたポリシルールにおける該条件と、該システムに含まれる機器を示す構成情報とに基づいて、該機器の状態の遷移を示す状態遷移情報を作成し、前記システムにて満たされるべき品質が記述された品質情報を参照し、作成した前記状態遷移情報において、前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報の有無を判定し、判定した結果を示す情報を出力する処理をコンピュータに実行させる。【選択図】図１
2017157169.tif 000002
【特許請求の範囲】
【請求項１】
システムで実行される処理の内容と該処理を実行するための条件とが記述されたポリシルールにおける該条件と、該システムに含まれる機器を示す構成情報とに基づいて、該機器の状態の遷移を示す状態遷移情報を作成し、
前記システムにて満たされるべき品質が記述された品質情報を参照し、作成した前記状態遷移情報において、前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報の有無を判定し、判定した結果を示す情報を出力する、
処理をコンピュータに実行させる事前検証プログラム。
【請求項２】
前記判定した結果を示す情報には、
前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報が含まれることを特徴とする請求項１に記載の事前検証プログラム。
【請求項３】
前記判定した結果を示す情報には、
前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報に含まれる、遷移前の前記機器の状態を示す状態情報及び遷移後の前記機器の状態を示す状態情報のうちのいずれか一方または両方が含まれることを特徴とする請求項１に記載の事前検証プログラム。
【請求項４】
前記条件と前記構成情報とを用いて作成される前記機器の状態を示す状態情報のうち、前記条件の記述の一部が重なる複数の状態情報を集約することで、新たな状態情報を作成する処理を前記コンピュータに実行させることを特徴とする請求項１に記載の事前検証プログラム。
【請求項５】
前記条件と前記構成情報とを用いて作成される前記機器の状態を示す状態情報に、停止中の機器の内部状態に関する記述が含まれる場合に、該状態情報から、該内部状態に関する記述を削除する処理を前記コンピュータに実行させることを特徴とする請求項１に記載の事前検証プログラム。
【請求項６】
作成された前記状態遷移情報について、
遷移前の前記機器の状態を示す状態情報が、前記品質を満たさない状態を示す状態情報であるかを判別し、
前記品質を満たさない状態を示す状態情報であった場合に、前記ポリシルールに従ったときの前記機器の状態の遷移に対応するかを判別する、
ことで、前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報の有無を判定することを特徴とする請求項１に記載の事前検証プログラム。
【請求項７】
コンピュータによる事前検証方法であって、該コンピュータが、
システムで実行される処理の内容と該処理を実行するための条件とが記述されたポリシルールにおける該条件と、該システムに含まれる機器を示す構成情報とに基づいて、該機器の状態の遷移を示す状態遷移情報を作成し、
前記システムにて満たされるべき品質が記述された品質情報を参照し、作成した前記状態遷移情報において、前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報の有無を判定し、判定した結果を示す情報を出力する、
処理を実行することを特徴とする事前検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、事前検証プログラム及び事前検証方法に関する。
【背景技術】
【０００２】
従来より、データセンタ等のように複数の機器を含むシステムにおいては、各種事象（例えば、障害や構成変更等）が発生した際の運用管理作業がポリシルールとして規定されており、かかるポリシルールに基づいて運用管理が行われている。
【０００３】
ポリシルールには、各種事象が発生した際に実施されるべき作業の内容と、作業を実施するための条件とが規定されており、かかるポリシルールを適用することで、システムの運用管理を自動化する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２０５９４１号公報
【特許文献２】特開２０１５−７８８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ポリシルールは事象ごとに規定されているため、運用管理の管理者にとっては、ポリシルールが、システムごとに定義されたＳＬＡ（Service Level Agreement：サービス品質保証）等を満たしているのか否かを判定することが難しい。また、近年、システムの構成は巨大化、複雑化する傾向にあり、ポリシルールの数も増大していることから、かかる判定が更に難しくなっている。
【０００６】
この結果、システムの運用管理開始後に、例えば、ポリシルールが適用されたにも関わらず、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移しない、といった事態が発生することもあった。
【０００７】
一つの側面では、システムにおいて適切なポリシルールが規定されているか否かを検証できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
一態様によれば、事前検証プログラムは、システムで実行される処理の内容と該処理を実行するための条件とが記述されたポリシルールにおける該条件と、該システムに含まれる機器を示す構成情報とに基づいて、該機器の状態の遷移を示す状態遷移情報を作成し、前記システムにて満たされるべき品質が記述された品質情報を参照し、作成した前記状態遷移情報において、前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報の有無を判定し、判定した結果を示す情報を出力する処理をコンピュータに実行させる。
【発明の効果】
【０００９】
一態様によれば、システムにおいて適切なポリシルールが規定されているか否かを検証することができるようになる。
【図面の簡単な説明】
【００１０】
【図１】運用管理用サーバを含むクラウドシステムの全体構成の一例を示す図である。
【図２】データセンタ内のシステム構成の一例を示す図である。
【図３】運用管理用サーバのハードウェア構成の一例を示す図である。
【図４】管理対象の種類を示す図である。
【図５】構成情報の一例を示す第１の図である。
【図６】構成情報の一例を示す第２の図である。
【図７】構成情報の一例を示す第３の図である。
【図８】ポリシ情報の一例を示す図である。
【図９】ＳＬＡ情報の一例を示す図である。
【図１０】依存情報の一例を示す図である。
【図１１】優先情報の一例を示す図である。
【図１２】事前検証部の機能構成の一例を示す図である。
【図１３】状態作成部の機能を説明するための第１の図である。
【図１４】状態作成部の機能を説明するための第２の図である。
【図１５】状態作成部により格納された状態管理情報の一例を示す図である。
【図１６】不要状態検索部の機能を説明するための第１の図である。
【図１７】不要状態検索部の機能を説明するための第２の図である。
【図１８】不要状態検索部の機能を説明するための第３の図である。
【図１９】不要状態検索部の機能を説明するための第４の図である。
【図２０】不要状態検索部の機能を説明するための第５の図である。
【図２１】不要状態検索部により格納された状態管理情報の一例を示す図である。
【図２２】状態遷移作成部の機能を説明するための第１の図である。
【図２３】状態遷移作成部の機能を説明するための第２の図である。
【図２４】状態遷移作成部の機能を説明するための第３の図である。
【図２５】状態遷移作成部の機能を説明するための第４の図である。
【図２６】状態遷移作成部の機能を説明するための第５の図である。
【図２７】状態遷移作成部の機能を説明するための第６の図である。
【図２８】状態遷移作成部の機能を説明するための第７の図である。
【図２９】状態遷移作成部により格納された状態管理情報の一例を示す図である。
【図３０】ポリシ遷移特定部の機能を説明するための図である。
【図３１】ポリシ遷移特定部の実行例を示す図である。
【図３２】ポリシ遷移特定部により格納された状態管理情報の一例を示す図である。
【図３３】ＳＬＡチェック部及びＳＬＡ判別部の機能を説明するための図である。
【図３４】ＳＬＡチェック部及びＳＬＡ判別部の実行例を示す図である。
【図３５】ＳＬＡチェック部により格納された状態管理情報の一例を示す図である。
【図３６】出力部による出力例を示す図である。
【図３７】事前検証処理のフローチャートである。
【図３８】状態作成処理のフローチャートである。
【図３９】状態情報を集約または削除する処理の第１のフローチャートである。
【図４０】状態情報を集約または削除する処理の第２のフローチャートである。
【図４１】状態遷移作成処理のフローチャートである。
【図４２】状態遷移特定処理のフローチャートである。
【図４３】ＳＬＡ判別処理のフローチャートである。
【図４４】出力処理のフローチャートである。
【発明を実施するための形態】
【００１１】
以下、実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【００１２】
［実施形態］
はじめに、実施形態にかかる事前検証プログラムがインストールされた運用管理用サーバを含む、クラウドシステムの全体構成について説明する。図１は、運用管理用サーバを含むクラウドシステムの全体構成の一例を示す図である。
【００１３】
図１に示すように、クラウドシステム１００は、管理システムを形成する運用管理用サーバ１１０と、複数の機器を含み、サービスを提供するサービス提供システムを形成するデータセンタ１２０と、を有する。運用管理用サーバ１１０とデータセンタ１２０とは通信可能に接続されている。また、図１に示すように、クラウドシステム１００に対しては、端末装置１４０＿１〜１４０＿ｍ（ｍは任意の整数）が、ネットワーク１３０を介して接続する。
【００１４】
運用管理用サーバ１１０は、機器管理部１１１、構成管理部１１２、運用管理部１１３を有する。
【００１５】
機器管理部１１１は、データセンタ１２０に含まれる各機器（サーバ、ストレージ、スイッチ等）の状態や、各機器間のネットワークの状態を測定し、実測値として管理する。また、機器管理部１１１は、データセンタ１２０におけるアベイラビリティゾーンの状態やデータセンタ１２０に含まれるサーバ上で稼働する仮想マシン（ＶＭ：Virtual Machine）の状態、データセンタ１２０を利用するユーザの状態を測定し、実測値として管理する。機器管理部１１１では、これら管理対象について測定した実測値を、構成情報として構成情報格納部１１４に格納する。なお、アベイラビリティゾーンとは、障害対策やディザスタリカバリのために、物理的な機器等を分散させ、ゾーンごとに分離させた場合における各ゾーンのことをいう。
【００１６】
構成管理部１１２は、データセンタ１２０に含まれる各機器（サーバ、ストレージ、スイッチ）やネットワークの仕様、データセンタ１２０に含まれるアベイラビリティゾーンの区分等に関する情報を管理する。また、構成管理部１１２は、サーバ上で稼働するＶＭの仕様や、データセンタ１２０を利用するユーザの属性を示す属性情報等を管理する。更に、構成管理部１１２は、データセンタ１２０に含まれる各サーバの構成アイテムや各機器間の動作の関係性を示す関係性情報等を管理する。構成管理部１１２では、これら管理対象についての固定値を、構成情報として構成情報格納部１１４に格納する。
【００１７】
運用管理部１１３は、管理部１１３＿１と事前検証部１１３＿２とを有する。管理部１１３＿１は、データセンタ１２０を監視し、障害や構成変更等の各種事象が発生した際に、ポリシ情報格納部１１５に格納されたポリシ情報に従って、運用管理作業を自動で実行する。これにより、データセンタ１２０を管理する管理者が定義した品質（データセンタ１２０により提供されるサービスにおいて満たすべき品質）が記述された品質情報の一例である、サービス品質保証（ＳＬＡ：Service Level Agreement）が満たされる。なお、データセンタ１２０を管理する管理者が定義したＳＬＡは、ＳＬＡ情報として、ＳＬＡ情報格納部１１６に予め格納されている。
【００１８】
管理部１１３＿１が運用管理作業を行う際に従うポリシ情報には、各種事象が発生した場合に実施される運用管理作業の作業内容に対応する処理内容が規定されたポリシルールが複数含まれる。
【００１９】
事前検証部１１３＿２は、データセンタ１２０が稼働を開始するタイミングで、ポリシ情報格納部１１５に格納されているポリシ情報に基づいて、データセンタ１２０が正常に稼働するかの判定を行い、判定結果を出力する。正常に稼働するかの判定は、各種事象が発生したことで機器の状態が仮にＳＬＡを満たさない状態になったとしても、ポリシルールを適用することで（ポリシルールに従うことで）、ＳＬＡを満たす状態へと遷移するかを判定することにより行う。
【００２０】
ポリシ情報に含まれるポリシルールが適切に規定されていないと、データセンタ１２０において各種事象が発生したことで機器の状態がＳＬＡを満たさない状態となった場合に、ポリシルールを適用してもＳＬＡを満たす状態へと遷移しないことになる。この結果、データセンタ１２０を利用するユーザに影響を与えてしまう。このようなことに鑑みて、事前検証部１１３＿２では、データセンタ１２０の稼働を開始するタイミングで、データセンタ１２０が正常に稼働するか否かの判定を行う。
【００２１】
なお、データセンタ１２０の稼働を開始するタイミングとは、例えば、新たにデータセンタ１２０を構築し、実際に運用を開始するタイミングや、データセンタ１２０内の構成を変更した後に、データセンタ１２０の稼働を開始するタイミング等が含まれる。あるいは、ポリシ情報格納部１１５に格納されているポリシ情報等の各種情報を変更した後に、データセンタ１２０の稼働を開始するタイミング等が含まれる。
【００２２】
なお、データセンタ１２０が稼働を開始するタイミングで、データセンタ１２０が正常に稼働するか否かを判定し、判定結果を出力することを、以下では「事前検証」と称する。
【００２３】
事前検証において、事前検証部１１３＿２は、データセンタ１２０に含まれる各機器の状態がどのように遷移するのか（状態の遷移）を示す「状態遷移情報」を作成する。状態遷移情報は、機器の状態を示す「状態情報」であって、機器の状態が遷移する場合の遷移元の状態情報と遷移先の状態情報とを繋ぐ情報である。状態遷移情報には、遷移元の状態情報と遷移先の状態情報と、遷移の方向を示す情報とが含まれる。事前検証部１１３＿２は、状態遷移情報とＳＬＡ情報とに基づいて、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移するか否かを判定する。これにより、事前検証部１１３＿２は、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移するために必要なポリシルールが、ポリシ情報格納部１１５に格納されたポリシ情報に規定されているか否かを判定することができる。
【００２４】
なお、事前検証部１１３＿２は、状態遷移情報を作成するにあたり、各機器の状態の依存関係を規定した依存情報や、ポリシ情報に従って運用管理作業が実施される際に適用されるべきポリシルールの優先順位を規定した優先情報を参照する。依存情報は依存情報格納部１１７に予め格納され、優先情報は優先情報格納部１１８に予め格納されているものとする。
【００２５】
事前検証において、事前検証部１１３＿２により作成された、状態情報や状態遷移情報は、状態管理情報として状態管理情報格納部１１９に格納される。
【００２６】
機器管理部１１１、構成管理部１１２、管理部１１３＿１、事前検証部１１３＿２は、それぞれ、専用のプログラムが運用管理用サーバ１１０のコンピュータによって実行されることで実現される。例えば、事前検証部１１３＿２は、事前検証プログラムが運用管理用サーバ１１０のコンピュータにより実行されることで実現される。
【００２７】
データセンタ１２０は、サーバやストレージなどの各機器（コンピューティングリソース）を有し、これらコンピューティングリソースを、ネットワーク１３０を介して各ユーザの端末装置１４０＿１〜１４０＿ｍに提供する。これにより、データセンタ１２０は、各ユーザの端末装置１４０＿１〜１４０＿ｍに、クラウドコンピューティングサービスを提供するサービス提供システムとして機能する。
【００２８】
端末装置１４０＿１〜１４０＿ｍは、データセンタ１２０が提供するサービスを利用する各ユーザが使用する装置である。各ユーザは、端末装置１４０＿１〜１４０＿ｍを使用してデータセンタ１２０に接続要求を行うことで、データセンタ１２０が有するコンピューティングリソースを利用する。これにより、各ユーザは、データセンタ１２０が提供するクラウドコンピューティングサービスを利用することができる。
【００２９】
次に、データセンタ１２０内のシステム構成について説明する。図２は、データセンタ内のシステム構成の一例を示す図である。図２に示すように、データセンタ１２０は複数のアベイラビリティゾーンに区切られている。図２の例は、データセンタ１２０が、アベイラビリティゾーン２１０（ゾーン名＝"ＡＺ１"）とアベイラビリティゾーン２２０（ゾーン名＝"ＡＺ２"）の２つに区切られた場合を示している。
【００３０】
それぞれのアベイラビリティゾーン２１０、２２０は、複数のサーバと複数のストレージとスイッチとを有しており、複数のサーバと複数のストレージとは、それぞれスイッチを介して相互に接続されている。
【００３１】
図２の例によれば、アベイラビリティゾーン２１０は、３２台のサーバ（サーバ名＝"Ｓｖｒ１"〜"Ｓｖｒ３２"）と、８台のストレージ（ストレージ名＝"Ｓｔｒ１"〜"Ｓｔｒ８"）と、１台のスイッチ（スイッチ名＝"ＳＷ１"）とを有する。また、アベイラビリティゾーン２１０内における通信速度は、１０Ｇｂｐｓである。更に、サーバ名＝"Ｓｖｒ１"のサーバ上では、ＶＭ（ＶＭ名＝"ＶＭ１"）が稼働している。
【００３２】
同様に、アベイラビリティゾーン２２０は、３２台のサーバ（サーバ名＝"Ｓｖｒ３３"〜"Ｓｖｒ６４"）と、８台のストレージ（ストレージ名＝"Ｓｔｒ９"〜"Ｓｔｒ１６"）と、１台のスイッチ（スイッチ名＝"ＳＷ２"）とを有する。また、アベイラビリティゾーン２２０内における通信速度は、１Ｇｂｐｓである。更に、サーバ名＝"Ｓｖｒ６４"のサーバ上では、ＶＭ（ＶＭ名＝"ＶＭ２"）が稼働している。
【００３３】
また、図２の例によれば、アベイラビリティゾーン２１０内のスイッチ及びアベイラビリティゾーン２２０内のスイッチは、スイッチ（スイッチ名＝"ＳＷ３"）を介して、ネットワーク１３０と接続されている。
【００３４】
更に、図２の例によれば、スイッチ名＝"ＳＷ１"のスイッチとスイッチ名＝"ＳＷ３"のスイッチとの間の通信速度は、１０Ｇｐｂｓである。また、スイッチ名＝"ＳＷ２"のスイッチとスイッチ名＝"ＳＷ３"のスイッチとの間の通信速度は、１Ｇｂｐｓである。
【００３５】
次に、運用管理用サーバ１１０のハードウェア構成について説明する。図３は、運用管理用サーバのハードウェア構成の一例を示す図である。図３に示すように、運用管理用サーバ１１０は、ＣＰＵ（Central Processing Unit）３０１、ＲＯＭ（Read Only Memory）３０２、ＲＡＭ（Random Access Memory）３０３を備える。また、運用管理用サーバ１１０は、補助記憶部３０４、ユーザインタフェース部３０５、通信部３０６、ドライブ部３０７を備える。なお、運用管理用サーバ１１０の各部は、バス３０８を介して相互に接続されている。
【００３６】
補助記憶部３０４にインストールされた各種プログラム（例えば、事前検証プログラム等）はＣＰＵ３０１により実行される。ＲＯＭ３０２は、不揮発性メモリである。ＲＯＭ３０２は、補助記憶部３０４に格納された各種プログラムがＣＰＵ３０１によって実行される際に必要な各種プログラム、データ等を格納する主記憶部として機能する。具体的には、ＲＯＭ３０２はＢＩＯＳ（Basic Input/Output System）やＥＦＩ（Extensible Firmware Interface）等のブートプログラム等を格納する。
【００３７】
ＲＡＭ３０３は、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）等の揮発性メモリであり、主記憶部として機能する。ＲＡＭ３０３は、補助記憶部３０４に格納された各種プログラムがＣＰＵ３０１によって実行される際に展開される、作業領域を提供する。
【００３８】
補助記憶部３０４は、運用管理用サーバ１１０にインストールされた各種プログラムや、各種プログラムがＣＰＵ３０１によって実行される際に用いられる情報（構成情報、ポリシ情報、ＳＬＡ情報、依存情報、優先情報、状態管理情報等）を格納するデバイスである。
【００３９】
ユーザインタフェース部３０５は、運用管理用サーバ１１０に対して管理者が各種指示を入力する際に用いられるデバイスである。また、ユーザインタフェース部３０５は、運用管理用サーバ１１０における各種処理結果（例えば、判定結果）を表示するデバイスである。
【００４０】
通信部３０６は、運用管理用サーバ１１０が接続するデータセンタ１２０と通信するためのデバイスである。
【００４１】
ドライブ部３０７は記録媒体３１０をセットするためのデバイスである。ここでいう記録媒体３１０には、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体３１０には、ＲＯＭ、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等も含まれる。
【００４２】
なお、補助記憶部３０４に格納される事前検証プログラムは、例えば、配布された記録媒体３１０がドライブ部３０７にセットされ、記録媒体３１０に記録された事前検証プログラムがドライブ部３０７により読み出されることで格納される。あるいは、補助記憶部３０４に格納される事前検証プログラムは、通信部３０６を介して受信されることで格納されてもよい。
【００４３】
次に、運用管理用サーバ１１０により管理される管理対象の種類について説明する。図４は、管理対象の種類を示す図である。図４に示すように、運用管理用サーバ１１０により管理される管理対象には、サーバ（Server）、ストレージ（Storage）、スイッチ（Switch）、仮想マシン（Virtual Machine）が含まれる。更に、運用管理用サーバ１１０により管理される管理対象には、ネットワーク（Network）、アベイラビリティゾーン（Availability Zone）、ユーザ（User）が含まれる。
【００４４】
なお、以下の説明において、管理対象を略称で示す場合があるが、管理対象のそれぞれの略称は、サーバ＝Ｓｖｒ、ストレージ＝Ｓｔｒ、スイッチ＝ＳＷ、仮想マシン＝ＶＭ、ネットワーク＝ＮＷ、アベイラビリティゾーン＝ＡＺ、ユーザ＝Ｕｓｒである。
【００４５】
また、図４に示すように、管理対象のステータス（稼働状態を示すステータス）が取り得る値は、管理対象＝サーバ、ストレージ、スイッチ、仮想マシン、ネットワーク、アベイラビリティゾーンの場合、"Ｒｕｎｎｉｎｇ"と"Ｓｔｏｐｐｅｄ"である。"Ｒｕｎｎｉｎｇ"は、管理対象のステータスが稼働中であることを表しており、"Ｓｔｏｐｐｅｄ"は、管理対象のステータスが"停止中"であることを表している。
【００４６】
更に、図４に示すように、管理対象のステータスが取り得る値は、管理対象の種類＝ユーザの場合、"Ａｃｔｉｖａｔｅｄ"と"Ｄｅａｃｔｉｖａｔｅｄ"である。"Ａｃｔｉｖａｔｅｄ"は、ユーザのステータスが動作中（接続要求を行いデータセンタ１２０を利用している状態）を表しており、"Ｄｅａｃｔｉｖａｔｅｄ"は、ユーザのステータスが非動作中（データセンタ１２０を利用していない状態）を表している。
【００４７】
次に、運用管理用サーバ１１０の構成情報格納部１１４に格納される構成情報について図５〜図７を用いて説明する。図５は、構成情報の一例を示す第１の図である。
【００４８】
図５に示すように、構成情報５００には、データセンタ１２０の構成を示す情報が格納される。具体的には、構成情報５００には、データセンタ１２０に含まれる各機器（サーバ、ストレージ、スイッチ）やネットワークの仕様が固定値として格納される。また、構成情報５００には、データセンタ１２０に含まれるこれら管理対象の状態が実測値として格納される。
【００４９】
例えば、サーバについての構成情報５１０には、情報の項目として"管理対象ＩＤ"、"ゾーン"、"ステータス"、"ＣＰＵ"、"メモリ"、"ディスク"等が含まれる。構成情報５１０に含まれるこれらの情報の項目について、データセンタ１２０に含まれるサーバが構成管理部１１２により管理される。また、構成情報５１０に含まれるこれらの情報の項目について、データセンタ１２０に含まれるサーバの現在の状態が機器管理部１１１により管理される。
【００５０】
また、ストレージについての構成情報５２０〜ネットワークについての構成情報５４０にも同様の情報の項目が含まれ、それぞれの情報の項目について、データセンタ１２０に含まれるストレージ、スイッチ、ネットワークが構成管理部１１２により管理される。また、それぞれの情報の項目について、ストレージ、スイッチ、ネットワークの現在の状態が機器管理部１１１により管理される。
【００５１】
図６は、構成情報の一例を示す第２の図である。図６に示すように、構成情報５００には、更に、アベイラビリティゾーンの区分や仮想マシンの仕様、データセンタ１２０を利用するユーザの属性を示す属性情報等が固定値として格納される。また、構成情報５００には、データセンタ１２０に含まれるこれら管理対象の状態が実測値として格納される。
【００５２】
例えば、アベイラビリティゾーンの構成情報６１０には、情報の項目として"管理対象ＩＤ"、"ステータス"が含まれる。構成情報６１０に含まれるこれらの情報の項目について、データセンタ１２０における各アベイラビリティゾーンが構成管理部１１２により管理されるとともに、それぞれのアベイラビリティゾーンの現在の状態が機器管理部１１１により管理される。
【００５３】
また、仮想マシンについての構成情報６２０、ユーザの属性情報６３０にも同様の情報の項目が含まれている。このため、それぞれの情報の項目について、データセンタ１２０のサーバ上で稼働するＶＭ、データセンタ１２０を利用するユーザの属性情報等が構成管理部１１２により管理される。また、それぞれの情報の項目について、それぞれのＶＭ、それぞれのユーザの現在の状態が機器管理部１１１により管理される。
【００５４】
図７は、構成情報の一例を示す第３の図である。図７に示すように、構成情報５００には、更に、サーバ構成アイテムを示す情報７１０と各機器間の動作の関係性を示す関係性情報７２０とが格納される。サーバ構成アイテムを示す情報７１０には、例えば、データセンタ１２０に含まれる各サーバの詳細仕様を示す情報が記述される。
【００５５】
また、各機器間の動作の関係性を示す関係性情報７２０には、例えば、サーバの動作とスイッチの動作との関係性を示す情報が記述される。例えば、サーバ名＝"Ｓｖｒ１"のサーバは、スイッチ名＝"ＳＷ１"のスイッチが"Ｒｕｎｎｉｎｇ（稼働中）"の場合には稼働するが、"Ｓｔｏｐｐｅｄ（停止中）"の場合には、稼働しない。このため、関係性情報７２０には、サーバ名＝"Ｓｖｒ１"のサーバの動作と、スイッチ名＝"ＳＷ１"のスイッチの動作との関係性を示す情報が記述される。
【００５６】
このように、各機器間の動作の関係性を示す関係性情報７２０には、一方の機器の動作が停止した場合に、他方の機器の動作も停止する関係性等を示す情報が記述される。
【００５７】
次に、運用管理用サーバ１１０のポリシ情報格納部１１５に格納されるポリシ情報について説明する。図８は、ポリシ情報の一例を示す図である。
【００５８】
図８に示すように、ポリシ情報８００には、複数のポリシルール８０１〜８０５が含まれる。ポリシルール８０１〜８０５には、各種事象が発生したか否かを判定するための条件と、該当条件が成立した場合に実施される運用管理作業の作業内容に対応する処理内容とが規定されている。
【００５９】
また、図８に示すように、ポリシルール８０１〜８０５には、事前検証プログラムが解釈できる形で条件や運用管理作業の作業内容が記述されている。図８において、"［Ａ］"は、指定された種類の管理対象のうち、Ａという管理対象ＩＤを有する管理対象を表している。"［＊］"は、指定された種類の管理対象すべてを順に確認することを表している。"−＞"は、条件が記述されていることを表している。
【００６０】
なお、ポリシルール８０１〜８０５それぞれの下の点線枠内に記述された内容は、ポリシルール８０１〜８０５を、人が解釈できる形に書き換えたものである。点線枠内の記述から明らかなように、ポリシルール８０１〜８０５は、いずれも、「ＩＦ部分」に、各種事象が発生したか否かを判定するための条件が記述されている。また、「ＴＨＥＮ部分」に、該当条件が成立した場合に実施される運用管理作業の作業内容に対応する処理内容が規定されている。
【００６１】
ポリシルール８０１（ポリシ名＝"ポリシ１"）には、データセンタ１２０に含まれるサーバのうち、いずれかのサーバのステータスが停止中になった場合に、該当サーバ上で稼働しているＶＭを、他のサーバに移動することが規定されている。
【００６２】
ポリシルール８０２（ポリシ名＝"ポリシ２"）には、データセンタ１２０に含まれるサーバのうち、いずれかのサーバのディスク使用量が８０％を超えた場合に、該当サーバに追加のディスクを接続することが規定されている。
【００６３】
ポリシルール８０３（ポリシ名＝"ポリシ３"）には、データセンタ１２０に含まれるスイッチのうち、いずれかのスイッチのステータスが停止中になった場合に、該当スイッチを再起動することが規定されている。
【００６４】
ポリシルール８０４（ポリシ名＝"ポリシ４"）には、データセンタ１２０に含まれるサーバのうち、いずれかのサーバのディスク使用量が２０％を下回った場合に、該当サーバのディスクを該当サーバから切り離すことが規定されている。
【００６５】
ポリシルール８０５（ポリシ名＝"ポリシ５"）には、データセンタ１２０に含まれるサーバ上で稼働するＶＭのうち、いずれかのＶＭのステータスが停止中になった場合に、該当ＶＭを再起動することが規定されている。
【００６６】
次に、運用管理用サーバ１１０のＳＬＡ情報格納部１１６に格納されているＳＬＡ情報について説明する。図９は、ＳＬＡ情報の一例を示す図である。
【００６７】
図９に示すように、ＳＬＡ情報９００には、複数のＳＬＡ９０１、９０２が格納されている。ＳＬＡ９０１、９０２には、管理部１１３＿１が運用管理作業を実施することで満たされるべき品質（データセンタ１２０が提供するサービスにおいて満たすべき品質）に関する情報が規定されている。なお、ＳＬＡ９０１、９０２もポリシルール同様、事前検証プログラムが解釈できる形で記述されている。
【００６８】
図９において、［（Ａ＝Ｂ）＊］は、指定された種類の管理対象のうち、Ａ＝Ｂが成立するすべての管理対象を表している。また、Ａ（：Ｂ）は、Ａにあてはまるものを全てＢと置くことを表している。なお、ＳＬＡ９０１〜９０２それぞれの下の点線枠内に記述されている内容は、ＳＬＡ９０１、９０２を、人が解釈できる形に書き換えたものである。
【００６９】
ＳＬＡ９０１（ＳＬＡ名＝"ＳＬＡ１"）には、"Ｕｓｒ１"により特定されるユーザのＶＭのステータスが常に稼働中であること、がデータセンタ１２０が提供するサービスにおいて満たすべき品質に関する情報として規定されている。
【００７０】
ＳＬＡ９０２（ＳＬＡ名＝"ＳＬＡ２"）には、"Ｕｓｒ１"により特定されるユーザのＶＭが稼働するＤｏｍ０のディスクは、常に２０％以上の空きがあること、がデータセンタ１２０が提供するサービスにおいて満たすべき品質に関する情報として規定されている。なお、Ｄｏｍ０とは、ドメイン０の略でありＶＭ上で稼働するＯＳ（Operating System）のうち、特定の役割を果たすＯＳである。
【００７１】
次に、運用管理用サーバ１１０の依存情報格納部１１７に格納されている依存情報について説明する。図１０は、依存情報の一例を示す図である。
【００７２】
図１０に示すように、依存情報１０００には、複数の依存関係１００１、１００２が含まれる。依存関係１００１、１００２には、データセンタ１２０に含まれる各機器の状態の依存関係が規定されている。
【００７３】
依存関係１００１（関係名＝"依存関係１"）には、データセンタ１２０に含まれるサーバのうち、いずれかのサーバのステータスが停止中になると、該当サーバをＤＯＭ０のサーバとして稼働しているＶＭのステータスも停止中になることが規定されている。
【００７４】
依存関係１００１によれば、例えば、サーバ名＝"Ｓｖｒ１"のサーバをＤｏｍ０のサーバとして、ＶＭが稼働していた場合、サーバ名＝"Ｓｖｒ１"のサーバが停止してＤｏｍ０が停止すると、稼働していたＶＭも停止することになる。
【００７５】
依存関係１００２（関係名＝"依存関係２"）には、データセンタ１２０に含まれるスイッチのうち、いずれかのスイッチのステータスが停止中になると、該当スイッチをソースまたは送信先とするネットワークのステータスも停止中になることが規定されている。
【００７６】
依存関係１００２によれば、例えば、スイッチ名＝"ＳＷ１"のスイッチが停止すると、スイッチ名＝"ＳＷ１"のスイッチをソースまたは送信先とするネットワークも停止することになる。
【００７７】
次に、運用管理用サーバ１１０の優先情報格納部１１８に格納されている優先情報について説明する。図１１は、優先情報の一例を示す図である。
【００７８】
図１１に示すように、優先情報１１００には、優先順位１１０１が含まれる。優先順位１１０１には、ポリシ情報に従って運用管理作業を実施する際に適用されるべきポリシルールの優先順位が規定されている。
【００７９】
優先順位１１０１（順位名＝"優先順位１"）には、ポリシ名＝"ポリシ１"のポリシルールと、ポリシ名＝"ポリシ５"のポリシルールとが同時に満たされた場合に、ポリシ名＝"ポリシ１"のポリシルールを優先して適用することが規定されている。
【００８０】
優先順位１１０１によれば、データセンタ１２０に含まれるサーバのうち、ＶＭが稼働するサーバが停止したことでＶＭが停止した場合、管理部１１３＿１は、ＶＭを再起動する前に、ＶＭを他のサーバに移動する。つまり、ポリシ名＝"ポリシ５"のポリシルールを適用する前に、ポリシ名＝"ポリシ１"のポリシルールを適用する。これにより、他のサーバが稼働していれば、ＶＭを稼働させることができる。
【００８１】
次に、事前検証部１１３＿２の機能構成について説明する。図１２は、事前検証部の機能構成の一例を示す図である。
【００８２】
図１２に示すように、事前検証部１１３＿２は、状態作成部１２１１、不要状態検索部１２１２、状態遷移作成部１２１３、ポリシ遷移特定部１２１４、ＳＬＡチェック部１２１５、ＳＬＡ判別部１２１６、出力部１２１７を有する。なお、図１２において、点線矢印は、各格納部から情報を読み出すことを表している。また、図１２において、実線矢印は、実線矢印の始点となる各機能部で作成された情報が状態管理情報格納部１１９に格納され、実線矢印の終点となる各機能部が、状態管理情報格納部１１９から情報を読み出すことを表している。
【００８３】
状態作成部１２１１は、構成情報格納部１１４に格納された構成情報５００と、ポリシ情報格納部１１５に格納されたポリシ情報８００とに基づいて、管理対象に含まれる各機器の状態情報を作成する。ポリシ情報８００に含まれる各ポリシルール８０１〜８０５には、各種事象が発生したか否かを判定するための条件を規定した「ＩＦ部分」が含まれる。このため、状態作成部１２１１は、各ポリシルール８０１〜８０５の「ＩＦ部分」に基づいて、構成情報５００に含まれる管理対象の各機器の状態情報を作成する。なお、状態作成部１２１１は、管理対象ＩＤを有するすべての機器について、状態情報を作成する。
【００８４】
更に、状態作成部１２１１は、例えば、管理対象ＩＤごとにそれぞれ作成された状態情報を組み合わせたり、異なるポリシルールに基づいてそれぞれ作成された状態情報を組み合わせることで、新たな状態情報を作成する。
【００８５】
不要状態検索部１２１２は、状態作成部１２１１により作成され、状態管理情報格納部１１９に格納された状態情報の数を減らす。状態情報の数が多いと、作成すべき状態遷移情報の数が増大し、事前検証処理を実行する際の運用管理用サーバ１１０の処理負荷が上がるためである。
【００８６】
不要状態検索部１２１２は、例えば、状態作成部１２１１により作成された状態情報のうち、各機器の状態を記述した状態内容の一部に重なる部分がある場合、それらの状態情報を集約する処理を行う。これにより、不要状態検索部１２１２は、状態管理情報格納部１１９に格納された状態情報の数を減らすことができる。
【００８７】
また、不要状態検索部１２１２は、例えば、状態作成部１２１１により作成された状態情報のうち、ステータスが停止中の状態にある機器についての内部状態に関する記述を含む状態情報を削除する処理を行う。これにより、不要状態検索部１２１２は、状態管理情報格納部１１９に格納された状態情報の数を減らすことができる。
【００８８】
また、不要状態検索部１２１２は、例えば、管理対象に含まれる複数の機器のうち、同じ種類の機器についての様々な状態の組み合わせが、別々の状態情報として作成されていた場合に、別々に作成された状態情報を集約する処理を行う。これにより、不要状態検索部１２１２は、状態管理情報格納部１１９に格納された状態情報の数を減らすことができる。ただし、別々に作成された状態情報を集約した場合であっても、当該機器の各状態に対して、依存情報１０００で規定された依存関係が存在していた場合には、不要状態検索部１２１２では、集約した状態情報を修正する。つまり、不要状態検索部１２１２は、集約した状態情報を、機器の状態の依存関係に応じて、別々の状態情報として作成し直す。
【００８９】
更に、不要状態検索部１２１２は、例えば、状態作成部１２１１により作成された状態情報のうち、依存情報１０００で規定された依存関係から、存在しえないと判断される状態を示す状態情報を削除する処理を行う。これにより、不要状態検索部１２１２は、状態管理情報格納部１１９に格納された状態情報の数を減らすことができる。
【００９０】
なお、不要状態検索部１２１２が状態情報の数を減らすために実行する上記処理の順序は任意であるものとする。また、不要状態検索部１２１２は、状態情報の数を減らすための上記処理をすべて実行する必要はなく、一部の処理を実行してもよい。
【００９１】
状態遷移作成部１２１３は、管理対象に含まれる各機器の状態の遷移を示す状態遷移情報を列挙する。具体的には、状態遷移作成部１２１３は、状態管理情報格納部１１９に格納された状態情報に基づいて、各機器の状態情報同士を繋ぐ状態遷移情報を作成する。
【００９２】
状態遷移情報を作成するにあたり、状態遷移作成部１２１３は、例えば、状態情報の作成に際して用いたポリシルールに基づいて、それぞれの状態情報同士を繋ぐ状態遷移情報を作成する。なお、一方の状態情報から見た場合の状態遷移情報を表現する場合、以下では"状態情報に対応する状態遷移情報"と記載するものとする。
【００９３】
また、状態遷移作成部１２１３は、複数の状態情報を組み合わせて作成した状態情報同士を繋ぐ状態遷移情報の作成に際しては、例えば、組み合わせ前の状態情報同士を繋ぐ状態遷移情報に基づいて、組み合わせ後の状態情報同士を繋ぐ状態遷移情報を作成する。これにより、組み合わせ前の状態情報の作成に際して用いたポリシルールに基づいて作成された状態遷移情報が引き継がれることになる。
【００９４】
また、状態遷移作成部１２１３は、複数の状態情報を集約して作成した状態情報同士を繋ぐ状態遷移情報の作成に際しては、例えば、集約前の状態情報同士を繋ぐ状態遷移情報に基づいて、集約後の状態情報同士を繋ぐ状態遷移情報を作成する。これにより、集約前の状態情報の作成に際して用いたポリシルールに基づいて作成された状態遷移情報が引き継がれることになる。
【００９５】
また、状態遷移作成部１２１３では、ステータスが停止中の状態にある機器についての内部状態に関する記述を含む状態情報として、不要状態検索部１２１２により削除されていた場合、関連する他の状態情報同士を繋ぐ状態遷移情報を作成する。具体的には、状態遷移作成部１２１３は、削除される前の状態情報の作成に際して用いたポリシルールに基づいて、関連する他の状態情報同士を繋ぐ状態遷移情報を作成する。
【００９６】
また、状態遷移作成部１２１３では、存在しえない状態を示す状態情報として不要状態検索部１２１２により削除されていた場合、関連する他の状態情報同士を繋ぐ状態遷移情報を作成する。具体的には、状態遷移作成部１２１３は、削除される前の状態情報の作成に際して用いたポリシルールに基づいて、関連する他の状態情報同士を繋ぐ状態遷移情報を作成する。
【００９７】
なお、状態遷移作成部１２１３は、作成した状態遷移情報を状態管理情報格納部１１９に格納する。
【００９８】
ポリシ遷移特定部１２１４は、ポリシ情報格納部１１５に格納されたポリシ情報８００に含まれるポリシルール８０１〜８０５それぞれが適用された場合の、各機器の状態の遷移を特定する。これにより、ポリシ遷移特定部１２１４は、ポリシルール８０１〜８０５を適用することで、各機器の状態がどのように遷移するかを認識することができる。
【００９９】
また、ポリシ遷移特定部１２１４は、特定した各機器の状態の遷移と、状態管理情報格納部１１９に格納された状態遷移情報により示される各機器の状態の遷移とを対比する。これにより、ポリシ遷移特定部１２１４は、ポリシルール８０１〜８０５が適用されることで、いずれの状態遷移情報で示された状態の遷移に対応する状態の遷移が発生するのかを認識することができる。
【０１００】
ＳＬＡチェック部１２１５は、状態管理情報格納部１１９に格納された状態遷移情報と、ＳＬＡ情報格納部１１６に格納されたＳＬＡ情報９００に含まれるＳＬＡ９０１、９０２とを比較する。これにより、ＳＬＡチェック部１２１５は、ＳＬＡを満たさない状態を示す状態情報を遷移元とする状態遷移情報を判別する。
【０１０１】
ＳＬＡ判別部１２１６は、ＳＬＡチェック部１２１５により判別された状態遷移情報のうち、ポリシ遷移特定部１２１４により特定された状態の遷移が対応していない状態遷移情報を判別する。
【０１０２】
また、ＳＬＡ判別部１２１６は、ポリシ遷移特定部１２１４により特定された状態の遷移が対応していない状態遷移情報を判別したか否かに応じて、以下の判定を行う。
【０１０３】
すなわち、状態遷移情報を判別した場合、ＳＬＡ判別部１２１６では、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移しない状態遷移情報があると判定する。
【０１０４】
一方、状態遷移情報を判別しなかった場合、ＳＬＡ判別部１２１６では、現状のポリシルールを適用して、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移しない状態遷移情報はないと判定する。
【０１０５】
ＳＬＡ判別部１２１６は、状態遷移情報を判別したか否かに応じて判定した判定結果を出力部１２１７に通知する。なお、出力部１２１７に通知する判定結果には、判別した状態遷移情報の有無に加え、判別した状態遷移情報そのものが含まれる。
【０１０６】
出力部１２１７は、ＳＬＡ判別部１２１６より通知された判定結果を出力する。ＳＬＡ判別部１２１６により、判別された状態遷移情報がある旨の判定結果が通知された場合、出力部１２１７は、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たす状態へと遷移しないケースがある旨のメッセージを出力する。更に、出力部１２１７は、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移しない状態遷移情報に含まれる、遷移元の状態情報及び遷移先の状態情報のいずれか一方または両方を出力する。
【０１０７】
一方、ＳＬＡ判別部１２１６により、判別された状態遷移情報がない旨の判定結果が通知された場合、出力部１２１７は、現状のポリシルールが適切である旨のメッセージを出力する。
【０１０８】
これにより、管理者は、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たす状態へと遷移しないケースがあることを認識することができる。また、管理者は、現状のポリシルールを適用しても、ＳＬＡを満たす状態へと遷移しない場合の遷移元の機器の状態を示す状態情報を認識することができる。更に、管理者は、ＳＬＡを満たすために、遷移すべき遷移先の機器の状態を示す状態情報を認識することができる。
【０１０９】
続いて、事前検証部１１３＿２の各部（状態作成部１２１１、不要状態検索部１２１２、状態遷移作成部１２１３、ポリシ遷移特定部１２１４、ＳＬＡチェック部１２１５、ＳＬＡ判別部１２１６、出力部１２１７）の機能について、詳細を説明する。
【０１１０】
はじめに、図１３〜図１５を用いて状態作成部１２１１の機能について、詳細を説明する。図１３は、状態作成部の機能を説明するための第１の図であり、管理対象に含まれる各機器の状態情報を作成する機能を説明するための図である。
【０１１１】
図１３に示すように、状態作成部１２１１は、ポリシ情報格納部１１５に格納されたポリシ情報８００に含まれる各ポリシルール８０１〜８０５を読み出し、「ＩＦ部分」を取得する。
【０１１２】
ポリシ名＝"ポリシ１"のポリシルール８０１の場合、ＩＦ部分１３０１には、データセンタ１２０に含まれるサーバのうちのいずれかのサーバのステータスが停止中であること、が規定されている。状態作成部１２１１は、取得したＩＦ部分１３０１を満たす状態を示す状態情報と、満たさない状態を示す状態情報とを作成する。
【０１１３】
具体的には、状態作成部１２１１は、ＩＦ部分１３０１を満たす状態として、いずれかのサーバのステータスが停止中の状態を示す状態情報１３１１を作成する。また、状態作成部１２１１は、ＩＦ部分１３０１を満たさない状態として、いずれかのサーバのステータスが停止中でない状態を示す状態情報１３１２を作成する。
【０１１４】
なお、図面を簡略化するために、状態情報１３１１及び状態情報１３１２には、それぞれ、状態情報を識別するための「状態ＩＤ（Identifier）」を記述し、それぞれの状態情報の内容（「状態内容」）は、点線で囲まれた領域に別途示している。ただし、実際の状態情報には、状態ＩＤと状態内容の両方が含まれるものとする。
【０１１５】
ポリシ名＝"ポリシ２"のポリシルール８０２の場合、ＩＦ部分１３０２には、データセンタ１２０に含まれるサーバのうちのいずれかのサーバのディスク使用量が８０％を超えていること、が規定されている。状態作成部１２１１は、取得したＩＦ部分１３０２を満たす状態を示す状態情報と、満たさない状態を示す状態情報とを作成する。
【０１１６】
具体的には、状態作成部１２１１は、ＩＦ部分１３０２を満たす状態として、いずれかのサーバのディスク使用量が８０％を超えている状態を示す状態情報１３１３を作成する。また、状態作成部１２１１は、ＩＦ部分１３０２を満たさない状態として、いずれかのサーバのディスク使用量が８０％以下である状態を示す状態情報１３１４を作成する。
【０１１７】
ポリシ名＝"ポリシ３"のポリシルール８０３の場合、ＩＦ部分１３０３には、データセンタ１２０に含まれるスイッチのうちのいずれかのスイッチのステータスが停止中であること、が規定されている。状態作成部１２１１は、取得したＩＦ部分１３０３を満たす状態を示す状態情報と、満たさない状態を示す状態情報とを作成する。
【０１１８】
具体的には、状態作成部１２１１は、ＩＦ部分１３０３を満たす状態として、いずれかのスイッチのステータスが停止中の状態を示す状態情報１３１５を作成する。また、状態作成部１２１１は、ＩＦ部分１３０３を満たさない状態として、いずれかのスイッチのステータスが停止中でない状態を示す状態情報１３１６を作成する。
【０１１９】
ポリシ名＝"ポリシ４"のポリシルール８０４の場合、ＩＦ部分１３０４には、データセンタ１２０に含まれるサーバのうちのいずれかのサーバのディスク使用量が２０％を下回っていること、が規定されている。状態作成部１２１１は、取得したＩＦ部分１３０４を満たす状態を示す状態情報と、満たさない状態を示す状態情報とを作成する。
【０１２０】
具体的には、状態作成部１２１１は、ＩＦ部分１３０４を満たす状態として、いずれかのサーバのディスク使用量が２０％を下回っている状態を示す状態情報１３１７を作成する。また、状態作成部１２１１は、ＩＦ部分１３０４を満たさない状態として、いずれかのサーバのディスク使用量が２０％以上である状態を示す状態情報１３１８を作成する。
【０１２１】
ポリシ名＝"ポリシ５"のポリシルール８０５の場合、ＩＦ部分１３０５には、データセンタ１２０に含まれるＶＭのうちのいずれかのＶＭのステータスが停止中であること、が規定されている。状態作成部１２１１は、取得したＩＦ部分１３０５を満たす状態を示す状態情報と、満たさない状態を示す状態情報とを作成する。
【０１２２】
具体的には、状態作成部１２１１は、ＩＦ部分１３０５を満たす状態として、いずれかのＶＭのステータスが停止中の状態を示す状態情報１３１９を作成する。また、状態作成部１２１１は、ＩＦ部分１３０５を満たさない状態として、いずれかのＶＭのステータスが停止中でない状態を示す状態情報１３２０を作成する。
【０１２３】
図１４は、状態作成部の機能を説明するための第２の図であり、管理対象ＩＤごとに作成された状態情報を組み合わせる機能と、異なるポリシルールに基づいて作成された状態情報を組み合わせる機能とを説明するための図である。
【０１２４】
図１４（ａ）に示すように、状態作成部１２１１は、状態管理情報格納部１１９に格納した状態情報のうち、異なる管理対象ＩＤを有する機器の状態情報を読み出して取得する。図１４（ａ）の例は、管理対象ＩＤ＝"Ｓｖｒ１"の状態情報であって、状態ＩＤ＝"Ｓ１−１"の状態情報１４０１と、管理対象ＩＤ＝"Ｓｖｒ２"の状態情報であって、状態ＩＤ＝"Ｓ１−１"の状態情報１４０２とを読み出して取得したことを示している。
【０１２５】
なお、以下では、状態情報を図示するにあたり、特定の機器の状態情報であることを示す場合においては、状態ＩＤの前に管理対象ＩＤを付して示すものとする。
【０１２６】
状態作成部１２１１は、取得した各状態情報１４０１、１４０２を組み合わせて、１つの状態情報１４１１を作成する。このように、状態作成部１２１１では、同じポリシルール（図１４（ａ）の例ではポリシルール８０１）に基づいて作成された各機器の状態情報を組み合わせて新たな状態情報を作成することができる。
【０１２７】
また、図１４（ｂ）に示すように、状態作成部１２１１は、状態管理情報格納部１１９に格納された状態情報のうち、異なるポリシルールに基づいて作成された状態情報を読み出して取得する。図１４（ｂ）の例は、管理対象ＩＤ＝"Ｓｖｒ１"の状態情報であって、ポリシルール８０１に基づいて作成された、状態ＩＤ＝"Ｓ１−１"の状態情報１４０１を読み出して取得したことを示している。また、図１４（ｂ）の例は、管理対象ＩＤ＝"ＶＭ１"の状態情報であって、ポリシルール８０５に基づいて作成された、状態ＩＤ＝"Ｓ５−１"の状態情報１４２１を読み出して取得したことを示している。
【０１２８】
状態作成部１２１１は、取得した各状態情報１４０１、１４２１を組み合わせて、１つの状態情報１４３１を作成する。このように、状態作成部１２１１では、異なるポリシルールに基づいて作成した各機器の状態情報を組み合わせて新たな状態情報を作成することができる。
【０１２９】
図１５は、状態作成部により格納された状態管理情報の一例を示す図である。図１５に示すように、状態管理情報１５００は情報の項目として、"状態情報リスト"と、"状態遷移可能リスト"と、"状態リスト"とが含まれる。
【０１３０】
"状態情報リスト"には、状態作成部１２１１により作成された各状態情報が格納される。各状態情報は、状態ＩＤと状態内容とが含まれる。
【０１３１】
"状態遷移可能リスト"には、１の状態情報と他の状態情報とを繋ぐ状態遷移情報が格納される。なお、状態作成部１２１１により各状態情報が作成された段階では、１の状態情報と他の状態情報とを繋ぐ状態遷移情報は未だ作成されていないが、ここでは、既に作成されたものと仮定して説明を行う。
【０１３２】
図１５に示すように"状態遷移可能リスト"には、遷移前の状態を示す遷移元の状態情報（の状態ＩＤ）と、遷移後の状態を示す遷移先の状態情報（の状態ＩＤ）とを繋ぐ状態遷移情報が格納される。
【０１３３】
状態遷移情報１５１１は、遷移元の状態情報の状態ＩＤが"Ｓ１−０"であり、遷移先の状態情報の状態ＩＤが"Ｓ１−１"であることを示している。同様に、状態遷移情報１５１２は、遷移元の状態情報の状態ＩＤが"Ｓ１−１"であり、遷移先の状態情報の状態ＩＤが"Ｓ１−０"であることを示している。
【０１３４】
"状態リスト"には、管理対象に含まれる機器ごとに、現在の状態を示す値（Ｖａｌ：Value）が、状態ＩＤと対応付けて格納される。"Ｖａｌ"には、管理対象に含まれる機器の現在の状態が、ポリシルールに規定されたＩＦ部分を満たさない状態である場合に、"０"が格納される。また、"Ｖａｌ"には、管理対象に含まれる機器の現在の状態が、ポリシルールに規定されたＩＦ部分を満たす状態である場合に、"１"が格納される。
【０１３５】
図１５の例では、管理対象ＩＤ＝"Ｓｖｒ１"のサーバの状態ＩＤ＝"Ｓ１"に対応付けられたＶａｌが"０"である。つまり、図１５の例は、管理対象ＩＤ＝"Ｓｖｒ１"のサーバの現在の状態が、ポリシルール８０１に規定されたＩＦ部分を満たさない状態であることを示している。
【０１３６】
次に、図１６〜図２１を用いて不要状態検索部１２１２の機能について、詳細を説明する。
【０１３７】
図１６は、不要状態検索部の機能を説明するための第１の図であり、状態情報のうち、各機器の状態を記述した状態内容の一部に重なる部分がある状態情報について、それらを集約する機能を説明するための図である。
【０１３８】
図１６に示すように、不要状態検索部１２１２は、状態管理情報格納部１１９に格納された状態情報のうち、各機器の状態を記述した状態内容の一部に重なる部分がある状態情報を取得する。
【０１３９】
図１６の例では、状態ＩＤ＝"Ｓ２−１"の状態情報、状態ＩＤ＝"Ｓ２−０"の状態情報、状態ＩＤ＝"Ｓ４−１"の状態情報、状態ＩＤ＝"Ｓ４−０"の状態情報は、いずれも、状態内容の一部に、文字列として"Server[*]->Disk"が含まれている。したがって、これらの状態情報は、状態内容の一部に重なる部分がある状態情報であると判断され、不要状態検索部１２１２にて取得される。
【０１４０】
不要状態検索部１２１２は、取得した状態情報を集約することで、状態情報の数を減らす。図１６に示された状態情報は、サーバのディスク使用量が８０％を超えた状態、８０％以下の状態、２０％を下回った状態、２０％以上の状態の４つの状態情報を含む。これら４つの状態情報は、８０％を超えた状態、２０％を下回った状態、２０％以上８０％以下の状態、の３つの状態をそれぞれ示す状態情報として集約することができる。
【０１４１】
不要状態検索部１２１２では、取得した４つの状態情報を、これら３つの状態情報に集約することで得た状態情報に、新たに状態ＩＤを付する。図１６の例は、"Server[*]->Disk>80%"と記述された状態内容に、状態ＩＤ＝"Ｓ２−Ｓ４−１"が付されたことを示している。また、図１６の例は、"Server[*]->Disk<20%"と記述された状態内容に、状態ＩＤ＝"Ｓ２−Ｓ４−２"が付されたことを示している。更に、図１６の例は、"20%≦<Server[*]->Disk≦80%"と記述された状態内容に、状態ＩＤ＝"Ｓ２−Ｓ４−０"が付されたことを示している。
【０１４２】
このように、不要状態検索部１２１２によれば、状態内容の一部に重なる部分がある状態情報を集約できるため、状態管理情報格納部１１９に格納される状態情報の数を減らすことができる。
【０１４３】
図１７は、不要状態検索部の機能を説明するための第２の図であり、ステータスが停止中の状態にある機器についての内部状態に関する記述が含まれる状態情報を削除する機能を説明するための図である。
【０１４４】
図１７に示すように、不要状態検索部１２１２は、状態管理情報格納部１１９に格納された状態情報のうち、複数の状態情報が組み合わされて作成された状態情報を読み出して取得する。ここでは、不要状態検索部１２１２は、機器のステータスが停止中の状態であることを示す状態情報と、当該機器の内部状態（子要素の状態）を示す状態情報とが組み合わされて作成された状態情報を読み出して取得する。
【０１４５】
このような状態情報を取得するのは、サーバのステータスが停止中の場合、当該サーバのディスク使用量がどのような状態であっても同じであり、状態情報を分ける必要がないからである。
【０１４６】
なお、機器とその子要素との関係は、例えば、構成情報格納部１１４に格納された構成情報５００に含まれるサーバ構成アイテムを示す情報７１０に基づいて判断される。情報７１０において規定されたサーバ構成アイテムには、サーバとサーバを構成するアイテム（子要素）とが規定されているからである。
【０１４７】
図１７の例は、サーバのステータスが停止中の状態を示す状態情報と、サーバの子要素であるディスクの使用量が８０％より大きい状態を示す状態情報とが組み合された状態情報１７０１が取得されたことを示している。なお、サーバのステータスが停止中の状態を示す状態情報は、状態ＩＤ＝"Ｓ−１"の状態情報であり、サーバのディスク使用量が８０％より大きい状態を示す状態情報は、状態ＩＤ＝"Ｓ２−Ｓ４−１"の状態情報である。
【０１４８】
また、図１７の例は、サーバのステータスが停止中の状態を示す状態情報と、サーバの子要素であるディスクの使用量が２０％を下回った状態を示す状態情報とが組み合された状態情報１７０２が取得されたことを示している。なお、サーバのステータスが停止中の状態を示す状態情報は、状態ＩＤ＝"Ｓ−１"の状態情報であり、サーバのディスク使用量が２０％を下回った状態を示す状態情報は、状態ＩＤ＝"Ｓ２−Ｓ４−２"の状態情報である。
【０１４９】
更に、図１７の例は、サーバのステータスが停止中の状態を示す状態情報と、サーバの子要素であるディスクの使用量が２０％以上８０％未満の状態を示す状態情報とが組み合わされた状態情報１７０３が取得されたことを示している。なお、サーバのステータスが停止中の状態を示す状態情報は、状態ＩＤ＝"Ｓ−１"の状態情報であり、サーバのディスク使用量が２０％以上８０％未満の状態を示す状態情報は、状態ＩＤ＝"Ｓ２−Ｓ４−０"の状態情報である。
【０１５０】
不要状態検索部１２１２では、取得した状態情報１７０１〜１７０３について、ステータスが停止中の状態にある機器についての内部状態に関する記述を削除する。図１７の例は、不要状態検索部１２１２が、状態ＩＤ＝"Ｓ２−Ｓ４−０"、"Ｓ２−Ｓ４−１"、"Ｓ２−Ｓ４−２"の状態情報の記述を、状態情報１７０１〜１７０３からそれぞれ削除して、状態情報１７１１を出力した様子を示している。不要状態検索部１２１２が、状態ＩＤ＝"Ｓ２−Ｓ４−０"、"Ｓ２−Ｓ４−１"、"Ｓ２−Ｓ４−２"の状態情報の記述を、状態情報１７０１〜１７０３からそれぞれ削除することで、削除後の状態情報１７０１〜１７０３は同じ状態情報となる。このため、不要状態検索部１２１２では、１つの状態情報１７１１のみを出力することになる。
【０１５１】
このように、ステータスが停止中の状態にある機器についての内部状態に関する記述を削除することで、状態管理情報格納部１１９に格納される状態情報の数を減らすことができる。
【０１５２】
図１８は、不要状態検索部の機能を説明するための第３の図であり、管理対象に含まれる複数の機器のうち、同じ種類の機器についての様々な状態の組み合わせが、別々の状態情報として作成されていた場合に状態情報を集約する機能を説明するための図である。
【０１５３】
図１８に示すように、不要状態検索部１２１２には、状態管理情報格納部１１９に格納された状態情報のうち、同じ種類の機器についての様々な状態の組み合わせが、別々に作成された状態情報を読み出して取得する。
【０１５４】
同じ種類の機器とは、例えば、同じゾーンに属する３２台のサーバを指す。図１８の例は、３２台のサーバについての状態情報の様々な組み合わせの状態情報（状態情報１８０１〜状態情報１８３２）を、不要状態検索部１２１２が取得したことを示している。
【０１５５】
状態情報１８０１〜状態情報１８３２は、いずれも、１台のサーバのステータスが停止中であり、３１台のサーバのステータスが稼働中である状態を示す状態情報であり、各状態情報の違いは、停止しているサーバが異なっているだけである。つまり、状態情報１８０１〜状態情報１８３２は、同じゾーン内のサーバ１台のステータスが停止中である状態を表しているにすぎず、ステータスが停止中である１台のサーバを特定する必要はない。換言すると、ステータスが停止中である１台のサーバは入れ替えが可能である（以下、同じ種類の機器について、様々な状態が組み合わされた場合の各機器を、「入れ替え可能な機器」ともいう）。
【０１５６】
不要状態検索部１２１２では、状態情報１８０１〜状態情報１８３２により状態が示されたサーバ群を、同じゾーン内のサーバ群という１つのグループとみなして集約する。なお、不要状態検索部１２１２では、１つのグループとみなせる機器を、サーバ構成アイテムを示す情報７１０及び関係性情報７２０に基づいて判定する。
【０１５７】
具体的には、不要状態検索部１２１２は、情報７１０に含まれるサーバ構成アイテムを参照し、実測値以外の部分であって、管理対象ＩＤやサーバ名等のようにサーバごとに異なる値を除いた部分が一致しているサーバを抽出する。また、不要状態検索部１２１２は、抽出したサーバについて構成情報５００に含まれる関係性情報７２０に基づいて、同じスイッチに接続されているサーバを更に抽出する。
【０１５８】
図１８の例は、不要状態検索部１２１２により、状態情報１８０１〜状態情報１８３２が集約されて、"[Svr1-Svr32](31):S1-0、[Svr1-Svr32(1):S1-1"と記述された状態情報１８１１が作成されたことを示している。
【０１５９】
このように、不要状態検索部１２１２では、管理対象に含まれる複数の機器のうち、同じ種類の機器についての様々な状態の組み合わせが、別々の状態情報として作成されていた場合に、別々に作成された状態情報を集約する。これにより、状態管理情報格納部１１９に格納される状態情報の数を減らすことができる。
【０１６０】
図１８の例では、更に「同じゾーン内のサーバ群３２台のうち何台かのサーバのステータスが停止中である状態」を示す状態情報として捉えることで、２３２通りの状態情報の組み合わせを３２個の状態情報に集約することができる。
【０１６１】
図１９は、不要状態検索部の機能を説明するための第４の図であり、別々に作成された状態情報を集約した場合であっても、機器の状態に依存関係がある場合には、集約した状態情報について修正を行う機能を説明するための図である。
【０１６２】
別々に作成された状態情報を集約した場合であっても、機器の状態に依存関係がある場合には、依存関係に当てはまるか否かに応じて、状態の遷移が複数発生しうる。このため、不要状態検索部１２１２では、集約した状態情報について修正を行うべく、状態管理情報格納部１１９に格納された状態情報のうち、別々に作成された状態情報を集約することで作成された状態情報を読み出して取得する。
【０１６３】
図１９において、状態情報１９０１は、不要状態検索部１２１２において別々に作成された状態情報を集約することで作成された状態情報である。具体的には、状態情報１９０１は、管理対象ＩＤ＝"Ｓｖｒ１"〜"Ｓｖｒ３２"の３２台のサーバのいずれかのステータスが稼働中であり、管理対象ＩＤ＝"ＶＭ１"のＶＭのステータスが稼働中である状態を示す状態情報である。
【０１６４】
図１９に示すように、状態情報１９０１を取得すると、不要状態検索部１２１２では、依存情報１０００において規定された依存関係を参照する。関係名＝"依存関係１"として規定された依存関係１００１には、ＶＭが稼働しているサーバのステータスが停止中になると、該当サーバのステータスの変更に伴ってＶＭのステータスも停止中になることが規定されている。つまり、サーバが停止したことに伴ってＶＭが停止するか否かは、停止したサーバがＤｏｍ０のサーバであったか否かに依存する。
【０１６５】
このため、不要状態検索部１２１２では、状態情報１９０１を、ＶＭが稼働しているサーバのステータスが停止中である状態と、ＶＭが稼働しているサーバ以外のサーバのステータスが停止中である状態とに分ける。これにより、不要状態検索部１２１２は、状態情報１９１１と状態情報１９１２とを作成する。
【０１６６】
状態情報１９１１は、同じゾーンに属する３２台のサーバのうち、３１台のサーバのステータスが稼働中であり、１台のサーバのステータスが停止中である状態を示す状態情報である。なお、状態情報１９１１は、ステータスが停止中である１台のサーバが、ＶＭが稼働しているサーバ以外のサーバである場合を示している。
【０１６７】
また、状態情報１９１２は、同じゾーンに属する３２台のサーバのうち、３１台のサーバのステータスが稼働中であり、１台のサーバのステータスが停止中である状態を示す状態情報である。なお、状態情報１９１２は、ステータスが停止中である１台のサーバが、ＶＭが稼働しているサーバである場合を示している。
【０１６８】
不要状態検索部１２１２の上記機能によれば、２３２通りの状態情報の組み合わせを集約することで作成した３２個の状態情報を、それぞれ２つに分類するため、最大で３２個の状態情報が増加する（つまり、最大で６４個の状態情報となる）。
【０１６９】
しかしながら、最大で３２個の状態情報が増加したとしても、依然として、集約前の状態情報の数（２３２通りの状態情報）よりも、はるかに少ない数の状態情報にすることができる。
【０１７０】
図２０は、不要状態検索部の機能を説明するための第５の図であり、状態管理情報格納部１１９に格納された状態情報のうち、存在しえない状態を示す状態情報について、状態遷移情報の作成が不要と判断して削除する機能を説明するための図である。
【０１７１】
図２０に示すように、不要状態検索部１２１２は、状態管理情報格納部１１９に格納された状態情報を取得する。状態管理情報格納部１１９に格納された状態情報の中には、各機器の状態の依存関係を考慮した場合に、存在しえない状態を示す状態情報が含まれる。このため、不要状態検索部１２１２では、これらの状態情報を削除する。
【０１７２】
状態情報２００１は、管理対象ＩＤ＝"Ｓｖｒ１"〜"Ｓｖｒ３２"の３２台のサーバのステータスがいずれも稼働中であり、管理対象ＩＤ＝"ＶＭ１"のＶＭのステータスが稼働中である状態を示す状態情報である。また、状態情報２００２は、管理対象ＩＤ＝"Ｓｖｒ１"〜"Ｓｖｒ３２"の３２台のサーバのうちの３１台のサーバのステータスが稼働中であり、いずれか１台のサーバのステータスが停止中である状態を示す状態情報である。なお、状態情報２００２は、管理対象ＩＤ＝"ＶＭ１"のＶＭのステータスが稼働中である状態を示している。
【０１７３】
また、状態情報２００３は、管理対象ＩＤ＝"Ｓｖｒ１"〜"Ｓｖｒ３２"の３２台のサーバのうちの３０台のサーバのステータスが稼働中であり、いずれか２台のサーバのステータスが停止中である状態を示す状態情報である。なお、状態情報２００３は、管理対象ＩＤ＝"ＶＭ１"のＶＭのステータスが稼働中である状態を示している。
【０１７４】
更に、状態情報２０３３は、管理対象ＩＤ＝"Ｓｖｒ１"〜"Ｓｖｒ３２"の３２台のサーバのいずれのステータスも停止中であり、管理対象ＩＤ＝"ＶＭ１"のＶＭのステータスが稼働中である状態を示す状態情報である。
【０１７５】
図２０に示すように、状態情報２００１〜２０３３を取得すると、不要状態検索部１２１２は、依存情報１０００に規定された依存関係を参照する。関係名＝"依存関係１"により規定された依存関係１００１には、ＶＭが稼働しているサーバのステータスが停止中になると、当該サーバのステータスの変更に伴ってＶＭのステータスも停止中になることが規定されている。
【０１７６】
ここで、状態情報２０３３は、３２台のサーバのいずれのステータスも停止中である状態を示しているため、依存関係１によれば、管理対象ＩＤ＝"ＶＭ１"のＶＭのステータスが稼働中であることはありえない。
【０１７７】
このため、不要状態検索部１２１２では、取得した状態情報２００１〜状態情報２０３３のうち、状態情報２０３３を存在しえない状態を示す状態情報であると判断して削除する。
【０１７８】
このように、存在しえない状態を示す状態情報を削除することで、不要状態検索部１２１２によれば、状態管理情報格納部１１９に格納される状態情報の数を減らすことができる。
【０１７９】
図２１は、不要状態検索部により格納された状態管理情報の一例を示す図である。状態作成部１２１１により格納された状態管理情報１５００に対して、不要状態検索部１２１２により格納された状態管理情報２１００は、状態情報を集約または削除した結果が反映されている。
【０１８０】
例えば、状態管理情報１５００の場合、"状態情報リスト"には、状態ＩＤ＝"Ｓ２−０"、"Ｓ２−１"、"Ｓ４−０"、"Ｓ４−１"の状態情報が格納されていた。これに対して、状態管理情報２１００の場合、これらの状態情報は削除され、新たに、状態ＩＤ＝"Ｓ２−Ｓ４−０"、"Ｓ２−Ｓ４−１"、"Ｓ２−Ｓ４−２"の状態情報が格納されている。
【０１８１】
また、状態管理情報１５００の場合、"状態リスト"には、状態ＩＤ＝"Ｓ２"、"Ｓ４"の値が"Ｖａｌ"にそれぞれ別々に格納されていた。これに対して、状態管理情報２１００の場合、状態ＩＤ＝"Ｓ２−Ｓ４"の値が"Ｖａｌ"に集約して格納されている。
【０１８２】
次に、図２２〜図２９を用いて状態遷移作成部１２１３の機能について、詳細を説明する。図２２は、状態遷移作成部の機能を説明するための第１の図であり、状態情報の作成に際して用いたポリシルールに基づいて、それぞれの状態情報に対応する状態遷移情報を作成する機能を説明するための図である。
【０１８３】
状態遷移作成部１２１３は、状態管理情報格納部１１９に格納された状態管理情報２１００の"状態情報リスト"より、各状態情報を読み出して取得する。
【０１８４】
状態遷移作成部１２１３は、取得した各状態情報に対応する状態遷移情報を作成する。ここで、状態遷移作成部１２１３が取得した各状態情報には、各状態情報が作成される際に用いられたポリシルールが存在する。このため、状態遷移作成部１２１３は、各状態情報が作成される際に用いられたポリシルールを参照し、状態遷移情報を作成する。
【０１８５】
図２２（ａ）の例は、状態遷移作成部１２１３が、状態ＩＤ＝"Ｓ１−０"の状態情報２２０１と、状態ＩＤ＝"Ｓ１−１"の状態情報２２０２とを取得した様子を示している。状態ＩＤ＝"Ｓ１−０"の状態情報２２０１及び状態ＩＤ＝"Ｓ１−１"の状態情報２２０２は、それぞれ、状態作成部１２１１が、ポリシ名＝"ポリシ１"で特定されるポリシルール８０１に基づいて作成した状態情報である。
【０１８６】
したがって、状態遷移作成部１２１３は、これらの状態情報が作成される際に用いられたポリシルール８０１を参照し、これらの状態情報を繋ぐ状態遷移情報２２１１を作成する。
【０１８７】
また、図２２（ｂ）の例は、状態遷移作成部１２１３が、状態ＩＤ＝"Ｓ３−０"の状態情報２２０３と、状態ＩＤ＝"Ｓ３−１"の状態情報２２０４とを取得した様子を示している。状態ＩＤ＝"Ｓ３−０"の状態情報２２０３及び状態ＩＤ＝"Ｓ３−１"の状態情報２２０４は、それぞれ、状態作成部１２１１が、ポリシ名＝"ポリシ３"で特定されるポリシルール８０３に基づいて作成した状態情報である。
【０１８８】
したがって、状態遷移作成部１２１３は、これらの状態情報が作成される際に用いられたポリシルール８０３を参照し、これらの状態情報を繋ぐ状態遷移情報２２１２を作成する。
【０１８９】
図２３は、状態遷移作成部の機能を説明するための第２の図であり、組み合わせ前のそれぞれの状態情報に対応する状態遷移情報に基づいて、組み合わせ後の状態情報に対応する状態遷移情報を作成する機能を説明するための図である。
【０１９０】
状態遷移作成部１２１３は、状態管理情報格納部１１９に格納された状態管理情報２１００の"状態情報リスト"より、各状態情報を読み出すことで、各状態情報を取得する。
【０１９１】
状態遷移作成部１２１３は、取得した状態情報に基づいて状態遷移情報を作成する。ここで、状態遷移作成部１２１３が取得した各状態情報が、組み合わせ後の状態情報であった場合、状態遷移作成部１２１３は、組み合わせ前のそれぞれの状態情報に対応する状態遷移情報に基づいて、組み合わせ後の状態情報に対応する状態遷移情報を作成する。
【０１９２】
図２３の例は、状態遷移作成部１２１３が、組み合わせ後の状態情報として、状態情報２３０１、状態情報２３０２、状態情報２３０３、状態情報２３０４を取得した様子を示している。
【０１９３】
状態情報２３０１は、状態ＩＤ＝"Ｓ１−０"の状態情報と状態ＩＤ＝"Ｓ３−０"の状態情報とを組み合わせることで作成された状態情報である。状態情報２３０２は、状態ＩＤ＝"Ｓ１−１"の状態情報と状態ＩＤ＝"Ｓ３−０"の状態情報とを組み合わせることで作成された状態情報である。状態情報２３０３は、状態ＩＤ＝"Ｓ１−０"の状態情報と状態ＩＤ＝"Ｓ３−１"の状態情報とを組み合わせることで作成された状態情報である。更に、状態情報２３０４は、状態ＩＤ＝"Ｓ１−１"の状態情報と状態ＩＤ＝"Ｓ３−１"の状態情報とを組み合わせることで作成された状態情報である。
【０１９４】
ここで、状態ＩＤ＝"Ｓ１−０"の状態情報と、状態ＩＤ＝"Ｓ１−１"の状態情報とを繋ぐ状態遷移情報２２１１は、ポリシルール８０１に基づいて作成済みであるとする。また、状態ＩＤ＝"Ｓ３−０"の状態情報と、状態ＩＤ＝"Ｓ３−１"の状態情報とを繋ぐ状態遷移情報２２１２は、ポリシルール８０２に基づいて作成済みであるとする。
【０１９５】
状態遷移作成部１２１３では、状態情報２３０１〜状態情報２３０４を繋ぐ状態遷移情報を、作成済みの状態遷移情報２２１１、２２１２に基づいて作成する。
【０１９６】
具体的には、状態遷移作成部１２１３は、状態遷移情報２２１１に基づいて、状態情報２３０１と状態情報２３０２とを繋ぐ状態遷移情報２３１１を作成する。また、状態遷移作成部１２１３は、状態遷移情報２２１１に基づいて、状態情報２３０３と状態情報２３０４とを繋ぐ状態遷移情報２３１４を作成する。
【０１９７】
また、状態遷移作成部１２１３は、状態遷移情報２２１２に基づいて、状態情報２３０１と状態情報２３０３とを繋ぐ状態遷移情報２３１２を作成する。また、状態遷移作成部１２１３は、状態遷移情報２２１２に基づいて、状態情報２３０２と状態情報２３０４とを繋ぐ状態遷移情報２３１３を作成する。
【０１９８】
このように、状態遷移作成部１２１３によれば、組み合わせ前の状態情報に基づいて作成した状態遷移情報を用いることで、組み合わせ後の状態情報を繋ぐ状態遷移情報を作成することができる。
【０１９９】
図２４は、状態遷移作成部の機能を説明するための第３の図であり、状態内容の一部に重なる部分がある状態情報であると判断されて不要状態検索部１２１２により集約された状態情報について、状態遷移情報を作成する機能を説明するための図である。
【０２００】
状態遷移作成部１２１３は、状態管理情報２１００の"状態情報リスト"に格納された各状態情報の中から、状態内容の一部に重なる部分がある状態情報であると判断されて不要状態検索部１２１２により集約された状態情報を読み出して取得する。
【０２０１】
状態遷移作成部１２１３は、集約された状態情報に基づいて状態遷移情報を作成するにあたり、集約前の状態情報に基づいて作成された状態遷移情報を参照する。また、状態遷移作成部１２１３は、参照した状態遷移情報に基づいて、取得した状態情報に対応する状態遷移情報を作成する。
【０２０２】
図２４の例は、状態遷移作成部１２１３が、集約された状態情報として、状態情報２４０１、状態情報２４０２、状態情報２４０３を取得した様子を示している。
【０２０３】
状態情報２４０１〜状態情報２４０３は、状態ＩＤ＝"Ｓ２−１"の状態情報、状態ＩＤ＝"Ｓ２−０"の状態情報、状態ＩＤ＝"Ｓ４−０"の状態情報、状態ＩＤ＝"Ｓ４−１"の状態情報を集約することで作成された状態情報である。
【０２０４】
ここで、状態ＩＤ＝"Ｓ２−１"の状態情報と、状態ＩＤ＝"Ｓ２−０"の状態情報とを繋ぐ状態遷移情報２４１１は、ポリシルール８０２に基づいて作成済みであるとする。また、状態ＩＤ＝"Ｓ４−０"の状態情報と、状態ＩＤ＝"Ｓ４−１"の状態情報とを繋ぐ状態遷移情報２４１２は、ポリシルール８０４に基づいて作成済みであるとする。
【０２０５】
状態遷移作成部１２１３では、状態情報２４０１と状態情報２４０２とを繋ぐ状態遷移情報２４２１を、作成済みの状態遷移情報２４１１を参照して作成する。また、状態遷移作成部１２１３では、状態情報２４０２と状態情報２４０３とを繋ぐ状態遷移情報２４２２を、作成済みの状態遷移情報２４１２を参照して作成する。
【０２０６】
このように、状態遷移作成部１２１３によれば、集約前の状態情報に基づく状態遷移情報を参照することにより、集約後の状態情報に基づく状態遷移情報を作成することができる。
【０２０７】
図２５は、状態遷移作成部の機能を説明するための第４の図であり、ステータスが停止中の状態にある機器についての内部状態に関する記述が、不要状態検索部１２１２により削除された状態情報に対応する状態遷移情報を作成する機能を説明するための図である。
【０２０８】
なお、図２５では説明の簡略化のため、状態遷移作成部１２１３が取得する状態情報についての説明は省略し、状態遷移作成部１２１３が参照する状態遷移情報と、参照した状態遷移情報に基づいて作成する状態遷移情報について図示している。また、図２５では、ステータスが停止中の状態にある機器についての内部状態に関する記述が削除された状態情報の例として、状態情報２５００を挙げている。
【０２０９】
図２５（ａ）は、状態遷移作成部１２１３が参照する状態遷移情報を示している。図２５（ａ）に示すように、状態ＩＤ＝"Ｓ１−０"の状態情報と、状態ＩＤ＝"Ｓ１−１"の状態情報とを繋ぐ状態遷移情報２５１１は、ポリシルール８０１に基づいて作成済みであるとする。また、状態ＩＤ＝"Ｓ２−Ｓ４−１"の状態情報と、状態ＩＤ＝"Ｓ２−Ｓ４−０"の状態情報とを繋ぐ状態遷移情報２５１２はポリシルール８０２に基づいて作成済みであるとする。更に、状態ＩＤ＝"Ｓ２−Ｓ４−０"の状態情報と、状態ＩＤ＝"Ｓ２−Ｓ４−２"の状態情報とを繋ぐ状態遷移情報２５１３はポリシルール８０４に基づいて作成済みであるとする。
【０２１０】
状態遷移作成部１２１３では、状態情報２５００に基づいて状態遷移情報を作成するにあたり、まず、内部状態に関する記述が削除される前の状態情報２５４１〜２５４３に対応する状態遷移情報を作成する。
【０２１１】
図２５（ｂ）は、状態情報２５４１〜２５４３に対応する状態遷移情報を示す図である。図２５（ｂ）において、状態情報２５３１と状態情報２５４１とを繋ぐ状態遷移情報２５２３は、状態遷移情報２５１１に基づいて作成される。また、状態情報２５３２と状態情報２５４２とを繋ぐ状態遷移情報２５２４、状態情報２５３３と状態情報２５４３とを繋ぐ状態遷移情報２５２５も、状態遷移情報２５１１に基づいて作成される。
【０２１２】
更に、状態情報２５４１と状態情報２５４２とを繋ぐ状態遷移情報２５２６は、状態遷移情報２５１２に基づいて作成され、状態情報２５４２と状態情報２５４３とを繋ぐ状態遷移情報２５２７は、状態遷移情報２５１３に基づいて作成される。
【０２１３】
状態遷移作成部１２１３では、状態情報２５３１〜２５３３、２５４１〜２５４３に対応する状態遷移情報２５２３〜２５２７に基づいて、状態情報２５００に対応する状態遷移情報を作成する。
【０２１４】
図２５（ｃ）は、状態遷移情報２５２３〜２５２７に基づいて、状態情報２５００に対応する状態遷移情報を作成した様子を示す図である。図２５（ｃ）において、状態遷移情報２５２８は、状態遷移情報２５２３と状態遷移情報２５２６とに基づいて作成される。また、状態遷移情報２５２９は、状態遷移情報２５２５と状態遷移情報２５２７とに基づいて作成される。
【０２１５】
このように、状態遷移作成部１２１３によれば、ステータスが停止中の状態にある機器についての内部状態に関する記述が削除された状態情報に対応する状態遷移情報を、削除される前の状態情報に対応する状態遷移情報に基づいて作成することができる。
【０２１６】
図２６は、状態遷移作成部の機能を説明するための第５の図である。図２６は、複数の状態情報（管理対象ＩＤが異なる状態情報や、異なるポリシルールに基づいて作成された状態情報）を組み合わせることで、状態作成部１２１１により作成された状態情報に対応する状態遷移情報を作成する機能を説明するための図である。
【０２１７】
なお、図２６においても説明の簡略化のため、状態遷移作成部１２１３が取得する状態情報についての説明は省略し、状態遷移作成部１２１３が参照する状態遷移情報と、参照した状態遷移情報に基づいて作成する状態遷移情報について図示している。また、図２６では、複数の状態情報を組み合わせることで作成された状態情報の例として、状態情報２６２１〜２６２５、２６４１、２６４２を挙げている。ただし、説明を分かりやすくするため、図２６では、状態情報２６２１〜２６２４、２６４１、２６４２に関連する状態情報もあわせて示している。
【０２１８】
図２６（ａ）は、状態遷移作成部１２１３が参照する状態遷移情報を示している。図２６（ａ）に示すように、管理対象ＩＤ＝"Ｓｖｒ１"のサーバについて、状態ＩＤ＝"Ｓ１−０"の状態情報と、状態ＩＤ＝"Ｓ１−１"の状態情報とを繋ぐ状態遷移情報２６１１は、ポリシルール８０１に基づいて作成済みであるとする。また、管理対象ＩＤ＝"Ｓｖｒ２"のサーバについて、状態ＩＤ＝"Ｓ１−０"の状態情報と、状態ＩＤ＝"Ｓ１−１"とを繋ぐ状態遷移情報２６１２は、ポリシルール８０１に基づいて作成済みであるとする。また、管理対象ＩＤ＝"Ｓｖｒ３２"のサーバについて、状態ＩＤ＝"Ｓ１−０"の状態情報と、状態ＩＤ＝"Ｓ１−１"とを繋ぐ状態遷移情報２６１３は、ポリシルール８０１に基づいて作成済みであるとする。更に、管理対象ＩＤ＝"ＶＭ１"のＶＭについて、状態ＩＤ＝"Ｓ５−０"の状態情報と、状態ＩＤ＝"Ｓ５−１"とを繋ぐ状態遷移情報２６１４は、ポリシルール８０５に基づいて作成済みであるとする。
【０２１９】
状態遷移作成部１２１３では、状態遷移情報２６１１〜２６１４に基づいて、状態情報２６２１〜２６２５、２６４１、２６４２に対応する状態遷移情報を作成する。
【０２２０】
図２６（ｂ）は、状態遷移情報２６１１〜２６１４に基づいて、状態情報２６２１〜２６２５、２６４１、２６４２に対応する状態遷移情報を作成した様子を示す図である。図２６（ｂ）において、状態情報２６２１と状態情報２６２２とは、管理対象ＩＤ＝"Ｓｖｒ１"の状態情報のみが異なっている。したがって、状態情報２６２１と状態情報２６２２とを繋ぐ状態遷移情報２６３１は、状態遷移情報２６１１に基づいて作成される。
【０２２１】
また、状態情報２６２１と状態情報２６２３とは、管理対象ＩＤ＝"Ｓｖｒ２"の状態情報のみが異なっている。したがって、状態情報２６２１と状態情報２６２３とを繋ぐ状態遷移情報２６３２は、状態遷移情報２６１２に基づいて作成される。
【０２２２】
また、状態情報２６２１と状態情報２６２３とは、管理対象ＩＤ＝"Ｓｖｒ３２"の状態情報のみが異なっている。したがって、状態情報２６２１と状態情報２６２４とを繋ぐ状態遷移情報２６３３は、状態遷移情報２６１３に基づいて作成される。
【０２２３】
また、状態情報２６２１と状態情報２６４１とは、管理対象ＩＤ＝"ＶＭ１"の状態情報のみが異なっている。したがって、状態情報２６２１と状態情報２６４１とを繋ぐ状態遷移情報２６３４は、状態遷移情報２６１４に基づいて作成される。
【０２２４】
なお、図２６（ｂ）において、状態情報２６２５と状態情報２６４２とを繋ぐ状態遷移情報２６５１は、優先情報１１００に規定された優先順位１１０１に基づいて削除される。優先順位１１０１には、ポリシ名＝"ポリシ１"のポリシルール８０１の条件とポリシ名＝"ポリシ５"のポリシルール８０５の条件とが同時に満たされる場合、ポリシルール８０１の処理内容を優先して実行することが規定されている。状態情報２６４２は、管理対象ＩＤ＝"Ｓｖｒ１"〜"Ｓｖｒ３２"のサーバ全てのステータスが停止中であり、管理対象ＩＤ＝"ＶＭ１"のＶＭのステータスが停止中の状態である。つまり、状態情報２６４２は、ポリシルール８０１の条件とポリシルール８０５の条件とが同時に満たされている状態である。
【０２２５】
この場合、ポリシルール８０１の処理内容が優先して実行されるため、管理対象ＩＤ＝"ＶＭ１"のＶＭのステータスのみが停止中から稼働中に変わるという状態の遷移は発生しえない。したがって、状態遷移情報２６５１は、状態遷移作成部１２１３により削除される。
【０２２６】
このように、状態遷移作成部１２１３によれば、複数の状態情報を組み合わせることで作成された状態情報に基づく状態遷移情報について、組み合わせ前の状態情報に対応する状態遷移情報を参照することで作成することができる。また、状態遷移作成部１２１３によれば、優先情報１１００を参照することで、発生しえない状態の遷移を示す状態遷移情報を削除することができる。
【０２２７】
図２７は、状態遷移作成部の機能を説明するための第６の図である。図２７は、管理対象に含まれる複数の機器のうち、同じ種類の機器についての様々な状態の組み合わせが、別々の状態情報として作成されていた場合に、集約することで作成された状態情報に対応する状態遷移情報を作成する機能を説明するための図である。
【０２２８】
なお、図２７においても説明の簡略化のため、状態遷移作成部１２１３が取得する状態情報についての説明は省略し、状態遷移作成部１２１３が参照する状態遷移情報と、参照した状態遷移情報に基づいて作成する状態遷移情報について図示している。また、図２７では、別々に作成された状態情報を集約することで作成された状態情報の例として、状態情報２７０１、２７０２、２７２１、２７２２を挙げている。ただし、説明を分かりやすくするため、図２７では、状態情報２７０１、２７０２、２７２１、２７２２に関連する状態情報もあわせて示している。
【０２２９】
図２７（ａ）は、状態遷移作成部１２１３が参照する状態遷移情報を示している。なお、図２７（ａ）に示す状態遷移情報は、図２６（ａ）で示した状態遷移情報と同じであるため、ここでは説明を省略する。
【０２３０】
図２７（ｂ）は、状態遷移情報２６１１〜２６１４に基づいて、状態情報２７０１、２７０２、２７２１、２７２２に対応する状態遷移情報を作成した様子を示す図である。図２７（ｂ）において、状態情報２６２１と状態情報２７０１とは、管理対象ＩＤ＝"Ｓｖｒ１"〜"Ｓｖｒ３２"のいずれか１台のサーバの状態情報のみが異なっている。同様に、状態情報２６４１と状態情報２７２１とは、管理対象ＩＤ＝"Ｓｖｒ１"〜"Ｓｖｒ３２"のいずれか１台のサーバの状態情報のみが異なっている。したがって、状態情報２６２１と状態情報２７０１とを繋ぐ状態遷移情報２７１１、及び、状態情報２６４１と状態情報２７２１とを繋ぐ状態遷移情報２７１５は、例えば、状態遷移情報２６１１に基づいて作成される。
【０２３１】
また、状態情報２７０１と状態情報２７０２とは、管理対象ＩＤ＝"Ｓｖｒ１"〜Ｓｖｒ３２"のいずれか１台のサーバの状態情報のみが異なっている。同様に、状態情報２７２１と状態情報２７２２とは、管理対象ＩＤ＝"Ｓｖｒ１"〜Ｓｖｒ３２"のいずれか１台のサーバの状態情報のみが異なっている。したがって、状態情報２７０１と状態情報２７０２とを繋ぐ状態遷移情報２７１２、及び、状態情報２７２１と状態情報２７２２とを繋ぐ状態遷移情報２７１６は、例えば、状態遷移情報２６１１、２６１２に基づいて作成される。
【０２３２】
また、状態情報２７０１と状態情報２７２１とは、管理対象ＩＤ＝"ＶＭ１"のＶＭの状態情報のみが異なっている。同様に、状態情報２７０２と状態情報２７２２とは、管理対象ＩＤ＝"ＶＭ１"のＶＭの状態情報のみが異なっている。したがって、状態情報２７０１と状態情報２７２１とを繋ぐ状態遷移情報２７１３は、例えば、状態遷移情報２６１１、２６１４に基づいて作成される。また、状態情報２７０２と状態情報２７２２とを繋ぐ状態遷移情報２７１４は、例えば、状態遷移情報２６１１、２６１２、２６１４に基づいて作成される。
【０２３３】
このように、状態遷移作成部１２１３によれば、別々に作成された状態情報を集約することで作成された状態情報に対応する状態遷移情報について、集約前の状態情報に対応する状態遷移情報を参照することで作成することができる。
【０２３４】
図２８は、状態遷移作成部の機能を説明するための第７の図である。図２８は、不要状態検索部１２１２により状態情報が削除された後の、他の状態情報同士を繋ぐ状態遷移情報を、削除される前の状態情報の作成に際して用いたポリシルールに基づいて作成する機能を説明するための図である。
【０２３５】
なお、図２８においても説明の簡略化のため、状態遷移作成部１２１３が取得する状態情報についての説明は省略している。また、図２８の場合、状態遷移作成部１２１３が参照する状態遷移情報が、図２６（ａ）に示した状態遷移情報と同じであるため、状態遷移作成部１２１３が参照する状態遷移情報についても省略している。更に、図２８では、不要状態検索部１２１２により削除された状態情報の例として、状態情報２６２５を挙げ、状態情報２６２５が削除された後の他の状態情報の例として、状態情報２８０１を挙げている。ただし、説明を分かりやすくするため、図２８では、状態情報２６２１、２７０１、２７０２、２６４１、２７２１、２７２２、２８２１も合わせて示している。
【０２３６】
図２８に示すように、状態情報２６２５が削除されることで、状態遷移作成部１２１３では、状態情報２６２５との間を繋ぐ状態遷移情報を削除する。具体的には、状態遷移作成部１２１３は、状態遷移情報２８１２を削除する。なお、状態遷移情報２６５１については、優先情報１１００を参照することで、発生しえない状態の遷移を示す状態遷移情報であるとして既に削除済みであるため、ここでは、状態遷移情報２８１２のみを削除する。
【０２３７】
また、図２８に示すように、状態遷移作成部１２１３では、状態情報２８０１と状態情報２６４２とを繋ぐ状態遷移情報２８１１を作成する。状態遷移作成部１２１３では、例えば、図２６（ａ）で示した状態遷移情報２６１３と状態遷移情報２６１４とを参照することで、状態遷移情報２８１１を作成する。
【０２３８】
このように、状態遷移作成部１２１３によれば、状態情報が削除された後の他の状態情報に対応する状態遷移情報を、削除前の状態情報の作成に際して用いたポリシルールに基づく状態遷移情報を参照することで作成することができる。
【０２３９】
図２９は、状態遷移作成部により格納された状態管理情報の一例を示す図である。不要状態検索部１２１２により集約または削除が行われた後の状態情報が格納された状態管理情報２１００に対して、図２９に示す状態管理情報２９００は、状態遷移可能リストが変更されている。
【０２４０】
例えば、状態管理情報２１００の場合、"状態遷移可能リスト"には、集約または削除される前の状態情報に対応する状態遷移情報が格納されていた。これに対して、状態管理情報２９００の場合、集約または削除された後の状態情報に対応する状態遷移情報が格納されている。
【０２４１】
例えば、状態管理情報２１００の場合、"状態遷移可能リスト"には、状態ＩＤ＝"Ｓ２−０"の状態情報と、状態ＩＤ＝"Ｓ２−１"の状態情報とを繋ぐ状態遷移情報が格納されていた。また、状態ＩＤ＝"Ｓ２−１"の状態情報と、状態ＩＤ＝"Ｓ２−０"の状態情報とを繋ぐ状態遷移情報が格納されていた。
【０２４２】
これに対して、状態管理情報２９００の場合、"状態遷移可能リスト"には、状態ＩＤ＝"Ｓ２−Ｓ４−０"の状態情報と、状態ＩＤ＝"Ｓ２−Ｓ４−１"の状態情報とを繋ぐ状態遷移情報が格納されている。また、状態ＩＤ＝"Ｓ２−Ｓ４−０"の状態情報と、状態ＩＤ＝"Ｓ２−Ｓ４−２"の状態情報とを繋ぐ状態遷移情報が格納されている。
【０２４３】
このように、状態遷移作成部１２１３によれば、不要状態検索部１２１２により集約または削除が行われた後の状態情報に対応する状態遷移情報を作成し、状態管理情報２９００の"状態遷移可能リスト"に格納することができる。
【０２４４】
次に、図３０〜図３２を用いてポリシ遷移特定部１２１４の機能について、詳細を説明する。図３０は、ポリシ遷移特定部の機能を説明するための図である。
【０２４５】
ポリシ遷移特定部１２１４には、ポリシ情報８００に含まれるポリシルール８０１〜８０５が入力される。ポリシ遷移特定部１２１４は、入力されたポリシルール８０１〜８０５それぞれが適用された場合に発生する各機器の状態の遷移を特定する。
【０２４６】
図３０の例は、ポリシ遷移特定部１２１４にポリシルール８０１が入力された場合を示している。ポリシルール８０１は、データセンタ１２０に含まれるいずれかのサーバのステータスが停止中になった場合に、該当サーバ上のＶＭを他のサーバに移動させることを規定している。
【０２４７】
ポリシルール８０１が適用されることで、ＶＭの移動先となるサーバがＤｏｍ０のサーバとなり、移動先のサーバ上においてＶＭが稼働する。ポリシ遷移特定部１２１４では、かかる状態の遷移を特定し、かかる状態の遷移を示す変化情報３００１を、ポリシルール８０１と対応付けて管理する。このように、ポリシ遷移特定部１２１４によれば、ポリシルール８０１〜８０５を適用することで、各機器の状態がどのように遷移するかを認識することができる。
【０２４８】
また、ポリシ遷移特定部１２１４は、特定した状態の遷移と、状態遷移作成部１２１３により作成された状態遷移情報により示される状態の遷移とを対比する。図３１は、ポリシ遷移特定部の実行例を示す図である。図３１の例は、ポリシ遷移特定部１２１４により管理された変化情報３００１の内容（状態の遷移）を、状態遷移作成部１２１３により作成された状態遷移情報と対比して示したものである。
【０２４９】
図３１において、状態遷移情報２６３４、２７１１〜２７１６は、それぞれ、状態情報２６２１、２６４１、２７０１、２７０２、２７２１、２７２２に対応する状態遷移情報であり、状態遷移作成部１２１３により作成された状態遷移情報である（図２８参照）。
【０２５０】
一方、図３１において、太線矢印３１０１、３１０２は、変化情報３００１として管理された状態の遷移を、状態遷移作成部１２１３により作成された状態遷移情報により示される状態の遷移と対比して示したものである。
【０２５１】
サーバが停止したことに伴ってＶＭが停止した状態に対して、ポリシルール８０１が適用されると、ＶＭが他のサーバに移動し、稼働を開始する。かかる状態の遷移は、状態遷移情報２７１３及び状態遷移情報２７１４により示される状態の遷移に他ならない。
【０２５２】
したがって、図３１の例では、状態遷移情報２７１３に対応付けて太線矢印３１０１が示されることになる。また、図３１の例では、状態遷移情報２７１４に対応付けて太線矢印３１０２が示されることになる。
【０２５３】
このように、ポリシ遷移特定部１２１４によれば、ポリシ情報８００に含まれるポリシルール８０１〜８０５が適用されることで発生する状態の遷移が、状態遷移作成部１２１３により作成された状態遷移情報のいずれと対応しているのかを認識することができる。
【０２５４】
なお、ポリシ遷移特定部１２１４では、状態遷移作成部１２１３により作成された状態遷移情報と対応していると認識した場合、"状態遷移可能リスト"の当該状態遷移情報に、パラメータＰｏを記録する。パラメータＰｏは、ポリシルールが適用されることで発生する状態の遷移に対応していることを示すパラメータである。
【０２５５】
図３２は、ポリシ遷移特定部により格納された状態管理情報の一例を示す図である。状態遷移作成部１２１３により状態遷移可能リストが変更された後の状態管理情報２９００に対して、図３２に示す状態管理情報３２００の"状態遷移可能リスト"には、パラメータＰｏが記録されている。パラメータＰｏは、ポリシルールが適用されることで発生する状態の遷移に対応していることを示すパラメータである。
【０２５６】
例えば、ポリシ名＝"ポリシ５"のポリシルール８０５が適用されることで、状態ＩＤ＝"Ｓ１−１"の状態情報で示される状態から、状態ＩＤ＝"Ｓ１−０"の状態情報で示される状態へと遷移する。したがって、状態遷移情報３２０２のパラメータＰｏには、ポリシ名＝"ポリシ５"を表す"５"が記録される。
【０２５７】
また、ポリシ名＝"ポリシ２"のポリシルール８０２が適用されることで、状態ＩＤ＝"Ｓ２−Ｓ４−１"の状態情報で示される状態から、状態ＩＤ＝"Ｓ２−Ｓ４−０"の状態情報で示される状態へと遷移する。更に、ポリシ名＝"ポリシ４"のポリシルール８０４が適用されることで、状態ＩＤ＝"Ｓ２−Ｓ４−２"の状態情報で示される状態から、状態ＩＤ＝"Ｓ２−Ｓ４−０"の状態情報で示される状態へと遷移する。
【０２５８】
したがって、状態遷移情報３２０４、状態遷移情報３２０５のパラメータＰｏには、それぞれ、ポリシ名＝"ポリシ２"を表す"２"と、ポリシ名＝"ポリシ４"を表す"４"とが記録される。
【０２５９】
なお、状態遷移情報３２０１、３２０３で示される状態の遷移は、ポリシ情報８００の各ポリシルール８０１〜８０５を適用することで発生する状態の遷移には対応していない。このため、状態遷移情報３２０１、３２０２のパラメータＰｏには、ポリシ情報８００の各ポリシルール８０１〜８０５を適用することで発生する状態の遷移には対応していないことを示す、"０"が記録される。
【０２６０】
次に、図３３を用いてＳＬＡチェック部１２１５及びＳＬＡ判別部１２１６の機能について、詳細を説明する。図３３は、ＳＬＡチェック部及びＳＬＡ判別部の機能を説明するための図である。
【０２６１】
このうち、図３３（ａ）は、ＳＬＡチェック部１２１５の機能を表している。ＳＬＡチェック部１２１５は、状態管理情報３２００の"状態遷移可能リスト"に格納された状態遷移情報と、ＳＬＡ情報９００の各ＳＬＡを満たさない状態を示す状態情報とを取得する。
【０２６２】
図３３（ａ）の例は、ＳＬＡチェック部１２１５が、状態管理情報３２００の"状態遷移可能リスト"に格納された状態遷移情報３３０１と、ＳＬＡ情報９００のＳＬＡ９０１を満たさない状態を示す状態情報３３０２とを取得した場合を示している。
【０２６３】
なお、ＳＬＡ情報９００のＳＬＡ９０１には、ユーザ名＝"Ｕｓｒ１"により識別されるユーザのＶＭのステータスが常に稼働中であること、が規定されている。したがって、ＳＬＡ９０１を満たさない状態とは、ユーザ名＝"Ｕｓｒ１"により識別されるユーザのＶＭのステータスが停止中の状態を指す。このため、図３３（ａ）の例では、ＳＬＡチェック部１２１５は、状態ＩＤ＝"Ｓ５−１"の状態情報３３０２を取得することになる。
【０２６４】
ＳＬＡチェック部１２１５では、"状態遷移可能リスト"より取得した状態遷移情報３３０１に含まれる遷移元の状態情報が、ＳＬＡ情報９００の各ＳＬＡを満たさない状態を示す状態情報（状態ＩＤ＝"Ｓ５−１"の状態情報）３３０２に該当するかを判定する。また、ＳＬＡチェック部１２１５は、該当すると判定した場合、状態遷移情報３３０１が、ＳＬＡを満たさない状態を示す状態情報を遷移元とする状態遷移情報であると判別する。ＳＬＡチェック部１２１５では、ＳＬＡを満たさない状態を示す状態情報を遷移元とする状態遷移情報を、状態遷移情報３３０３としてＳＬＡ判別部１２１６に通知する。
【０２６５】
更に、ＳＬＡチェック部１２１５では、状態管理情報３２００の"状態情報リスト"に格納された各状態情報のうち、ＳＬＡ情報９００の各ＳＬＡを満たさない状態を示す状態情報に該当すると判定した状態情報に、パラメータＳｅ（例えば、"０"）を記録する。また、ＳＬＡチェック部１２１５では、"状態情報リスト"に格納された各状態情報のうち、ＳＬＡ情報９００の各ＳＬＡを満たさない状態を示す状態情報に該当すると判定した状態情報以外の状態情報に、パラメータＳｅ（例えば、"１"）を記録する。なお、パラメータＳｅはＳＬＡを満たす状態であることを表すパラメータであるものとする。
【０２６６】
一方、図３３（ｂ）は、ＳＬＡ判別部１２１６の機能を表している。ＳＬＡ判別部１２１６は、ＳＬＡチェック部１２１５より通知された状態遷移情報を取得する。図３３（ｂ）の例は、ＳＬＡチェック部１２１５より通知された状態遷移情報３３０３を取得した場合を示している。
【０２６７】
ＳＬＡ判別部１２１６では、状態遷移情報３３０３に含まれるパラメータＰｏが"０"であるか否かを判定する。ここで、状態遷移情報３３０３に含まれるパラメータＰｏが"０"である場合とは、ポリシルールが適用されることで発生する状態の遷移には対応していない状態遷移情報であることを表している。つまり、ポリシルールが適用されても、ＳＬＡを満たさない状態からＳＬＡを満たす情報へと遷移しないことを表している。
【０２６８】
ＳＬＡ判別部１２１６では、パラメータＰｏが"０"であると判定した場合には、状態遷移情報３３００が、ポリシルールが適用されてもＳＬＡを満たさない状態からＳＬＡを満たす情報へと遷移しない状態遷移情報であると判別する。
【０２６９】
なお、ＳＬＡ判別部１２１６では、状態遷移情報３３０３を判別した場合、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態から遷移しない状態遷移情報があると判定し、判定結果を出力部に通知する。
【０２７０】
次に、図３４を用いて、ＳＬＡチェック部１２１５及びＳＬＡ判別部１２１６の実行例について説明する。図３４は、ＳＬＡチェック部及びＳＬＡ判別部の実行例を説明するための図である。
【０２７１】
図３４において、状態情報２６４１、状態情報２７２１、状態情報２７２２、状態情報２８２１、状態情報２６４２は、ＳＬＡチェック部１２１５により、ＳＬＡ９０１を満たさない状態を示す状態情報と判定された状態情報である。
【０２７２】
また、図３４において、太線矢印３１０１、３１０２、３４０１は、変化情報３００１として管理された状態の遷移を表している。太線矢印３１０１、３１０２、３４０１が対応付けられた状態遷移情報２７１３、２７１４、２８１３は、それぞれ、状態管理情報３２００の"状態遷移可能リスト"において、パラメータＰｏ＝"５"が記録された状態遷移情報である。一方、太線矢印が対応付けられていない状態遷移情報２６３４、２８１１は、状態管理情報３２００の"状態遷移可能リスト"において、パラメータＰｏ＝"０"が記録された状態遷移情報である。
【０２７３】
図３４に示すように、ポリシルール８０５が適用されても、状態情報２６４１により示される状態から状態情報２６２１により示される状態への遷移は発生しない。つまり、機器の状態が、ＳＬＡ９０１を満たさない状態からＳＬＡ９０１を満たす状態へと遷移することはない。したがって、ＳＬＡ判別部１２１６では、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態から遷移しない状態遷移情報として、状態遷移情報２６３４を判別する。この場合、ＳＬＡ判別部１２１６では、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態から遷移しない状態遷移情報があると判定して判定結果を出力部１２１７に通知する。なお、このとき通知される判定結果には、状態遷移情報２６３４（状態情報２６４１、状態情報２６２１、状態情報２６４１から状態情報２６２１への遷移の方向を示す情報等）が含まれる。
【０２７４】
同様に、ポリシルール８０５が適用されても、状態情報２６４２により示される状態から状態情報２８０１により示される状態への遷移は発生しない。つまり、機器の状態が、ＳＬＡ９０１を満たさない状態からＳＬＡ９０１を満たす状態へと遷移することはない。したがって、ＳＬＡ判別部１２１６では、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態から遷移しない状態遷移情報として、状態遷移情報２８１１を判別する。この場合、ＳＬＡ判別部１２１６では、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態から遷移しない状態遷移情報があると判定して判定結果を出力部１２１７に通知する。なお、このとき通知される判定結果には、状態遷移情報２８１１（状態情報２６４２、状態情報２８０１、状態情報２６４２から状態情報２８０１への遷移の方向を示す情報等）が含まれる。
【０２７５】
このように、ＳＬＡチェック部１２１５及びＳＬＡ判別部１２１６によれば、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態から遷移しない状態遷移情報を判別することができる。
【０２７６】
図３５は、ＳＬＡ判別部により格納された状態管理情報の一例を示す図である。ポリシ遷移特定部１２１４により格納された状態管理情報３２００に対して、図３５に示す状態管理情報３５００の"状態情報リスト"には、状態情報ごとに、パラメータＳｅが追加されている。パラメータＳｅは、状態情報により示される状態が、ＳＬＡを満たすことを表すパラメータとして状態管理情報に記録される。
【０２７７】
例えば、状態ＩＤ＝"Ｓ１−０"の状態情報には、状態情報により示される状態が、ＳＬＡを満たしていることを表す"１"が記録されている。また、状態ＩＤ＝"Ｓ１−１"の状態情報には、状態情報により示される状態が、ＳＬＡを満たしていることを表す"１"が記録されている。
【０２７８】
同様に、状態ＩＤ＝"Ｓ２−Ｓ４−０"、"Ｓ２−Ｓ４−１"、"Ｓ２−Ｓ４−２"の状態情報には、状態情報により示される状態が、ＳＬＡを満たしていることを表す"１"が記録されている。
【０２７９】
次に、図３６を用いて出力部１２１７の出力例について、詳細を説明する。図３６は、出力部による出力例を示す図である。出力部１２１７は、判定結果情報３６００を出力することで管理者に判定結果を報知する。
【０２８０】
図３６に示すように、判定結果情報３６００には、機器の状態が、ＳＬＡを満たさない状態から、ＳＬＡを満たす状態へと遷移しないケースがある旨のメッセージが表示される。これにより、管理者は、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態から、ＳＬＡを満たす状態へと遷移しないケースがあることを認識できる。
【０２８１】
また、図３６に示すように、判定結果情報３６００には、状態情報３６０１が表示される。これにより、管理者は、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態から遷移しない場合の状態情報として、状態情報３６０１を認識することができる。
【０２８２】
また、図３６に示すように、判定結果情報３６００には、状態情報３６１１、状態情報３６１２が表示される。これにより、管理者は、ＳＬＡを満たすために、状態情報３６０１により示される状態から遷移すべき遷移先の機器の状態を示す状態情報を認識することができる。また、管理者は、機器の状態が、状態情報３６０１により示される状態から、状態情報３６１１または３６１２により示される状態へと遷移するために必要なポリシルールを追加すべきであることを認識することができる。
【０２８３】
更に、図３６に示すように、判定結果情報３６００には、状態情報３６０１が満たしていないＳＬＡの詳細が表示される。これにより、管理者は、"Ｕｓｒ１"により識別されるユーザのＶＭのステータスが常に稼働中になれば、ＳＬＡが満たされるようになることを認識することができる。
【０２８４】
このように、判定結果情報３６００が報知されることで、管理者は、データセンタ１２０の運用管理を開始する前に、データセンタ１２０において適切なポリシルールが規定されているか否かを検証することができる。
【０２８５】
次に、事前検証部１１３＿２により実行される事前検証処理について説明する。図３７は、事前検証処理のフローチャートである。
【０２８６】
ステップＳ３７０１において、状態作成部１２１１は、データセンタ１２０の稼働を開始するタイミングであるか否かを判定する。上述したように、データセンタ１２０の稼働を開始するタイミングには、例えば、新たにデータセンタ１２０を構築し、実際に運用を開始するタイミングや、データセンタ１２０内の構成を変更した後に、データセンタ１２０の稼働を開始するタイミング等が含まれる。あるいは、ポリシ情報格納部１１５に格納されているポリシ情報等を変更した後に、データセンタ１２０の稼働を開始するタイミング等が含まれる。
【０２８７】
状態作成部１２１１では、検証開始条件が成立したか否かを判定することで、これらのタイミングであるか否かを判定する。
【０２８８】
なお、検証開始条件には、構成情報格納部１１４に格納された構成情報５００（例えば、サーバ構成アイテムを示す情報７１０）が更新された場合や、ポリシ情報格納部１１５に格納されたポリシ情報８００が更新された場合が含まれる。また、検証開始条件には、ＳＬＡ情報格納部１１６に格納されたＳＬＡ情報９００が更新された場合や、依存情報格納部１１７に格納された依存情報１０００が更新された場合、優先情報格納部１１８に格納された優先情報１１００が更新された場合等が含まれる。
【０２８９】
状態作成部１２１１は、これらの情報の更新を自動で判定する。ただし、これらの情報の更新は、状態作成部１２１１が自動で判定する場合に限定されない。例えば、管理者が検証開始条件の成立を判定してもよい。この場合、状態作成部１２１１は、管理者により、検証開始条件の成立を示す情報が入力されたことをもって、検証開始条件が成立したと判定する。
【０２９０】
ステップＳ３７０１において、検証開始条件が成立したと判定すると、ステップＳ３７０２に進む。ステップＳ３７０２において、状態作成部１２１１は、構成情報格納部１１４より構成情報を読み出し、ポリシ情報格納部１１５よりポリシ情報を読み出す。
【０２９１】
ステップＳ３７０３において、状態作成部１２１１は、読み出した構成情報及びポリシ情報に基づいて、データセンタ１２０に含まれる各機器の状態情報を作成する「状態作成処理」を実行する。なお、状態作成処理の処理フローの詳細は後述する。
【０２９２】
ステップＳ３７０４において、不要状態検索部１２１２は、構成情報格納部１１４より構成情報を読み出し、依存情報格納部１１７より依存情報を読み出す。
【０２９３】
ステップＳ３７０５において、不要状態検索部１２１２は、ステップＳ３７０３において読み出した構成情報及び依存情報に基づいて、ステップＳ３７０２において作成された各状態情報について、「状態情報を集約または削除する処理」を行う。なお、状態情報を集約または削除する処理の処理フローの詳細は後述する。
【０２９４】
ステップＳ３７０６において、状態遷移作成部１２１３は、優先情報格納部１１８より優先情報を読み出す。また、状態遷移作成部１２１３は、ポリシ情報格納部１１５よりポリシ情報を読み出す。
【０２９５】
ステップＳ３７０７において、状態遷移作成部１２１３は、ステップＳ３７０５において状態情報を集約または削除する処理が実行された後の状態情報に対応する状態遷移情報を作成する、「状態遷移作成処理」を行う。状態遷移作成部１２１３による状態遷移作成処理の処理フローの詳細は後述する。
【０２９６】
ステップＳ３７０８において、ポリシ遷移特定部１２１４は、ポリシ情報格納部１１５よりポリシ情報を読み出す。
【０２９７】
ステップＳ３７０９において、ポリシ遷移特定部１２１４は、読み出したポリシ情報に含まれる各ポリシルールが適用された場合に発生する状態の遷移を特定する「状態遷移特定処理」を実行する。ポリシ遷移特定部１２１４による状態遷移特定処理の処理フローの詳細は後述する。
【０２９８】
ステップＳ３７１０において、ＳＬＡチェック部１２１５は、ＳＬＡ情報格納部１１６に格納されたＳＬＡ情報を読み出す。
【０２９９】
ステップＳ３７１１において、ＳＬＡチェック部１２１５及びＳＬＡ判別部１２１６は、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移しない状態遷移情報を判別する、「ＳＬＡ判別処理」を実行する。ＳＬＡ判別処理の処理フローの詳細は後述する。
【０３００】
ステップＳ３７１２において、出力部１２１７は、ＳＬＡ判別部１２１６によるＳＬＡ判別処理が実行されることで通知される判定結果を出力することで、判定結果情報を管理者に報知する、「出力処理」を行う。なお、出力部１２１７による出力処理の処理フローの詳細は後述する。
【０３０１】
次に、図３８を用いて、状態作成部１２１１による状態作成処理（図３７のステップＳ３７０３）の詳細について説明する。図３８は、状態作成処理のフローチャートである。
【０３０２】
ステップＳ３８０１において、状態作成部１２１１は、ポリシルールの数をカウントするカウンタＸに初期値（＝１）を代入する。
【０３０３】
ステップＳ３８０２において、状態作成部１２１１は、構成情報に含まれる各機器について、Ｘ番目のポリシルールの「ＩＦ部分」から状態ＩＤ＝"ＳＸ−１"の状態情報を作成する。
【０３０４】
ステップＳ３８０３において、状態作成部１２１１は、構成情報に含まれる各機器についてＸ番目のポリシルールの「ＩＦ部分」から状態ＩＤ＝"ＳＸ−０"の状態情報を作成する。
【０３０５】
ステップＳ３８０４において、状態作成部１２１１は、構成情報に含まれる各機器について作成した各状態情報を状態管理情報格納部１１９に格納する。
【０３０６】
ステップＳ３８０５において、状態作成部１２１１は、ポリシ情報８００に規定された全てのポリシルールに基づいて状態情報を作成したか否かを判定する。ステップＳ３８０５において、状態情報の作成に用いていないポリシルールがあると判定した場合には、ステップＳ３８０６に進む。
【０３０７】
ステップＳ３８０６において、状態作成部１２１１はカウンタＸをインクリメントしてステップＳ３８０２に戻る。一方、ステップＳ３８０６において、全てのポリシルールに基づいて状態情報を作成したと判定した場合には、状態作成処理を終了する。
【０３０８】
なお、図３８のフローチャートには明示していないが、ステップＳ３８０５において、全てのポリシルールについて状態情報を作成したと判定した場合には、作成した状態情報を組み合わせる処理が行われるものとする。また、組み合わせることで作成された状態情報は、状態管理情報格納部１１９に格納される。
【０３０９】
次に、図３９及び図４０を用いて、不要状態検索部１２１２による、状態情報を集約または削除する処理（図３７のステップＳ３７０５）の詳細について説明する。図３９及び図４０は状態情報を集約または削除する処理のフローチャートである。
【０３１０】
ステップＳ３９０１において、不要状態検索部１２１２は、状態管理情報格納部１１９の"状態情報リスト"に格納された各状態情報を読み出す。
【０３１１】
ステップＳ３９０２において、不要状態検索部１２１２は、ステップＳ３９０１において読み出された状態情報のうち、機器の状態を記述した状態内容の一部に重なる部分があるか否かを判定する。ステップＳ３９０２において重なる部分があると判定した場合には、ステップＳ３９０３に進む。
【０３１２】
ステップＳ３９０３において、不要状態検索部１２１２は、重なる部分があると判定した状態情報を集約する。ステップＳ３９０４において、不要状態検索部１２１２は、状態管理情報格納部１１９に、集約後の状態情報を格納してステップＳ３９０５に進む。
【０３１３】
一方、ステップＳ３９０２において、重なる部分がないと判定した場合には、直接ステップＳ３９０５に進む。
【０３１４】
ステップＳ３９０５において、不要状態検索部１２１２は、状態管理情報格納部１１９の"状態情報リスト"に格納された全ての状態情報について、重なる部分の有無の判定を行ったを判定する。
【０３１５】
ステップＳ３９０５において、重なる部分の有無の判定を行っていない状態情報があると判定した場合には、ステップＳ３９０１に戻る。一方、全ての状態情報について、重なる部分の有無の判定を行ったと判定した場合には、ステップＳ３９０６に進む。
【０３１６】
ステップＳ３９０６において、不要状態検索部１２１２は、状態管理情報格納部１１９の"状態情報リスト"に格納された各状態情報を読み出す。
【０３１７】
ステップＳ３９０７において、不要状態検索部１２１２は、ステップＳ３９０６において読み出した状態情報が、ステータスが停止中の状態にある機器についての内部状態に関する記述が含まれる状態情報であるか否かを判定する。ステップＳ３９０７において、ステータスが停止中の状態にある機器についての内部状態に関する記述が含まれる状態情報であると判定した場合には、ステップＳ３９０８に進む。
【０３１８】
ステップＳ３９０８において、不要状態検索部１２１２は、ステップＳ３９０６において読み出した状態情報において、ステータスが停止中の状態にある機器についての内部状態に関する記述を削除する。
【０３１９】
ステップＳ３９０９において、不要状態検索部１２１２は、停止中の機器の内部状態に関する記述が削除された状態情報を、状態管理情報格納部１１９に格納してステップＳ３９１０に進む。
【０３２０】
一方、ステップＳ３９０７において、ステータスが停止中の状態にある機器についての内部状態に関する記述が含まれる状態情報でないと判定した場合には、直接ステップＳ３９１０に進む。
【０３２１】
ステップＳ３９１０において、不要状態検索部１２１２は、状態管理情報格納部１１９の"状態情報リスト"に格納された全ての状態情報について、内部状態に関する記述が含まれる状態情報であるか否かの判定を行ったかを判定する。
【０３２２】
ステップＳ３９１０において、内部状態に関する記述が含まれる状態情報であるか否かの判定を行っていない状態情報があると判定した場合には、ステップＳ３９０６に戻る。一方、全ての状態情報について、内部状態に関する記述が含まれる状態情報であるか否かの判定を行ったと判定した場合には、図４０のステップＳ４００１に進む。
【０３２３】
ステップＳ４００１において、不要状態検索部１２１２は、状態管理情報格納部１１９の"状態情報リスト"に格納された各状態情報を読み出す。
【０３２４】
ステップＳ４００２において、不要状態検索部１２１２は、ステップＳ４００１において読み出された状態情報の中に、同じ種類の機器についての様々な状態の組み合わせが別々に作成された状態情報（入れ替え可能な機器の状態情報）が含まれるか否かを判定する。
【０３２５】
ステップＳ４００２において、入れ替え可能な機器の状態情報が含まれると判定した場合には、ステップＳ４００３に進む。ステップＳ４００３において、不要状態検索部１２１２は、ステップＳ４００２において判定された機器の状態に依存関係があるか否かを判定する。
【０３２６】
ステップＳ４００３において依存関係がないと判定した場合には、ステップＳ４００４に進む。ステップＳ４００４において、不要状態検索部１２１２は、入れ替え可能な機器の状態情報を集約する。一方、ステップＳ４００３において依存関係があると判定した場合には、ステップＳ４００５に進む。ステップＳ４００５において、不要状態検索部１２１２は、依存関係に応じて入れ替え可能な機器の状態情報を集約する。
【０３２７】
ステップＳ４００６において、不要状態検索部１２１２は、ステップＳ４００４またはステップＳ４００５において集約された状態情報を、状態管理情報格納部１１９に格納して、ステップＳ４００７に進む。
【０３２８】
一方、ステップＳ４００２において、入れ替え可能な機器の状態情報が含まれていないと判定した場合には、直接ステップＳ４００７に進む。
【０３２９】
ステップＳ４００７において、不要状態検索部１２１２は、状態管理情報格納部１１９の"状態情報リスト"に格納された全ての状態情報について、入れ替え可能な機器の状態情報を集約する処理を行ったか否かを判定する。
【０３３０】
ステップＳ４００７において、入れ替え可能な機器の状態情報を集約する処理を行っていない状態情報があると判定した場合には、ステップＳ４００１に戻る。一方、全ての状態情報について集約する処理を行ったと判定した場合には、ステップＳ４００８に進む。
【０３３１】
ステップＳ４００８において、不要状態検索部１２１２は、状態管理情報格納部１１９の"状態情報リスト"に格納された各状態情報を読み出す。
【０３３２】
ステップＳ４００９において、不要状態検索部１２１２は、ステップＳ４００８において読み出した状態情報が、存在しえない状態を示す状態情報であるか否かを、依存情報に基づいて判定する。ステップＳ４００９において、存在しえない状態を示す状態情報であると判定した場合には、ステップＳ４０１０に進む。
【０３３３】
ステップＳ４０１０において、不要状態検索部１２１２は、ステップＳ４００８において読み出した状態情報を削除して、ステップＳ４０１１に進む。一方、ステップＳ４００９において、存在しえない状態を示す状態情報ではないと判定した場合には、直接ステップＳ４０１１に進む。
【０３３４】
ステップＳ４０１１において、不要状態検索部１２１２は、状態管理情報格納部１１９の"状態情報リスト"に格納された全ての状態情報について、存在可否を判定したか否かを判定する。ステップＳ４０１１において、存在可否を判定していない状態情報があると判定した場合には、ステップＳ４００８に戻る。一方、全ての状態情報について存在可否の判定を行ったと判定した場合には、状態情報を集約または削除する処理を終了する。
【０３３５】
次に、図４１を用いて、状態遷移作成部１２１３による状態遷移作成処理（図３７のステップＳ３７０７）の詳細について説明する。図４１は状態遷移作成処理のフローチャートである。
【０３３６】
ステップＳ４１０１において、状態遷移作成部１２１３は、状態管理情報格納部１１９の"状態情報リスト"に格納されている状態情報を読み出す。
【０３３７】
ステップＳ４１０２において、状態遷移作成部１２１３は、状態情報の集約または組み合わせが行われているか否かを判定する。ステップＳ４１０２において、状態情報の集約または組み合わせが行われていないと判定した場合には、ステップＳ４１０３に進む。
【０３３８】
ステップＳ４１０３において、状態遷移作成部１２１３は、ステップＳ４１０２において読み出した状態情報に対応する状態遷移情報を、ポリシ情報８００に基づいて作成する。
【０３３９】
一方、ステップＳ４１０２において、状態情報の集約または組み合わせが行われていると判定した場合には、ステップＳ４１０４に進む。ステップＳ４１０４において、状態遷移作成部１２１３は、ステップＳ４１０１において読み出した状態情報の集約前または組み合わせ前の状態情報に対応する状態遷移情報を、ポリシ情報８００に基づいて判定する。更に、状態遷移作成部１２１３は、判定した状態遷移情報に基づいて、ステップＳ４１０１において読み出した状態情報に対応する状態遷移情報を作成する。
【０３４０】
ステップＳ４１０５において、状態遷移作成部１２１３は、状態管理情報格納部１１９に、作成した状態遷移情報を格納する。
【０３４１】
ステップＳ４１０６において、状態遷移作成部１２１３は、状態管理情報格納部１１９の"状態情報リスト"に格納された全ての状態情報に対応する状態遷移情報を作成したか否かを判定する。
【０３４２】
ステップＳ４１０６において、状態遷移情報を作成していない状態情報があると判定した場合には、ステップＳ４１０１に戻る。一方、全ての状態情報に対応する状態遷移情報を作成したと判定した場合には、状態遷移作成処理を終了する。
【０３４３】
次に、図４２を用いて、ポリシ遷移特定部１２１４による状態遷移特定処理(図３７のステップＳ３７０９)の詳細について説明する。図４２は状態遷移特定処理のフローチャートである。
【０３４４】
ステップＳ４２０１において、ポリシ遷移特定部１２１４は、状態管理情報格納部１１９の"状態遷移可能リスト"に格納された状態遷移情報を読み出す。
【０３４５】
ステップＳ４２０２において、ポリシ遷移特定部１２１４は、ポリシルールを適用したことで発生する状態の遷移を特定する。また、ポリシ遷移特定部１２１４は、ステップＳ４２０１において読み出した状態遷移情報が、ポリシルールを適用したことで発生する状態の遷移に対応するか否かを判定する。
【０３４６】
ステップＳ４２０２において、ポリシルールを適用したことで発生する状態の遷移に対応すると判定した場合には、ステップＳ４２０３に進む。ステップＳ４２０３において、ポリシ遷移特定部１２１４は、ポリシルールを適用したことで発生する状態の遷移に対応することを示すパラメータＰｏを、状態管理情報格納部１１９に記録する。
【０３４７】
なお、ポリシ遷移特定部１２１４は、状態管理情報格納部１１９に格納された状態管理情報３２００の"状態遷移可能リスト"において、上記パラメータを情報の項目"Ｐｏ"に記録する。具体的には、ポリシ遷移特定部１２１４は、ステップＳ４２０２において該当すると判定するごとに、"状態遷移可能リスト"の情報の項目"Ｐｏ"にパラメータＰｏを記録する。ポリシ遷移特定部１２１４が記録するパラメータＰｏは、ステップＳ４２０２の判定に用いたポリシルールを示す値（例えば、ポリシルール８０１の場合には、"１"、ポリシルール８０２の場合には、"２"、・・・等）である。
【０３４８】
一方、ステップＳ４２０２において、ポリシルールを適用したことで発生する状態の遷移に対応しないと判定した場合には、直接ステップＳ４２０４に進む。なお、ポリシルールを適用したことで発生する状態の遷移に対応しないと判定した場合、ポリシ遷移特定部１２１４は、"状態遷移可能リスト"の情報の項目"Ｐｏ"には、"０"を記録する。
【０３４９】
ステップＳ４２０４において、ポリシ遷移特定部１２１４は、状態管理情報格納部１１９の"状態遷移可能リスト"に格納された状態遷移情報すべてについて確認したか否かを判定する。ステップＳ４２０４において、確認していない状態遷移情報があると判定した場合には、ステップＳ４２０１に戻る。一方、全ての状態遷移情報について確認したと判定した場合には、状態遷移特定処理を終了する。
【０３５０】
次に、図４３を用いて、ＳＬＡチェック部１２１５及びＳＬＡ判別部１２１６によるＳＬＡ判別処理（図３７のステップＳ３７１１）の詳細について説明する。図４３はＳＬＡ判別処理のフローチャートである。
【０３５１】
ステップＳ４３０１において、ＳＬＡチェック部１２１５は、状態管理情報格納部１１９の"状態遷移可能リスト"より状態遷移情報を読み出す。
【０３５２】
ステップＳ４３０２において、ＳＬＡチェック部１２１５は、読み出した状態遷移情報に含まれる遷移元の状態情報を識別する。また、ＳＬＡチェック部１２１５は、識別した状態情報が、ＳＬＡを満たさない状態を示す状態情報に該当するか否かを判定する。
【０３５３】
ステップＳ４３０２において、ＳＬＡを満たさない状態を示す状態情報に該当しないと判定した場合には、ステップＳ４３０５に進む。一方、ＳＬＡを満たさない状態を示す状態情報に該当すると判定した場合には、ステップＳ４３０３に進む。なお、ＳＬＡを満たさない状態を示す状態情報に該当しないと判定した場合、ＳＬＡチェック部１２１５では、状態管理情報格納部１１９の"状態情報リスト"にパラメータＳｅ＝"１"を記録する。また、ＳＬＡを満たさない状態を示す状態情報に該当すると判定した場合、ＳＬＡチェック部１２１５では、状態管理情報格納部１１９の"状態情報リスト"にパラメータＳｅ＝"０"を記録する。これにより、ＳＬＡチェック部１２１５では、遷移前の機器の状態を示す状態情報が、ＳＬＡを満たさない状態である状態遷移情報を判別することができる。
【０３５４】
ステップＳ４３０３において、ＳＬＡ判別部１２１６は、ステップＳ４３０１において読み出した状態遷移情報に含まれるパラメータＰｏが"０"であるか否かを判定する。ステップＳ４３０３において、パラメータＰｏが"０"でないと判定した場合には、ステップＳ４３０５に進む。一方、ステップＳ４３０３において、パラメータＰｏが"０"であると判定した場合には、ステップＳ４３０４に進む。これにより、ＳＬＡ判別部１２１６では、ＳＬＡチェック部１２１５により判別された状態遷移情報のうち、ポリシルールが適用された場合に発生する機器の状態の遷移に対応しない状態遷移情報を判別することができる。
【０３５５】
ステップＳ４３０４において、ＳＬＡ判別部１２１６は、状態遷移情報を判別したか否かに応じた判定結果を出力部１２１７に通知する。その後、ステップＳ４３０５に進む。なお、ＳＬＡ判別部１２１６は、出力部１２１７に対して、例えば、以下の情報を判定結果として通知する。
・ステップＳ４３０３において判別された状態遷移情報の有無
・ステップＳ４３０３において判別された状態遷移情報（遷移前の状態情報、遷移後の状態情報、状態の遷移の方向を示す情報）
・ステップＳ４３０２において満たさないと判定されたＳＬＡ
ステップＳ４３０５において、状態管理情報格納部１１９の"状態遷移可能リスト"に格納されている全ての状態遷移情報について、ＳＬＡの成否を判定したか否かを判定する。ステップＳ４３０５において、ＳＬＡの成否を判定していない状態遷移情報があると判定した場合には、ステップＳ４３０１に戻る。一方、ステップＳ４３０５において、全ての状態遷移情報について、ＳＬＡの成否の判定を行ったと判定した場合には、ＳＬＡ判別処理を終了する。
【０３５６】
次に、図４４を用いて出力部１２１７による出力処理(図３７のステップＳ３７１２)の詳細について説明する。図４４は出力処理のフローチャートである。
【０３５７】
ステップＳ４４０１において、出力部１２１７は、ＳＬＡ判別部１２１６より、判定結果を受信したか否かを判定する。ステップＳ４４０１において、判定結果を受信していないと判定した場合には、ステップＳ４４０２に進む。
【０３５８】
ステップＳ４４０２において、出力部１２１７は、現状のポリシルールが適切であることを管理者に報知する。具体的には、出力部１２１７は、現状のポリシルールを適用することで、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移することを管理者に報知する。
【０３５９】
一方、ステップＳ４４０１において、判定結果を受信したと判定した場合には、ステップＳ４４０３に進む。ステップＳ４４０３において、出力部１２１７は、受信した判定結果を出力する。
【０３６０】
ステップＳ４４０４において、出力部１２１７は、ＳＬＡ判別部１２１６より受信した全ての判定結果を出力したか否かを判定する。ステップＳ４４０４において、出力していない判定結果があると判定した場合には、ステップＳ４４０１に戻る。一方、ＳＬＡ判別部１２１６より受信した全ての判定結果について出力したと判定した場合には、出力処理を終了する。
【０３６１】
以上の説明から明らかなように、運用管理用サーバ１１０では、構成情報とポリシルールのＩＦ部分とに基づいて、データセンタ１２０に含まれる各機器の状態情報を作成するとともに、作成した状態情報を集約または削除することで、状態情報の数を低減する。また、運用管理用サーバ１１０では、ポリシルールに基づいて、状態情報に対応する状態遷移情報を作成する。更に、運用管理用サーバ１１０では、作成した状態遷移情報のうち、遷移元の機器の状態がＳＬＡを満たさない状態遷移情報であって、ポリシルールを適用することで発生する状態の遷移に対応しない状態遷移情報を判別する。
【０３６２】
これにより、運用管理用サーバ１１０では、現状のポリシルールを適用しても、機器の状態が、ＳＬＡを満たさない状態からＳＬＡを満たす状態へと遷移しないケースの有無を判定することが可能となる。
【０３６３】
この結果、システム（データセンタ１２０）において適切なポリシルールが規定されているか否かを検証することができる。
【０３６４】
なお、開示の技術では、以下に記載する付記のような形態が考えられる。
（付記１）
システムで実行される処理の内容と該処理を実行するための条件とが記述されたポリシルールにおける該条件と、該システムに含まれる機器を示す構成情報とに基づいて、該機器の状態の遷移を示す状態遷移情報を作成し、
前記システムにて満たされるべき品質が記述された品質情報を参照し、作成した前記状態遷移情報において、前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報の有無を判定し、判定した結果を示す情報を出力する、
処理をコンピュータに実行させる事前検証プログラム。
（付記２）
前記判定した結果を示す情報には、
前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報が含まれることを特徴とする付記１に記載の事前検証プログラム。
（付記３）
前記判定した結果を示す情報には、
前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報に含まれる、遷移前の前記機器の状態を示す状態情報及び遷移後の前記機器の状態を示す状態情報のうちのいずれか一方または両方が含まれることを特徴とする付記１に記載の事前検証プログラム。
（付記４）
前記条件と前記構成情報とを用いて作成される前記機器の状態を示す状態情報のうち、前記条件の記述の一部が重なる複数の状態情報を集約することで、新たな状態情報を作成する処理を前記コンピュータに実行させることを特徴とする付記１に記載の事前検証プログラム。
（付記５）
前記条件と前記構成情報とを用いて作成される前記機器の状態を示す状態情報のうち、複数の前記状態情報を組み合わせることで新たな状態情報を作成する処理を前記コンピュータに実行させることを特徴とする付記１に記載の事前検証プログラム。
（付記６）
前記新たな状態情報に、停止中の前記機器の内部状態に関する記述が含まれる場合に、該新たな状態情報から、該内部状態に関する記述を削除する処理を前記コンピュータに実行させることを特徴とする付記５に記載の事前検証プログラム。
（付記７)
前記新たな状態情報のうち、前記機器の状態の依存関係から、存在しえない状態の組み合わせであると判定した状態情報を削除する処理を前記コンピュータに実行させることを特徴とする付記５に記載の事前検証プログラム。
（付記８）
前記条件と前記構成情報とを用いて作成される前記機器の状態を示す状態情報のうち、同じ種類の複数の機器の状態をそれぞれ示す状態情報を組み合わせることで新たな状態情報が作成される場合、該新たな状態情報に含まれる複数の状態情報を集約することで、更に、新たな状態情報を作成する処理を前記コンピュータに実行させることを特徴とする付記１に記載の事前検証プログラム。
（付記９）
作成された前記状態遷移情報について、
遷移前の前記機器の状態を示す状態情報が、前記品質を満たさない状態を示す状態情報であるかを判別し、
前記品質を満たさない状態を示す状態情報であった場合に、前記ポリシルールに従ったときの前記機器の状態の遷移に対応するかを判別する、
ことで、前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報の有無を判定することを特徴とする付記１に記載の事前検証プログラム。
（付記１０）
コンピュータによる事前検証方法であって、該コンピュータが、
システムで実行される処理の内容と該処理を実行するための条件とが記述されたポリシルールにおける該条件と、該システムに含まれる機器を示す構成情報とに基づいて、該機器の状態の遷移を示す状態遷移情報を作成し、
前記システムにて満たされるべき品質が記述された品質情報を参照し、作成した前記状態遷移情報において、前記ポリシルールに従ったときの前記機器の状態が前記品質を満たさない状態から遷移しない状態遷移情報の有無を判定し、判定した結果を示す情報を出力する、
処理を実行することを特徴とする事前検証方法。
【０３６５】
本発明は、具体的に開示された実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０３６６】
１００                ：クラウドシステム
１１０                ：運用管理用サーバ
１１１                ：機器管理部
１１２                ：構成管理部
１１３                ：運用管理部
１１３＿１            ：管理部
１１３＿２            ：事前検証部
１２０                ：データセンタ
４００                ：構成情報
８００                ：ポリシ情報
９００                ：ＳＬＡ情報
１０００              ：依存情報
１１００              ：優先情報
１２１１              ：状態作成部
１２１２              ：不要状態検索部
１２１３              ：状態遷移作成部
１２１４              ：ポリシ遷移特定部
１２１５              ：ＳＬＡチェック部
１２１６              ：ＳＬＡ判別部
１２１７              ：出力部
１５００              ：状態管理情報
２１００              ：状態管理情報
２９００              ：状態管理情報
３６００              ：判定結果情報
３６０１              ：状態情報
３６１１、３６１２    ：状態情報
【図１】
2017157169.tif 000003
【図２】
2017157169.tif 000004
【図３】
2017157169.tif 000005
【図４】
2017157169.tif 000006
【図５】
2017157169.tif 000007
【図６】
2017157169.tif 000008
【図７】
2017157169.tif 000009
【図８】
2017157169.tif 000010
【図９】
2017157169.tif 000011
【図１０】
2017157169.tif 000012
【図１１】
2017157169.tif 000013
【図１２】
2017157169.tif 000014
【図１３】
2017157169.tif 000015
【図１４】
2017157169.tif 000016
【図１５】
2017157169.tif 000017
【図１６】
2017157169.tif 000018
【図１７】
2017157169.tif 000019
【図１８】
2017157169.tif 000020
【図１９】
2017157169.tif 000021
【図２０】
2017157169.tif 000022
【図２１】
2017157169.tif 000023
【図２２】
2017157169.tif 000024
【図２３】
2017157169.tif 000025
【図２４】
2017157169.tif 000026
【図２５】
2017157169.tif 000027
【図２６】
2017157169.tif 000028
【図２７】
2017157169.tif 000029
【図２８】
2017157169.tif 000030
【図２９】
2017157169.tif 000031
【図３０】
2017157169.tif 000032
【図３１】
2017157169.tif 000033
【図３２】
2017157169.tif 000034
【図３３】
2017157169.tif 000035
【図３４】
2017157169.tif 000036
【図３５】
2017157169.tif 000037
【図３６】
2017157169.tif 000038
【図３７】
2017157169.tif 000039
【図３８】
2017157169.tif 000040
【図３９】
2017157169.tif 000041
【図４０】
2017157169.tif 000042
【図４１】
2017157169.tif 000043
【図４２】
2017157169.tif 000044
【図４３】
2017157169.tif 000045
【図４４】
2017157169.tif 000046