(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6385304
(24)【登録日】2018年8月17日
(45)【発行日】2018年9月5日
(54)【発明の名称】計算機資源提供サービスの管理装置
(51)【国際特許分類】
G06F 9/50 20060101AFI20180827BHJP
G06F 9/445 20180101ALI20180827BHJP
【FI】
G06F9/50 150Z
G06F9/445 150
【請求項の数】4
【全頁数】9
(21)【出願番号】特願2015-59486(P2015-59486)
(22)【出願日】2015年3月23日
(65)【公開番号】特開2016-181014(P2016-181014A)
(43)【公開日】2016年10月13日
【審査請求日】2017年8月17日
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100076428
【弁理士】
【氏名又は名称】大塚 康徳
(74)【代理人】
【識別番号】100112508
【弁理士】
【氏名又は名称】高柳 司郎
(74)【代理人】
【識別番号】100115071
【弁理士】
【氏名又は名称】大塚 康弘
(74)【代理人】
【識別番号】100116894
【弁理士】
【氏名又は名称】木村 秀二
(74)【代理人】
【識別番号】100130409
【弁理士】
【氏名又は名称】下山 治
(74)【代理人】
【識別番号】100134175
【弁理士】
【氏名又は名称】永川 行光
(74)【代理人】
【識別番号】100131886
【弁理士】
【氏名又は名称】坂本 隆志
(74)【代理人】
【識別番号】100170667
【弁理士】
【氏名又は名称】前田 浩次
(72)【発明者】
【氏名】福嶋 正機
(72)【発明者】
【氏名】黒木 圭介
(72)【発明者】
【氏名】林 通秋
【審査官】
小林 哲雄
(56)【参考文献】
【文献】
特開平11−316747(JP,A)
【文献】
特表2006−504177(JP,A)
【文献】
特開2012−099048(JP,A)
【文献】
国際公開第2013/171944(WO,A1)
【文献】
米国特許出願公開第2005/0283481(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/46−9/54
G06F 9/445
(57)【特許請求の範囲】
【請求項1】
計算機資源の管理装置であって、
管理対象の資源をブロックとして、各ブロックの包含関係を半順序集合の制約に従い管理する管理手段と、
ユーザから、ブロックの順序対の追加又は削除の操作を行うコマンドを受け取るための入力手段と、
前記ユーザが前記入力手段により順序対の操作を行うコマンドを入力すると、前記半順序集合の制約を満たすために必要な順序対の操作を行うコマンドを生成する生成手段と、
を備えていることを特徴とする管理装置。
【請求項2】
管理対象の資源のブロックの内の管理ブロックと、個別資源管理装置との対応関係を保持する保持手段と、
前記ユーザが入力したコマンドの順序対と、前記生成手段が生成したコマンドの順序対と、前記管理手段が管理する包含関係に基づき、前記個別資源管理装置に送信すべきコマンドを決定する決定手段と、
をさらに備えていることを特徴とする請求項1に記載の管理装置。
【請求項3】
前記決定手段は、前記ユーザが入力したコマンドの順序対と、前記生成手段が生成したコマンドの順序対の内、管理ブロックに包含されるブロックに関する順序対に基づき、当該管理ブロックに対応する個別資源管理装置に送信すべきコマンドを決定することを特徴とする請求項2に記載の管理装置。
【請求項4】
請求項1から3のいずれか1項に記載の管理装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、計算機資源提供サービスの管理装置に関する。
【背景技術】
【0002】
クラウドコンピューティングやネットワーク機能仮想化等の計算機資源提供サービスの運用者は、ユーザからのサービス要求に応じて、各計算機資源(以下、単に、資源とも呼ぶ。)の割当てや開放を適切に管理する必要がある。例えば、2つのデータセンター(DC)を有するサービスプロバイダ(SP)が、あるユーザに対してテナントを提供するものとする。ここで、"テナント"とは、ユーザのために割り当てた計算機資源の集合である。なお、1つの"テナント"のための資源は、複数の計算機に跨る場合がある。また、1つ計算機(以下、PM:Physical Machine)の総ての資源を一人のユーザに"テナント"として割り当てること以外にも、1つの計算機の資源を複数の資源に分割し、個々の分割された資源を仮想計算機(以下、VM:Virtual Machine)として、VM単位でユーザに割り当てることができる。
【0003】
例えば、当該ユーザが、テナントに割り当てる資源を2つのDCに分散させることを要求したものとする。この場合、SPは、例えば、2つのDCそれぞれに少なくとも1つのVMを設定し、これらVMを当該ユーザのテナントに割り当てる必要がある。この際、SPは、どのPMに当該ユーザに割り当てるVMを設定するかを決定する必要がある。この決定のために、従来から、非特許文献1から3に示す様な個別資源管理装置が使用されている。ここで、個別資源管理装置は、DCにおける構成や、DCが提供するサービスに応じて個別に設けられる。つまり、例えば、SPが運用する2つのDC内の構成や、2つのDCが提供するサービスによっては、2つのDCそれぞれに専用の個別資源管理装置が設けられる。この様な場合、SPの運用者は、各個別資源管理装置の操作方法をそれぞれ習得する必要がある。また、当該ユーザがSPによるテナント提供の契約を解除すると、SPの運用者は、当該ユーザに割り当てたVMを判定し、各VMを管理する個別資源管理装置を判定し、判定した個別資源管理装置をそれぞれ操作して当該ユーザへの割り当てを解除する必要がある。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】"VMware vSphere:サーバ仮想化、クラウド、インフラストラクチャ|VMware 日本"、[online]、[平成26年12月1日検索]、インターネット<URL:http://www.vmware.com/jp/products/vsphere/>
【非特許文献2】"Home>>OpenStack Open Source Cloud Computing Software"、[online]、[平成26年12月1日検索]、インターネット<URL:http://www.openstack.org/>
【非特許文献3】"Apache CloudStack:Open Source Cloud Computing"、[online]、[平成26年12月1日検索]、インターネット<URL:http://cloudstack.apache.org/>
【発明の概要】
【発明が解決しようとする課題】
【0005】
以上、従来技術では、複数の個別資源管理装置の操作方法を取得する必要がある。さらに、計算機資源のユーザへの割り当てや、ユーザに割り当てた資源の解除の際には、操作すべき個別資源管理装置を運用者がその都度、判断する必要があった。
【0006】
本発明は、統一した操作方法で計算機資源を管理できる管理装置を提供するものである。
【課題を解決するための手段】
【0007】
本発明の一側面によると、管理対象の資源をブロックとして、各ブロックの包含関係を半順序集合の制約に従い管理する管理手段と、ユーザから、ブロックの順序対の追加又は削除の操作を行うコマンドを受け取るための入力手段と、
前記ユーザが前記入力手段により順序対の操作を行うコマンドを入力すると、前記半順序集合の制約を満たすために必要な順序対の操作を行うコマンドを生成する生成手段と、を備えていることを特徴とする。
【発明の効果】
【0008】
統一した操作方法で計算機資源を管理することができる。
【図面の簡単な説明】
【0009】
【
図1】一実施形態による計算機資源提供サービスの制御構成図。
【
図2】一実施形態による計算機資源割り当て例を示す図。
【
図3】一実施形態による管理装置が管理する情報を示す図。
【
図4】一実施形態による管理装置が管理する情報を示す図。
【
図5】一実施形態による管理装置が管理する情報を示す図。
【
図6】一実施形態による管理装置における処理フローを示す図。
【
図7】一実施形態による管理装置における処理フローを示す図。
【発明を実施するための形態】
【0010】
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の各図においては実施形態の説明に必要ではない構成要素については図から省略する。また、以下の実施形態は例示であり本発明を実施形態の内容に限定するものではない。
【0011】
図1は、本実施形態による管理装置1を含む、計算機資源提供サービスの制御構成図である。なお、SPは、2つのデータセンタDC#1及びDC#2を運用し、個別資源管理装置21は、DC#1の資源管理を行い、個別資源管理装置22は、DC#2の資源管理を行うものとする。本実施形態による管理装置1は、個別資源管理装置21及び22を制御する。したがって、SPの運用者は、管理装置1の操作方法のみを習得すれば良い。
【0012】
管理装置1においては、各計算機資源を、「ブロック」と呼ぶ抽象モデルで表す。そして、ブロックの集合に対して、ブロック間の「包含関係」を操作することで、実際の資源に対する操作を実行する。管理装置1は、ブロックの包含関係に対する操作に基づき、個別資源管理装置に対して当該個別資源管理装置の仕様に従うコマンドを送信する。また、個別資源管理装置からのメッセージを、当該個別資源管理装置からのメッセージの仕様に従い解釈する。管理装置1の運用者は、管理装置1に対して以下の2つのコマンドを入力する。1つ目は、取得コマンドである、このコマンドにより、運用者は、現在、管理装置1が管理しているブロックと、それらの包含関係を取得する。2つ目は、変更コマンドであり、運用者はブロック及びブロックの包含関係を変更する。この変更は、個別資源管理装置に伝えられ、これにより実際の計算機資源の割り当てや、割当の解除が行われる。
【0013】
管理装置1が管理するブロックの包含関係は、数学における半順序集合の制約を満たす。すなわち、反射律、推移律及び反対称律の3つの条件を満たす。ここで、反射律とは、各ブロックが自分自身を包含することを意味する。また、推移律とは、AがBを含み、BがCを含むなら、AはCを含むことを意味する。反対称律とは、AがBを含み、BがAを含むなら、A=Bとの意味である。これら条件より、包含関係のグラフは、閉路(ループ)を持たなくなる。
【0014】
例えば、
図2に示す様に、SPが2つのDC#1及びDC#2を有し、DC#1がPM#1及びPM#2を有し、DC#2がPM#3及びPM#4を有し、PM#2に設けられたVM#1と、PM#3に設けられたVM#2をあるユーザに対して1つのテナントとして割り当てている場合を考える。この場合、包含関係のグラフは、
図3の様になる。なお、
図3においては、あるブロックからそのブロックに至るリンクは省略している。
図3において、SPブロックは、SPが保有する全ての資源と対応する。DC#1ブロックは、DC#1内に配備された全ての資源と対応する。PM#1ブロックは、PM#1が持つ全ての資源と対応する。なお、以下の説明において、Aブロックが、Bブロックを包含する場合、Aブロックを(Bブロックに対する)コンテナと呼び、Bブロックを(Aブロック)のコンテントと呼ぶ。また、管理装置1に対応するブロックであるSPと、個別資源管理装置に対応するブロックであるDC#1と、DC#2を、以下では管理ブロックと呼ぶ。
【0015】
本実施形態において、変更コマンドは、変更の種類、つまり、追加又は削除を示す情報と、変更される順序対の組の集合と、属性の集合で表される。なお、属性の値は、操作対象のブロックが属するコンテナの属性によって変化する。例えば、順序対を追加する場合、変更コマンドは、追加を示す情報と、コンテナを示す情報と、コンテントを示す情報を含む。同様に、順序対を削除する場合、変更コマンドは、削除を示す情報と、コンテナを示す情報と、コンテントを示す情報を含む。
【0016】
以下では、
図2のテナントを作成する手順について説明する。
図4は、テナントが作成される前の包含関係のグラフを示している。運用者は、取得コマンドにより
図4に示す情報を取得する。
【0017】
まず、運用者はテナントを作成するため、変更コマンドを管理装置1に入力する。このとき、コンテナは、SPであり、コンテントはテナントである。つまり、包含関係は、最終的には、
図5の通りとなる。この変更コマンドで追加される順序対の集合をPとする。本例において、集合Pの要素は、SPとテナントの順序対のみである。
図6に示す様に、管理装置1は、S10でこの変更コマンドを検証して、S11で、変更コマンドを実行可能であるか否かを判定する。実行可能であると、S12で必要な処理を実行し、実行可能でなければ、S13で運用者にエラーを通知する。
【0018】
図7は、
図6のS10に示す変更コマンド検証処理のフローチャートである。管理装置1は、S20で、現在の順序対の集合Cの全要素と、変更コマンドで追加される順序対の集合Pの全要素を、その要素とする集合C´を求める。管理装置1は、S21で、総ての管理ブロックに対して、以下の処理を実行したかを判定する。総ての管理ブロックに対して処理を行っていると、管理装置1は、変更コマンド検証処理を終了する。一方、総ての管理ブロックに対して処理を行っていないと、管理装置1は、S22で、未処理の管理ブロックmを1つ選択し、S23で、集合Pmを空集合に初期化する。続いて、S24で、集合Pの総ての要素pに対して処理を行ったかを判定し、処理を行っていないと、S25で、未処理の要素pを1つ選択する。本例では、集合Pの要素pは、SPとテナントの順序対のみである。
【0019】
管理装置1は、S26で、包含関係C´上で、選択した要素pのコンテナが、選択した管理ブロックmに含まれていると、要素pを集合Pmに追加する。本例では、コンテナである管理ブロックSPは、管理ブロックSPに含まれているため、管理ブロックSPに対する集合Pmに、SPとテナントの順序対が追加される。管理装置1は、
図6のS11において、総ての集合Pmが空集合であると、実行不可能と判定する。一方、空集合ではない集合Pmがあると、実行可能であると判定し、
図6のS12で変更を実行する。本例では、管理ブロックSPに対する集合Pmは空集合ではないため実行可能である。なお、管理ブロックDC#1に対する集合Pmが空集合ではないと、当該集合Pmに含まれる順序対については、個別管理装置21においても処理すべき事項として、個別管理装置21に対して必要なコマンドを送信する。管理ブロックDC#2に対する集合Pmが空集合でない場合も同様である。本例では、管理ブロックDC#1に対する集合Pm及び管理ブロックDC#2に対する集合Pmは共に空集合であるので、管理装置1は、自装置内の閉じた処理として、
図5に示す包含関係を作成する。また、管理装置1は、追加した順序対に含まれるブロックの属性に応じて必要な処理を行う。例えば、テナントに対しては、認証鍵を設定する。
【0020】
続いて、運用者は、テナントに割り当てるVM#1とVM#2の追加を行う。なお、VM#1とVM#2は異なるDCに設けることがユーザより要求されているため、VM#1はDC#1に設け、VM#2はDC#2に設けるものとする。この場合、運用者は、例えば、テナントとVM#1の順序対と、テナントとVM#2の順序対と、DC#1とVM#1の順序対と、DC#2とVM#2の順序対を追加する変更コマンドを管理装置1に入力する。なお、SPとVM#1の順序対と、SPとVM#2の順序対を追加する変更コマンドについては、上述した半順序集合の制約から、管理装置1が自動的に生成できる。
【0021】
この場合、
図7の集合Pの要素は、テナントとVM#1の順序対と、テナントとVM#2の順序対と、DC#1とVM#1の順序対と、SPとVM#1の順序対と、DC#2とVM#2の順序対と、SPとVM#2の順序対の、合計6個となる。まず、S22で管理ブロックとしてSPを選択する。この場合、S22〜S26の処理において、管理ブロックSPに対する集合Pmには、6つの順序対の総てが含まれることになる。したがって、管理装置1は、この6つの順序対を追加する処理と、各順序対のブロックの属性に応じた処理を行う。
【0022】
続いて、管理装置1は、S23で管理ブロックとしてDC#1を選択する。この場合、S22〜S26の処理において、集合Pmには、DC#1とVM#1の順序対が含まれる。この場合、管理装置1は、選択したDC#1の個別管理装置21に、VM#1を追加する要求を送信する。個別管理装置21は、VM#1を追加する要求を受信すると、そのときのDC#1内での計算機資源の割当状態と、あらかじ個別管理装置21に設定された割当て基準に従い、VM#1を設ける計算機を決定する。ここでは、PM#2に決定したものとする。個別管理装置21は、VM#1をPM#2に設ける処理と、各順序対のブロックの属性に応じた処理を行う。例えば、テナントの認証鍵は、テナントの配下にあるVMに引き継がれるものとする。この場合、管理装置1は、個別管理装置21に、VM#1を追加する要求を送信する際に、テナントの認証鍵を含める。個別管理装置21は、受け取った認証鍵をVM#1の設定の際に使用する。また、個別管理装置21は、VM#1をPM#2に設けたことを管理装置1に通知する。これにより、管理装置1は、管理するブロックの包含関係を更新する。S23で管理ブロックとしてDC#2を選択したときの処理も同様である。ここでは、個別管理装置22は、VM#2を、PM#3に設定したものとする。よって、管理装置1が管理する包含関係は、
図3の通りとなる。
【0023】
管理装置1は、
図3に示す包含関係を管理している。したがって、例えば、PM#2に障害が発生したときに影響を受けるVMと、当該VMを使用しているテナントを迅速に把握することができる。
【0024】
図3に示す状態において、ユーザがSPとの間で、テナントの契約を解除したものとする。この場合、SPの運用者は、管理装置1に、テナントと、テナントに含まれるVM#1及びVM#2に関する総ての順序対を削除する変更コマンドを管理装置1に入力する。
図7のフローチャートにより、管理ブロックDC#1に対する集合Pmには、DC#1とVM#1の順序対と、PM#2とVM#1の順序対が含まれることになる。したがって、管理装置1は、個別管理装置21に、これらの削減を要求するコマンドを送信する。このとき、管理ブロックDC#2に対しても同様である。したがって、管理装置1が管理する包含関係は
図4の通りとなる。また、テナントを削減するため、テナントの属性の認証鍵を、その属性として引き継ぐVM#1及びVM#2の削除の際に、これらの認証鍵をも合わせて削除される。
【0025】
以上、本実施形態によると、資源をブロックとして管理し、ブロック間の包含関係を半順序集合の制約を満たすとの制限の元に管理する。この構成により、順序対の追加・削除を示すコマンドにより計算機資源の管理を行うことができる。また、包含関係のグラフとして計算機資源の割り当てを管理するため、計算機資源の割り当て関係が明確になる。
【0026】
図8は、本実施形態による管理装置1の構成図である。保持部11は、管理対象のブロックの包含関係を示す情報を保持すると共に、管理ブロックと、個別資源管理装置との対応関係を保持する。管理部12は、入力部15によるユーザ(運用者)が入力するコマンドを解釈し、各ブロックの包含関係を半順序集合の制約に従い管理する。生成部13は、ユーザが順序対を操作(追加又は削除)する変更コマンドを入力すると、半順序集合の制約を満たすために必要な、順序対の変更コマンドを生成する。コマンド決定部14は、
図7の処理で生成された集合Pmに基づき、コマンドを送信すべき個別資源管理装置を決定する。また、コマンド決定部14は、当該個別資源管理装置の仕様に基づき、ユーザが入力したコマンドを実現するに必要な当該個別資源管理装置へのコマンドを決定し、決定したコマンドを当該個別資源管理装置に送信する。
【0027】
また、本発明による管理装置1は、コンピュータを上記管理装置1として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。