(57)【要約】ＩＣＴ資源となる、物理ノードおよび仮想ノードを管理するＩＣＴ資源管理装置（１）は、物理レイヤ構成情報（２１ａ）、および、仮想レイヤ構成情報（２１ｂ）を管理する構成情報管理部（１３）と、物理レイヤおよび仮想レイヤとのマッピングを行うレイヤマッピング部（１４）と、構成変更の要求に対して、物理レイヤ構成情報（２１ａ）、仮想レイヤ構成情報（２１ｂ）、および、マッピングの結果であるマッピング情報（２２）に基づいて、構成変更に必要なインフラの設計情報となるブループリント（２４）を作成するブループリント作成部（１２）と、ブループリント（２４）に基づいて、ＡＰＩを通じ操作することができるプログラムにアクセスして実行することで、仮想レイヤに対するオーケストレーションを実行するオーケストレータ部（１５，１６）と、を備える。
2020116221.tif 000002
【特許請求の範囲】
【請求項１】
ＩＣＴ資源となる、物理ノードおよび仮想ノードを管理するＩＣＴ資源管理装置であって、
物理レイヤ上の前記物理ノードに関する構成情報である物理レイヤ構成情報、および、仮想レイヤ上の前記仮想ノードに関する構成情報である仮想レイヤ構成情報を管理する構成情報管理部と、
前記物理レイヤおよび前記仮想レイヤとのマッピングを行うレイヤマッピング部と、
外部装置からの構成変更の要求に対して、前記物理レイヤ構成情報、前記仮想レイヤ構成情報、および、前記マッピングの結果であるマッピング情報に基づいて、前記構成変更に必要なインフラの設計情報となるブループリントを作成するブループリント作成部と、
前記ブループリントに基づいて、ＡＰＩを通じ操作することができるプログラムにアクセスして実行することで、前記仮想レイヤに対するオーケストレーションを実行するオーケストレータ部と、を備える、
ことを特徴とするＩＣＴ資源管理装置。
【請求項２】
前記ブループリントは、サービスの提供に供する工程を示すカタログの集合体と、前記カタログに対するインプット情報となるパラメータとを含む、
ことを特徴とする請求項１に記載のＩＣＴ資源管理装置。
【請求項３】
前記物理ノードおよび前記仮想ノードを監視する監視部、をさらに備え、
前記構成情報管理部は、前記監視部の監視によって収集した情報から、前記物理レイヤ構成情報および前記仮想レイヤ構成情報を生成し、
前記レイヤマッピング部は、前記監視部の監視によって収集した情報から、前記マッピング情報を生成する、
ことを特徴とする請求項１または請求項２に記載のＩＣＴ資源管理装置。
【請求項４】
ＩＣＴ資源となる、物理ノードおよび仮想ノードを管理するＩＣＴ資源管理装置におけるＩＣＴ資源管理方法であって、
前記ＩＣＴ資源管理装置は、
物理レイヤ上の前記物理ノードに関する構成情報である物理レイヤ構成情報、および、仮想レイヤ上の前記仮想ノードに関する構成情報である仮想レイヤ構成情報を収集するステップと、
前記物理レイヤおよび前記仮想レイヤとのマッピングを行うステップと、
外部装置からの構成変更の要求に対して、前記物理レイヤ構成情報、前記仮想レイヤ構成情報、および、前記マッピングの結果であるマッピング情報に基づいて、前記構成変更に必要なインフラの設計情報となるブループリントを作成するステップと、
前記ブループリントに基づいて、ＡＰＩを通じ操作することができるプログラムにアクセスして実行することで、前記仮想レイヤに対するオーケストレーションを実行するステップと、を実行する、
ことを特徴とするＩＣＴ資源管理方法。
【請求項５】
コンピュータを、請求項１から請求項３の何れか１項に記載のＩＣＴ資源管理装置として機能させるためのＩＣＴ資源管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣＴ（Information and Communication Technology）資源管理装置、ＩＣＴ資源管理方法、および、ＩＣＴ資源管理プログラムに関する。
【背景技術】
【０００２】
近年、サービス事業者がサービスをエンドユーザに提供するための技術開発が盛んに行われている。例えば、特許文献１には、「ユーザに通信を提供する端末機からの通信サービス利用のためのオーダ要求に応じて、卸サービス事業者毎に通信サービスＡＰＩで公開される各々異なる１つの通信サービスを１又は複数一括して提供する事業者間一括サービス構築装置であって、通信の卸サービスの仕様が記述されたカタログと、各種の通信サービスの連携を定めた連携ルールとを保持し、前記端末機から複数の通信サービス利用のオーダ要求があった場合に、前記保持された前記カタログ及び前記連携ルールに基づき、当該オーダ要求された複数の通信サービスに対応する前記通信サービスＡＰＩを一括に連携させて連携サービスを構築し、この構築された連携サービスを前記端末機へ提供する一括構築機能部を備えることを特徴とする事業者間一括サービス構築装置」について開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−３２８９７号公報（請求項１）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
また、サービスが提供されるシステムとして、例えば、仮想化技術が適用される分散システムがある。分散システムは、例えば、地理的に異なる場所に配置される複数のデータセンタが備える装置群から構築することができるが、これに限らない。仮想化技術が適用される分散システムは、分散システムが備える物理ノード（例：計算機、ルータ、センサ）の集合体となる物理レイヤと、物理ノード上に構成されて稼働する仮想ノードの集合体となる仮想レイヤとを備える。仮想化技術が適用される分散システムでは、物理レイヤに対する構成管理と、仮想レイヤに対する構成管理との２種類の構成管理が行われる。また、分散システムのエンジニアは、物理レイヤの設計と、仮想レイヤの設計との両方を行う。【０００５】
例えば、物理ノードに接続しているデバイス（例：ＩｏＴ（Internet of Things）機器）でサービスが利用可能となるように、仮想ノードに新たなアプリケーションを配置するといった構成変更を行う場合がある。この場合、仮想化技術によって物理レイヤが抽象化されているため、アプリケーションを配置する仮想ノードを特定することが直ちにできない。従来では、エンジニアが物理レイヤと仮想レイヤとを照合して仮想ノードを特定するという手法をとっていた。しかし、このような手法は、人手を介するため、分散システムのオペレーションの自動化を妨げてしまい、分散システムの運用コストの増大を招くという問題がある。【０００６】
このような背景に鑑みて、本発明は、分散システムのオペレーションを自動化し、仮想化技術が適用される分散システムの運用コストを低減することを課題とする。
【課題を解決するための手段】
【０００７】
前記した課題を解決するため、請求項１に記載の発明は、ＩＣＴ資源となる、物理ノードおよび仮想ノードを管理するＩＣＴ資源管理装置であって、物理レイヤ上の前記物理ノードに関する構成情報である物理レイヤ構成情報、および、仮想レイヤ上の前記仮想ノードに関する構成情報である仮想レイヤ構成情報を管理する構成情報管理部と、前記物理レイヤおよび前記仮想レイヤとのマッピングを行うレイヤマッピング部と、外部装置からの構成変更の要求に対して、前記物理レイヤ構成情報、前記仮想レイヤ構成情報、および、前記マッピングの結果であるマッピング情報に基づいて、前記構成変更に必要なインフラの設計情報となるブループリントを作成するブループリント作成部と、前記ブループリントに基づいて、ＡＰＩを通じ操作することができるプログラムにアクセスして実行することで、前記仮想レイヤに対するオーケストレーションを実行するオーケストレータ部と、を備える、ことを特徴とする。【０００８】
また、請求項４に記載の発明は、ＩＣＴ資源となる、物理ノードおよび仮想ノードを管理するＩＣＴ資源管理装置におけるＩＣＴ資源管理方法であって、前記ＩＣＴ資源管理装置は、物理レイヤ上の前記物理ノードに関する構成情報である物理レイヤ構成情報、および、仮想レイヤ上の前記仮想ノードに関する構成情報である仮想レイヤ構成情報を収集するステップと、前記物理レイヤおよび前記仮想レイヤとのマッピングを行うステップと、外部装置からの構成変更の要求に対して、前記物理レイヤ構成情報、前記仮想レイヤ構成情報、および、前記マッピングの結果であるマッピング情報に基づいて、前記構成変更に必要なインフラの設計情報となるブループリントを作成するステップと、前記ブループリントに基づいて、ＡＰＩを通じ操作することができるプログラムにアクセスして実行することで、前記仮想レイヤに対するオーケストレーションを実行するステップと、を実行する、ことを特徴とする。【０００９】
請求項１，４に記載の発明によれば、物理レイヤと仮想レイヤとのマッピングによって、物理ノードと仮想ノードとの紐付けが明らかとなり、構成変更に対する仮想ノードを、人手を介することなく特定することができる。このため、オペレーションの自動化を実現することができる。
したがって、分散システムのオペレーションを自動化し、仮想化技術が適用される分散システムの運用コストを低減することができる。【００１０】
また、請求項２に記載の発明は、請求項１に記載のＩＣＴ資源管理装置であって、前記ブループリントは、サービスの提供に供する工程を示すカタログの集合体と、前記カタログに対するインプット情報となるパラメータとを含む、ことを特徴とする。【００１１】
請求項２に記載の発明によれば、オーケストレーションを実行するためのワークフローを容易に構成することができる。【００１２】
また、請求項３に記載の発明は、請求項１または請求項２に記載のＩＣＴ資源管理装置であって、前記物理ノードおよび前記仮想ノードを監視する監視部、をさらに備え、前記構成情報管理部は、前記監視部の監視によって収集した情報から、前記物理レイヤ構成情報および前記仮想レイヤ構成情報を生成し、前記レイヤマッピング部は、前記監視部の監視によって収集した情報から、前記マッピング情報を生成する、ことを特徴とする。【００１３】
請求項３に記載の発明によれば、構成情報およびマッピング情報を最新状態で保持することができるため、人手を介することなくブループリントを作成し、オーケストレーションを実行し、オペレーションの自動化に寄与することができる。【００１４】
また、請求項５に記載の発明は、コンピュータを、請求項１から請求項３の何れか１項に記載のＩＣＴ資源管理装置として機能させるためのＩＣＴ資源管理プログラムである。【００１５】
請求項５に記載の発明によれば、ＩＣＴ資源管理装置の構築を容易にすることができる。
【発明の効果】
【００１６】
本発明によれば、分散システムのオペレーションを自動化し、仮想化技術が適用される分散システムの運用コストを低減することができる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態のＩＣＴ資源管理装置を含む分散システムの機能構成図の例である。
【図２】ＩＣＴ資源管理装置の機能構成図の例である。
【図３】物理レイヤ構成情報のデータ構造図の例である。
【図４】仮想レイヤ構成情報のデータ構造図の例である。
【図５】ブループリントの例の説明図である。
【図６】本実施形態で実行される処理を示すシーケンスの例である。
【図７】初期デプロイの動作例の説明図である。
【図８】本実施形態で実行される処理のプログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照して本発明を実施するための形態（以下、「本実施形態」という）について説明する。
【００１９】
≪構成≫
図１に示すように、本実施形態のＩＣＴ資源管理装置１を含む分散システム１００は、仮想化技術が適用されるシステムであり、ＩＣＴ資源管理装置１と、サービス事業者端末２と、サーバ３と、エッジ４と、デバイス５とを備える。また、分散システム１００は、物理ノードの集合体となる物理レイヤと、物理ノード上に構成されて稼働する仮想ノードの集合体となる仮想レイヤとを管理することができる。サーバ３と、エッジ４と、デバイス５は、物理レイヤを構成する物理ノードとなる。また、図１に示す、仮想レイヤ上に配置されているＶＭ（Virtual Machine）７は、サーバ３またはエッジ４を仮想化した仮想ノードである。
【００２０】
ＩＣＴ資源管理装置１は、物理ノードおよび仮想ノードをＩＣＴ資源として管理する。
サービス事業者端末２は、初期デプロイやスケール可変などの構成変更を要求する端末である。サービス事業者端末２は、当該要求をＡＰＩ（Application Programming Interface）を通じて行う。当該ＡＰＩは、ＩＣＴ資源管理装置１とサービス事業者端末２との間のNorthbound APIである。また、サービス事業者端末２は、サービス事業者等が用いる。
【００２１】
サーバ３は、サービスの提供に係るプロセスを実行する計算機である。図１に示すサーバ３は、クラウド基盤Ａに配置されており、クラウドサービス用のプロセスを実行する。サーバ３には、サービスの提供に係るプロセスを実行するための１または複数のアプリ（アプリケーションの略）６が配置される。
【００２２】
エッジ４は、ＮＷ（ネットワーク）上に配置される中継装置であり、例えば、ルータ、ブリッジ、ゲートウェイが該当する。エッジ４には、サービスの提供に係るプロセスを実行するための１または複数のアプリ６が配置される。サーバ３およびエッジ４は、通信可能に接続されている。
【００２３】
デバイス５は、エンドユーザがサービスを利用する機器であり、例えば、ＩｏＴ機器が該当する。デバイス５は、エッジ４に接続することで、サービスを利用することができる。
【００２４】
ＩＣＴ資源管理装置１は、物理ノードおよび仮想ノードに関する情報収集をすることができる。また、ＩＣＴ資源管理装置１は、収集した情報を用いて、物理レイヤと仮想レイヤとのマッピングを行うことができる（図１中、破線両矢印参照）。
また、ＩＣＴ資源管理装置１は、仮想レイヤに対してオーケストレーションを実行することができる。具体的には、サービスのデプロイや、ＶＭ７へのリソース割り当てをすることができる。
【００２５】
（ＩＣＴ資源管理装置１の詳細）
図２に示すように、ＩＣＴ資源管理装置１は、要求取得部１１と、ブループリント作成部１２と、構成情報管理部１３と、レイヤマッピング部１４と、ワークフロー実行部１５と、ＡＰＩアダプタ部１６と、監視部１７といった機能部を備える。また、ＩＣＴ資源管理装置１は、構成情報ＤＢ２１と、マッピング情報２２と、カタログ群２３と、ブループリント２４を記憶部で記憶する。ＩＣＴ資源管理装置１が備える前記記憶部は、例えば、ＩＣＴ資源管理装置１の内部にあってもよいし、ＩＣＴ資源管理装置１の外部の装置にあってもよい。
【００２６】
［要求取得部１１］
要求取得部１１は、サービス事業者端末２からの構成変更の要求を取得する。要求取得部１１が取得した要求を「オーダ情報」と呼ぶ場合がある。また、構成変更の要求は、サービス事業者端末２に限らず、例えば、分散システム１００の保守者の端末からも行うことができる。サービス事業者端末２、および、保守者の端末は、外部装置の例となる。
【００２７】
［ブループリント作成部１２］
ブループリント作成部１２は、要求取得部１１が取得したオーダ情報に対応するブループリント２４を作成する。ブループリント２４は、要求された構成変更に必要となるインフラの設計情報である。インフラは、サービスの動作環境の構成要素を示し、例えば、ＩＣＴ資源そのもの、ＩＣＴ資源の設定情報（例：ＶＭ名、ＩＰアドレス、ホスト名）や割当リソース、ＮＷ上に設定されるＬＢ（ロードバランサ）、ＦＷ（ファイアウォール）、コンテナといったさまざまな要素を指す。
【００２８】
［構成情報管理部１３］
構成情報管理部１３は、ＩＣＴ資源に関する情報を構成情報として管理する。構成情報管理部１３は、例えば、リソース情報収集のＡＰＩにアクセスすることで、物理ノードおよび仮想ノードに関する情報を収集することができる。リソース情報収集のＡＰＩとは、オーケストレーション対象がそれぞれに用意するリソース情報を提供するためのＡＰＩである。リソース情報収集のＡＰＩは、ＩＣＴ資源管理装置１とオーケストレーション対象との間のsouthbound APIである。収集する情報は、例えば、ＳＮＭＰ（Simple Network Management Protocol）によるＭＩＢ（Management Information Base）とすることができるが、これに限定されない。構成情報管理部１３が管理する構成情報は、構成情報ＤＢ２１に格納されており、物理レイヤ構成情報２１ａと、仮想レイヤ構成情報２１ｂに分類される。
オーケストレーション対象は、物理ノードおよび仮想ノードを含むが、これらに限定されない。オーケストレーション対象が提供するインタフェースは、例えば、当該オーケストレーション対象を制御するコントローラ（図示せず）が提供することもできるし、物理ノードおよび仮想ノードの各々が提供することもできる。
【００２９】
物理レイヤ構成情報２１ａは、物理レイヤ上の物理ノードに関する構成情報である。図３に示すように、物理レイヤ構成情報２１ａは、例えば、「ノードＩＤ」、「状態」、「ホスト名」、「ＩＰアドレス」、「ＶＭＩＤ」、「利用サービス」、「利用者」といった管理項目を有し、物理ノードごとに各管理項目の値が格納されている。
【００３０】
「ノードＩＤ」の管理項目には、対象の物理ノードの識別子が格納される。
「状態」の管理項目には、対象の物理ノードの稼働状態が格納される（正常の場合「ＯＫ」、故障の場合「ＮＧ」）。
「ホスト名」の管理項目には、対象の物理ノードのホスト名が格納される。
「ＩＰアドレス」の管理項目には、対象の物理ノードに割り当てられたＩＰアドレスが格納される。
「ＶＭＩＤ」の管理項目には、対象の物理ノード上で稼働するＶＭの識別子が格納される。
「利用サービス」の管理項目には、対象の物理ノードで利用可能なサービスの識別子が格納される。利用サービスは、例えば、クラウドサービス、エッジコンピューティングサービスがあるが、これらに限定されない。また、利用サービスには、複数の物理ノードで同一のサービスを提供可能となるサービスを含めることができる。
「利用者」の管理項目には、対応の「利用サービス」に示すサービスを利用する利用者の識別子が格納される。利用者は、例えば、法人であってもよいし、個人であってもよい。また、例えば、該当の物理ノードがエッジ装置であった場合、当該エッジ装置の所有者のみを利用者とすることができる。
【００３１】
図３に示す物理レイヤ構成情報２１ａの管理項目は、一例であり、より多く設定することができる。例えば、物理レイヤ構成情報２１ａの管理項目として、対象の物理ノード上で稼働するＶＭのメモリサイズ、ＣＰＵ周波数、電源状態、ＶＭ名を設定することができる。
また、物理レイヤ構成情報２１ａの管理項目として、対象の物理ノードに用いるリソースプールの名称、ＩＤを設定することができる。
また、物理レイヤ構成情報２１ａの管理項目として、対象の物理ノードが配置されるネットワークの型、ＩＤ、名称を設定することができる。
また、物理レイヤ構成情報２１ａの管理項目として、対象の物理ノードが用いるフォルダのＩＤ、型、名称を設定することができる。
また、物理レイヤ構成情報２１ａの管理項目として、対象の物理ノードが使用するデータストアの記憶容量、ＩＤ、型、名称を設定することができる。
また、物理レイヤ構成情報２１ａの管理項目として、対象の物理ノードを制御するデータセンタのＩＤ、名称を設定することができる。
また、物理レイヤ構成情報２１ａの管理項目として、対象の物理ノードにアクセスするユーザの認証情報となるユーザ名、パスワードを設定することができる。
【００３２】
図２に戻って、仮想レイヤ構成情報２１ｂは、仮想レイヤ上の仮想ノードに関する構成情報である。図４に示すように、仮想レイヤ構成情報２１ｂは、例えば、「ノードＩＤ」、「状態」、「ＶＭ名」、「ＩＰアドレス」、「物理デバイスＩＤ」といった管理項目を有し、仮想ノードごとに各管理項目の値が格納されている。
【００３３】
「ノードＩＤ」の管理項目には、対象の仮想ノードの識別子が格納される。
「状態」の管理項目には、対象の稼働ノードの稼働状態が格納される（正常の場合「ＯＫ」、故障の場合「ＮＧ」）。
「ＶＭ名」の管理項目には、対象の仮想ノードの名称が格納される。
「ＩＰアドレス」の管理項目には、対象の仮想ノードに割り当てられたＩＰアドレスが格納される。
「物理デバイスＩＤ」の管理項目には、対象の仮想ノードが配置される物理ノードの識別子が格納される。
【００３４】
図４に示す仮想レイヤ構成情報２１ｂの管理項目は、一例であり、より多く設定することができる。例えば、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードのＩＤ情報となるＶＭＩＤを設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードのリソースとなるメモリサイズ、ＣＰＵ周波数を設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードの電源状態を設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードにアクセスするユーザの認証情報となるユーザ名、パスワードを設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードが使用するゲートウェイ、ＶＸＬＡＮ（Virtual eXtensible Local Area Network）、スタティックルートを設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードが配置される物理ノードのホスト名を設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードを生成するハイパバイザに関する情報を設定することができる。
【００３５】
また、仮想レイヤ構成情報２１ｂに設定される管理項目として、コンテナアプリケーションの管理項目を設定することができる。例えば、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードが用いるコンテナに対して登録されるコンテナホストのホスト名、ラベル、状態、アカウントＩＤを設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードが用いるコンテナで提供されるサービスのＩＤ、名称、状態、スケール（利用サーバの台数）を設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードが用いるコンテナで提供されるストレージ装置のボリュームのマウント、ＩＤ（RancherNFS（Network File System）利用時のみ）、イメージＩＤを設定することができる。
また、仮想レイヤ構成情報２１ｂの管理項目として、対象の仮想ノードが用いるコンテナで提供されるストレージ装置のスタックのグループ、ヘルス状態、スタックＩＤ、利用されるサービスのＩＤを設定することができる。
【００３６】
［レイヤマッピング部１４］
図２に戻って、レイヤマッピング部１４は、物理レイヤと仮想レイヤとのマッピングを行う。具体的には、レイヤマッピング部１４は、構成情報管理部１３が管理する構成情報に基づいて、仮想レイヤ上の仮想ノードが物理レイヤ上のいずれの物理ノード（または当該物理ノードに配置されたアプリ６）に紐付けられているかを判定する。ＩＣＴ資源管理装置１は、レイヤマッピング部１４による、物理ノードと仮想ノードとの紐付けの判定結果を、マッピング情報２２として保存する。例えば、レイヤマッピング部１４は、物理レイヤ構成情報２１ａ（図３）の「ＶＭＩＤ」の管理項目と、仮想レイヤ構成情報２１ｂ（図４）の「物理デバイスＩＤ」の管理項目を参照することで、物理ノードと仮想ノードとの紐付けを判定することができる。
【００３７】
ここで、ブループリント２４の詳細を、図５を参照して説明する。図５は、初期デプロイのブループリントの説明図である。図５に示すように、ブループリント２４は、サービステンプレートとパラメータとの組として構成することができる。サービステンプレートは、カタログの集合体とすることができる。カタログは、サービスの提供に供する工程の雛型であり、ＩＣＴ資源管理装置１が記憶するカタログ群２３の要素である。カタログ自体は周知であり、詳細な説明は省略する。また、パラメータは、各カタログに対するインプット情報である。
【００３８】
図５に示す初期デプロイのブループリント２４の場合、要求取得部１１が取得したオーダ情報は、初期デプロイに関するオーダ情報となる。初期デプロイの場合、ブループリント作成部１２は、例えば、カタログ群２３から、ＶＭ作成用のカタログ、ＮＷ設定用のカタログ、および、コンテナ設定用のカタログを選択し、サービステンプレートを構成することができる。
【００３９】
ＶＭ作成用のカタログに入力するパラメータは、例えば、作成するＶＭの個数および種類である。図５では、Ｗｅｂサーバとして機能するＶＭを３つ、および、ＡＰサーバ（アプリケーションサーバ）として機能するＶＭを２つの計５つのＶＭを指定するパラメータがＶＭ作成用のカタログに入力される。ＶＭ作成用のカタログに入力するパラメータは、例えば、サービス事業者端末２が入力することができる。
【００４０】
ＮＷ設定用のカタログに入力するパラメータは、例えば、ＩＰアドレスの割り当て（ＩＰ割り当て）である。図５では、作成されるＶＭに割り当てられるＩＰアドレスを指定するパラメータがＮＷ設定用のカタログに入力される。ＮＷ設定用のカタログに入力するパラメータは、例えば、分散システム１００から取得することができる。
【００４１】
コンテナ設定用のカタログに入力するパラメータは、例えば、作成されるＶＭが用いるコンテナの設定方式である。図５では、Rancherによるコピー実行という設定方式を示すパラメータがコンテナ設定用のカタログに入力される。コンテナ設定用のカタログに入力するパラメータは、例えば、サービス事業者端末２が入力することができる。
【００４２】
ブループリント作成部１２は、要求取得部１１が取得したオーダ情報が示すオペレーションに応じて、カタログ群２３から、必要となるカタログを選択し、サービステンプレートを構成する。また、ブループリント作成部１２は、選択したカタログに入力されるパラメータを、オーダ情報や分散システム１００から取得することができる。つまり、ブループリント作成部１２は、選択したカタログに入力されるパラメータを、オーダ情報を送信したサービス事業者端末２などに要求し、当該要求の応答となるオーダ情報を改めて受信することで、オーダ情報からパラメータを取得することができる。また、ＩＰアドレスの払い出しなどの、分散システム１００自身でパラメータ取得可能となる場合には、ブループリント作成部１２は、選択したカタログに入力されるパラメータを、分散システム１００から取得することができる。
【００４３】
ブループリント作成部１２は、ブループリント２４を作成する際、構成情報管理部１３が管理する構成情報、および、レイヤマッピング部１４が保存するマッピング情報２２を参照する。つまり、ブループリント作成部１２は、物理レイヤ構成情報２１ａ、仮想レイヤ構成情報２１ｂ、および、マッピング情報２２から決定される、物理ノードおよび仮想ノードの現在の状態と、オーダ情報が示す、サービス事業者等の要求とを照合して、ブループリント２４を作成することができる。
【００４４】
［ワークフロー実行部１５］
ワークフロー実行部１５は、ブループリント作成部１２が作成したブループリント２４に従って、ワークフローを実行する。ワークフローは、ブループリント２４に含まれるカタログが示す工程を、順序を定めて連結したものである。図５に示す初期デプロイのブループリント２４に対しては、初期デプロイのワークフローは、ＶＭ作成→ＮＷ設定→コンテナ設定、のように順序を定めて連結したものとなる。ワークフロー実行部１５がワークフローを実行することで、オーケストレーションが実行され、ＩＣＴ資源にリソースが割り当てられる。
【００４５】
［ＡＰＩアダプタ部１６］
ＡＰＩアダプタ部１６は、ワークフローを実行するワークフロー実行部１５からの命令に対し、ＡＰＩを通じ操作することができるプログラムにアクセスするためのインタフェースである。当該ＡＰＩは、ＡＰＩアダプタ部１６（またはＡＰＩアダプタ部１６を備えるＩＣＴ資源管理装置１）とオーケストレーション対象との間のsouthbound APIである。ＡＰＩアダプタ部１６は、オーケストレーション対象ごとにインタフェース接続することができる。ＡＰＩアダプタ部１６は、ＡＰＩを通じ操作することができるプログラムごとに複数用意することができる。ワークフロー実行部１５は、ＡＰＩを通じ操作することができるプログラムを実行することで、ワークフローを実行することができる。
ワークフロー実行部１５およびＡＰＩアダプタ部１６の組合せは、オーケストレーションを実行するオーケストレータ部として機能する。
【００４６】
［監視部１７］
監視部１７は、物理レイヤ上の物理ノード、および、仮想レイヤ上の仮想ノードを、例えば、ＳＮＭＰによって監視する。監視部１７による監視結果は、オーケストレーションが実行され、利用可能となったサービスの使用状況を示している。監視部１７による監視結果は、構成情報管理部１３に送信することができる。構成情報管理部１３は、監視部１７の監視結果で、物理ノードおよび仮想ノードに関する情報を収集することができる。
【００４７】
≪処理≫
本実施形態のＩＣＴ資源管理装置１が実行する処理を、図６を参照して説明する。この処理は、例えば、サービス事業者端末２などから構成変更等のオペレーションの要求があった場合に開始する。
【００４８】
まず、要求取得部１１は、構成変更等のオペレーションが示されたオーダ情報をブループリント作成部１２に出力する（ステップＳ１）。次に、ブループリント作成部１２は、構成情報管理部１３に対し、構成情報を要求する（ステップＳ２）。次に、構成情報管理部１３は、構成情報ＤＢ２１に格納されている構成情報、具体的には、物理レイヤ構成情報２１ａおよび仮想レイヤ構成情報２１ｂをブループリント作成部１２に出力する（ステップＳ３）。
【００４９】
次に、ブループリント作成部１２は、レイヤマッピング部１４に対し、マッピング情報２２を要求する（ステップＳ４）。次に、レイヤマッピング部１４は、マッピング情報２２をブループリント作成部１２に出力する（ステップＳ５）。
【００５０】
次に、ブループリント作成部１２は、オーダ情報に対して、構成情報、および、マッピング情報に基づいてブループリント２４を作成する（ステップＳ６）。このとき、ブループリント作成部１２は、オーダ情報に応じて、カタログ群２３からオペレーションに必要となるカタログを選択するとともに、オーダ情報または分散システム１００から、選択したカタログに入力するパラメータを取得する。
【００５１】
次に、ブループリント作成部１２は、作成したブループリント２４を、要求取得部１１を介して、オーダ情報を送信したサービス事業者端末２等に送信し、ブループリント２４の確認依頼をする（ステップＳ７）。ブループリント２４の確認に問題が無ければ、要求取得部１１は、サービス事業者端末２等からの承認を示す情報をブループリント作成部１２に送信する（ステップＳ８）。
ステップＳ１〜ステップＳ８は、ＩＣＴ資源管理装置１が実行する処理全体のうち、インフラ設計の処理を構成する。
なお、処理を迅速にするため、ステップＳ７、ステップＳ８は、省略してもよい。
【００５２】
次に、ブループリント作成部１２は、承認を得たブループリント２４に基づくオーケストレーションを実行するためのスクリプトを作成する（ステップＳ９）。スクリプトの作成の技術は周知であり、詳細な説明は省略する。次に、ブループリント作成部１２は、作成したスクリプトをワークフロー実行部１５に出力する（ステップＳ１０）。
ステップＳ９〜ステップＳ１０は、ＩＣＴ資源管理装置１が実行する処理全体のうち、スクリプト作成の処理を構成する。
【００５３】
次に、ワークフロー実行部１５は、ブループリント作成部１２から取得したスクリプトを解釈する（ステップＳ１１）。スクリプトの解釈の技術は周知であり、詳細な説明は省略する。次に、ワークフロー実行部１５は、ＡＰＩアダプタ部１６に対し、ＡＰＩを通じ操作することができるプログラムごとに命令し（ステップＳ１２）、プロセスを実行する。
【００５４】
プロセスの実行が完了した場合、ＡＰＩアダプタ部１６は、ワークフロー実行部１５に、プロセスの実行の完了を通知する（ステップＳ１３）。次に、ワークフロー実行部１５は、ブループリント作成部１２に、プロセスの実行の完了を通知する（ステップＳ１４）。プロセスの実行の完了は、ＩＣＴ資源管理装置１から仮想レイヤに対するオーケストレーションの実行の完了を意味し、構成変更後のサービスが利用可能になったことを意味する。
ステップＳ１１〜ステップＳ１４は、ＩＣＴ資源管理装置１が実行する処理全体のうち、オーケストレーションの処理を構成する。
【００５５】
その後、監視部１７は、物理レイヤ上の物理ノード、および、仮想レイヤ上の仮想ノードの監視を開始する。監視部１７は、監視によって収集した情報を構成情報管理部１３に通知する（ステップＳ１５）。次に、構成情報管理部１３は、監視部１７から収集した情報をレイヤマッピング部１４に通知する（ステップＳ１６）。
ステップＳ１５〜ステップＳ１６は、ＩＣＴ資源管理装置１が実行する処理全体のうち、監視の処理を構成する。
【００５６】
構成情報管理部１３は、監視部１７が収集した情報から構成情報を生成し、構成情報ＤＢ２１に格納する。また、レイヤマッピング部１４は、構成情報管理部１３を介して、監視部１７が収集した情報からマッピング情報２２を生成する。生成された構成情報およびマッピング情報２２は、新たなブループリントの作成に用いられる。
【００５７】
図６の処理によれば、ＩＣＴ資源管理装置１は、構成情報およびマッピング情報２２を最新状態で保持することができるため、人手を介することなくブループリントを作成し、オーケストレーションを実行し、オペレーションを自動化することができる。
【００５８】
＜初期デプロイの具体例＞
次に、自動化されるオペレーションとして、初期デプロイについてのワークフローの実行例について、図７を参照して詳細に説明する。図７に示すように、初期デプロイのワークフローは、例えば、ＭＳＡ（Micro Service Architecture）を用いて定義することができ、サービスレイヤ、ベースライン、マイクロサービスの３層で設計することができる。
【００５９】
サービスレイヤは、初期デプロイのワークフローの各工程を、順序を定めて連結された状態で登録する。図７に示すように、初期デプロイのワークフローは、カタログ／構成情報取得Ａ１、余剰リソース取得／収容先設定Ａ２、ＶＭ作成Ａ３、ＬＢ／ＦＷグループ追加Ａ４、コンテナホスト登録Ａ５、コンテナイメージ展開Ａ６、状態確認Ａ７、という工程に分けることができ、この順序で実行される。
【００６０】
カタログ／構成情報取得Ａ１は、カタログ群２３からのカタログの選択、および、構成情報管理部１３による構成情報の取得を示す工程である。
余剰リソース取得／収容先設定Ａ２は、ＩＣＴ資源の各々の余剰リソースの取得、および、作成されるＶＭの収容先となる物理ノードの設定を示す工程である。
【００６１】
ＶＭ作成Ａ３は、サービスに供するアプリケーションが配置されるＶＭの作成を示す工程である。
ＬＢ／ＦＷグループ追加Ａ４は、ロードバランサのグループおよびファイアウォールのグループをＮＷ上に追加することを示す工程である。
【００６２】
コンテナホスト登録Ａ５は、作成されるＶＭが用いるコンテナを実行させるための環境構築を示す工程である。コンテナを動作させるためのホストマシンを追加作成し、追加されたホストマシンは、コンテナを管理するコントローラへ登録される。
コンテナイメージ展開Ａ６は、コンテナを動作させるためのホストマシンに、コンテナ化されたアプリケーションを配置する工程である。コンテナ化されたアプリケーションはイメージファイル化されており、当該イメージを指示するホストマシンに配置される。
状態確認Ａ７は、初期デプロイの最終段階として、作成したＶＭの状態を確認する工程である。
【００６３】
ベースラインは、サービスレイヤの各工程の部品を登録する。登録された部品は、カタログとして構成することができる。サービスレイヤに示す各工程は、ベースラインに示す部品の組合せとして実現することができる。図７に示すように、初期デプロイのベースラインには、余剰リソース取得Ｂ１、ＶＭ作成Ｂ２、ＬＢ／ＦＷグループ追加Ｂ３、コンテナホスト登録Ｂ４、コンテナイメージ展開Ｂ５、状態確認Ｂ６が登録されている。
【００６４】
余剰リソース取得Ｂ１は、余剰リソース取得／収容先設定Ａ２の部品を登録する。余剰リソース取得Ｂ１に登録される部品は、例えば、［１］ホスト、ＶＭ一覧取得と、［２］ＶＭ割当スペック取得と、［３］ホスト割当スペック集計とがあるが、これらに限定されない。
【００６５】
ＶＭ作成Ｂ２は、ＶＭ作成Ａ３の部品を登録する。ＶＭ作成Ｂ２に登録される部品は、例えば、［１］全ＶＭ名取得、［２］ＶＭ名決定、［３］ＩＰ払出、［４］ＶＭクローン、［５］ＳＳＨ（Secure Shell）個別設定と、があるが、これらに限定されない。
【００６６】
ＬＢ／ＦＷグループ追加Ｂ３は、ＬＢ／ＦＷグループ追加Ａ４の部品を登録する。ＬＢ／ＦＷグループ追加Ｂ３に登録される部品は、例えば、［１］ＬＢグループ追加、［２］ＦＷグループ追加とがあるが、これらに限定されない。
【００６７】
コンテナホスト登録Ｂ４は、コンテナホスト登録Ａ５の部品を登録する。コンテナホスト登録Ｂ４に登録される部品は、例えば、［１］トークン取得、［２］ホスト追加とがあるが、これらに限定されない。
【００６８】
コンテナイメージ展開Ｂ５は、コンテナイメージ展開Ａ６の部品を登録する。コンテナイメージ展開Ｂ５に登録される部品は、例えば、［１］イメージ展開があり、必要に応じてＳＳＨ個別設定を用意することができるが、これらに限定されない。
【００６９】
状態確認Ｂ６は、状態確認Ａ７の部品を登録する。状態確認Ｂ６に登録される部品は、例えば、［１］Pingテストがあるがこれらに限定されない。
【００７０】
マイクロサービスは、ベースラインに登録されている部品を実行するための機能を登録する。図７に示すように、初期デプロイのマイクロサービスには、［ホスト］情報取得Ｃ１、［ＶＭ］情報取得Ｃ２、［ホスト］情報取得Ｃ３、［ＮＳＸ］ＩＰ払出Ｃ４、［ＶＭ］クローンＣ５、［ＶＭ］ＳＳＨ実行Ｃ６、［ＮＳＸ］ＬＢ追加Ｃ７、［ＮＳＸ］ＦＷ追加Ｃ８、［Rancher］トークン取得Ｃ９、［ＶＭ］ＳＳＨ実行Ｃ１０、［Rancher］コンテナ作成Ｃ１１、［ＶＭ］PingテストＣ１２が登録されている。
【００７１】
［ホスト］情報取得Ｃ１は、物理ノードの管理項目（例えば、図３参照）の情報を取得し、余剰リソース取得Ｂ１の［１］ホスト、ＶＭ一覧取得を実現する。
［ＶＭ］情報取得Ｃ２は、仮想ノードの管理項目（例えば、図４参照）の情報を取得し、余剰リソース取得Ｂ１の［２］ＶＭ割当スペック取得を実現する。
【００７２】
［ホスト］情報取得Ｃ３は、物理ノードの管理項目（例えば、図３参照）の情報を取得し、ＶＭ作成Ｂ２の［１］全ＶＭ名取得を実現する。
［ＮＳＸ］ＩＰ払出Ｃ４は、ＶＭのＩＰアドレスを払い出し、ＶＭ作成Ｂ２の［３］ＩＰ払出を実現する。
［ＶＭ］クローンＣ５は、ＶＭの複製処理をし、ＶＭ作成Ｂ２の［４］ＶＭクローンを実現する。
［ＶＭ］ＳＳＨ実行Ｃ６は、ＶＭへログインして命令を実行し、ＶＭ作成Ｂ２の［５］ＳＳＨ（Secure Shell）個別設定を実現する。
【００７３】
［ＮＳＸ］ＬＢ追加Ｃ７は、ネットワーク上にＬＢを追加し、ＬＢ／ＦＷグループ追加Ｂ３の［１］ＬＢグループ追加を実現する。
［ＮＳＸ］ＦＷ追加Ｃ８は、ネットワーク上にＦＷを追加し、ＬＢ／ＦＷグループ追加Ｂ３の［２］ＦＷグループ追加を実現する。
【００７４】
［Rancher］トークン取得Ｃ９は、処理を行うための権限を取得するコンテナを作成し、コンテナホスト登録Ｂ４の［１］トークン取得を実現する。
［ＶＭ］ＳＳＨ実行Ｃ１０は、ＶＭへログインして命令を実行し、コンテナホスト登録Ｂ４の［２］ホスト追加を実現する。
【００７５】
［Rancher］コンテナ作成Ｃ１１は、コンテナ化されたアプリケーションを作成し、コンテナイメージ展開Ｂ５の［１］イメージ展開を実現する。
［ＶＭ］PingテストＣ１２は、疎通確認をし、状態確認Ｂ６の［１］Pingテストを実現する。
【００７６】
サービスレイヤに示す各工程（Ａ１〜Ａ７）は、カタログに相当し、ベースラインに登録されている部品は、カタログの部分に相当する。マイクロサービスに示す各種機能（Ｃ１〜１２）は、ベースラインに登録されている対応する部品に対してパラメータを入力することができる。
【００７７】
図７に示すように、ワークフロー実行部１５は、初期デプロイについては、事前に作成したブループリント２４を基づいてＶＭを作成し、コンテナイメージ展開を実行する。このように、ワークフロー実行部１５は、本来は別々となる工程を連結し、各工程についてパラメータが必要となる処理を自動化することができる。
【００７８】
本実施形態によれば、物理レイヤと仮想レイヤとのマッピングによって、物理ノードと仮想ノードとの紐付けが明らかとなり、構成変更に対する仮想ノードを、人手を介することなく特定することができる。このため、オペレーションの自動化を実現することができる。
したがって、分散システムのオペレーションを自動化し、仮想化技術が適用される分散システムの運用コストを低減することができる。
特に、ブループリント２４を、カタログの集合体とパラメータを含むように構成することで（図５参照）、オーケストレーションを実行するためのワークフローを容易に構成することができる。
また、監視部１７を備えることで、構成情報およびマッピング情報を最新状態で保持することができるため、人手を介することなくブループリントを作成し、オーケストレーションを実行し、オペレーションの自動化に寄与することができる。
また、後記のＩＣＴ資源管理プログラムは、ＩＣＴ資源管理装置の構築を容易にすることができる。
【００７９】
（プログラム）
また、上記実施形態に係るＩＣＴ資源管理装置１が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。以下に、ＩＣＴ資源管理装置１と同様の機能を実現するＩＣＴ資源管理プログラムを実行するコンピュータの一例を説明する。
【００８０】
図８は、ＩＣＴ資源管理プログラムを実行するコンピュータを示す図である。図８に示すように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００８１】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ（Random  Access  Memory）１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。ディスクドライブ１１００には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１１１０およびキーボード１１２０が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１１３０が接続される。メモリ１０１０、ハードディスクドライブ１０９０、ディスクドライブ１１００、および、ディスクドライブ１１００に挿入される記憶媒体は、ＩＣＴ資源管理装置１が備える記憶部の具体的なハードウェア資源となる。
【００８２】
ここで、図８に示すように、ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。上記実施形態で説明した各テーブルは、例えばハードディスクドライブ１０９０やメモリ１０１０に記憶される。
【００８３】
また、ＩＣＴ資源管理プログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、ハードディスクドライブ１０９０に記憶される。具体的には、上記実施形態で説明したＩＣＴ資源管理装置１が実行する各処理が記述されたプログラムモジュールが、ハードディスクドライブ１０９０に記憶される。
【００８４】
また、ＩＣＴ資源管理プログラムによる情報処理に用いられるデータは、プログラムデータとして、例えば、ハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００８５】
なお、ＩＣＴ資源管理プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、ＩＣＴ資源管理プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００８６】
（その他）
（ａ）構成情報管理部１３は、物理ノードの位置情報を管理することができる。
（ｂ）構成情報管理部１３は、物理ノードとしてのエッジ４に接続しているデバイス５を使用するユーザに関する情報、または、ユーザのテナントに関する情報を管理することができる。よって、物理レイヤ構成情報２１ａとして管理される構成情報は、ユーザ単位またはテナント単位の構成情報とすることができる。レイヤマッピング部１４が、物理レイヤと仮想レイヤとのマッピングを行った場合、ユーザ単位またはテナント単位の構成情報は、仮想レイヤ構成情報２１ｂとして管理される構成情報とすることができる。
【符号の説明】
【００８７】
１００  分散システム
１      ＩＣＴ資源管理装置
２      サービス事業者端末
３      サーバ
４      エッジ
５      デバイス
６      アプリ（アプリケーション）
７      ＶＭ
１１    要求取得部
１２    ブループリント作成部
１３    構成情報管理部
１４    レイヤマッピング部
１５    ワークフロー実行部（オーケストレータ部）
１６    ＡＰＩアダプタ部（オーケストレータ部）
１７    監視部
２１    構成情報ＤＢ
２１ａ  物理レイヤ構成情報
２１ｂ  仮想レイヤ構成情報
２２    マッピング情報
２３    カタログ群
２４    ブループリント
【図１】
2020116221.tif 000003
【図２】
2020116221.tif 000004
【図３】
2020116221.tif 000005
【図４】
2020116221.tif 000006
【図５】
2020116221.tif 000007
【図６】
2020116221.tif 000008
【図７】
2020116221.tif 000009
【図８】
2020116221.tif 000010
【国際調査報告】
2020116221.tif 000011
2020116221.tif 000012
2020116221.tif 000013
2020116221.tif 000014