JP5492253B2 - 制御装置、制御方法および制御プログラム - Google Patents

制御装置、制御方法および制御プログラム Download PDF

Info

Publication number
JP5492253B2
JP5492253B2 JP2012131843A JP2012131843A JP5492253B2 JP 5492253 B2 JP5492253 B2 JP 5492253B2 JP 2012131843 A JP2012131843 A JP 2012131843A JP 2012131843 A JP2012131843 A JP 2012131843A JP 5492253 B2 JP5492253 B2 JP 5492253B2
Authority
JP
Japan
Prior art keywords
virtual machine
cluster
definition information
resource
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012131843A
Other languages
English (en)
Other versions
JP2013257626A (ja
Inventor
幸久 西澤
健 尾尻
雅仁 室井
基貴 湯原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012131843A priority Critical patent/JP5492253B2/ja
Publication of JP2013257626A publication Critical patent/JP2013257626A/ja
Application granted granted Critical
Publication of JP5492253B2 publication Critical patent/JP5492253B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Description

本発明は、制御装置等に関する。
ネットワークに接続された複数の仮想マシンサーバ上で仮想マシンによるサービスを提供するデータセンタは、例えば、各レイヤのスイッチ、物理サーバ等の物理機器、及び各仮想マシンなどの論機機器を利用する。各物理機器、各論理機器に対する統一的な制御プロトコルは存在しないため、各物理機器、各論理機器は、製品固有の制御方法によって管理されている。
これに対して、各機器を統一的に制御するために、各機器および機器間の接続関係を抽象化して定義、制御する従来技術が存在する。この従来技術は、例えば、非特許文献1に開示されている。非特許文献1は、資源間の接続関係を抽象化して管理することで、資源間の接続制御を自動化することが可能となる。資源とは、機器のそれぞれを有限状態マシンとしてモデル化したものである。
佐藤賢一、林秀樹、尾尻健 「クラウドオペレーションを支えるプロビジョニング基盤の開発」2011.10 NTT技術ジャーナル、[online]、[平成24年5月15日検索]、インターネット<URL:http://www.ntt.co.jp/journal/1110/files/jn201110018.pdf>
しかしながら、上述した従来技術では、仮想マシンをクラスタ化し、仮想マシン同士が同一のクラスタに属するような複雑な環境におけるプロビジョニングを効率的に実行することができないという問題があった。
開示の実施形態は、上記に鑑みてなされたものであって、仮想マシンをクラスタ化し、仮想マシン同士が同一のクラスタに属するような複雑な環境におけるプロビジョニングを効率的に実行することができる制御装置、制御方法および制御プログラムを提供することを目的とする。
本発明に係る制御装置は、複数の仮想マシンの資源を定義する複数の仮想マシン定義情報と、前記複数の仮想マシンに接続される仮想マシンクラスタの資源を定義する仮想マシンクラスタ定義情報と、同一のクラスタに所属する複数の仮想マシンと前記仮想マシンクラスタとの接続関係を定義する接続定義情報とを記憶する記憶部と、操作部から作成の指示を受け付けた場合に、前記仮想マシン定義情報および前記仮想マシンクラスタ定義情報を基にして、仮想マシンの資源および仮想マシンクラスタの資源を生成し、前記接続定義情報を基にして、同一のクラスタに所属する複数の仮想マシンの資源、および該複数の仮想マシンと接続関係にある前記仮想マシンクラスタの資源に、同一のクラスタ識別子を設定するインスタンス情報を生成する接続処理部と、前記操作部から割り当ての指示を受け付けた場合に、前記生成されたインスタンス情報に基づいて、前記クラスタ識別子が同一となる仮想マシンの資源を、異なる仮想マシンサーバに配置する配置処理部とを有し、前記仮想マシン定義情報は、前記仮想マシンのポートを定義した情報を含み、前記仮想マシンクラスタ定義情報は、前記仮想マシンクラスタの資源に接続される仮想マシンの資源の数に応じたポートを定義した情報を含み、前記接続定義情報は、前記仮想マシン定義情報のポートおよび前記仮想マシンクラスタ定義情報のポートを用いて複数の仮想マシンと前記仮想マシンクラスタとの接続関係を定義する情報であり、前記接続処理部は、前記接続定義情報に定義された前記仮想マシンクラスタの資源のポートと前記仮想マシンの資源のポートとの接続関係を基にして、前記仮想マシンクラスタの資源のポートと仮想マシンの資源のポートとを接続し、同一の仮想マシンクラスタに接続された仮想マシンの資源を、同一のクラスタに所属する仮想マシンの資源であると判定して前記インスタンス情報を生成することを特徴とする
本発明に係る制御装置によれば、仮想マシンをクラスタ化し、仮想マシン同士が同一のクラスタに属するような複雑な環境におけるプロビジョニングを効率的に実行することができるという効果を奏する。
図1は、仮想マシン提供システムの構成の一例を示す図である。 図2は、プロビジョニング装置の構成を示す機能ブロック図である。 図3は、クラスタテンプレート情報のデータ構造の一例を示す図である。 図4は、接続定義情報のデータ構造の一例を示す図である。 図5は、インスタンス情報のデータ構造の一例を示す図である。 図6は、コネクタインスタンスのデータ構造の一例を示す図である。 図7は、仮想マシンの状態遷移モデルを示す図である。 図8は、資源SPI「起動()」を受け付けた場合の処理手順を示すフローチャートである。 図9は、開示の技術に係る制御プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。
以下に、本願の開示する制御装置、制御方法および制御プログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。
(実施形態)
まず、本実施形態で定義する仮想マシンクラスタの概念について説明する。クラスタ化において、複数の物理サーバによって実現する場合と同様の可用性を、複数の仮想マシンの資源を用いて実現する場合、耐故障性を確保する観点から、各仮想マシンの資源を各々別々に物理サーバに配置する必要がある。
そこで、同一のクラスタを構成する仮想マシンのグループを表す概念として、「仮想マシンクラスタ」と定義する。以下の実施形態で説明するように、同一の仮想マシンクラスタの資源に接続される仮想マシンの資源には、同一のクラスタ識別子が付与される。同一のクラスタ識別子が付与された仮想マシンの資源は、別々の仮想マシンサーバに配置され、各種の制御を実行する。ここで、仮想マシンサーバは、上記の物理サーバ上で仮想的に動作するサーバである。
次に、本実施形態に係る仮想マシン提供システムの構成について説明する。図1は、仮想マシン提供システムの構成の一例を示す図である。図1に示すように、この仮想マシン提供システムは、操作端末10と、物理サーバ20と、プロビジョニング装置100とを有する。プロビジョニング装置100は、制御装置の一例である。
操作端末10、物理サーバ20、プロビジョニング装置100は、コンピュータネットワーク5を介して相互に接続される。操作端末10、物理サーバ20、プロビジョニング装置100は、コンピュータネットワーク5を介して、相互にデータ通信を行うことが可能である。コンピュータネットワーク5は、例えば、データセンタ内の通信網に対応する。
操作端末10は、仮想マシン提供システムの管理者が、プロビジョニング装置100に対する各種の指示を入力するために用いる端末である。操作端末10は、管理者によって入力された指示内容の情報を、プロビジョニング装置100に送信する。例えば、指示内容には、プロビジョニング装置100で管理される仮想マシンクラスタおよび仮想マシンの状態を遷移させる指示が含まれる。
また、管理者は、操作端末10を操作して、クラスタテンプレート情報を生成し、プロビジョニング装置100に送信する。クラスタテンプレート情報は、仮想マシンの資源の雛形および仮想マシンクラスタの資源の雛形や、同一のクラスタに所属する複数の仮想マシンと仮想マシンクラスタとの接続関係を定義した情報を含む。クラスタテンプレート情報の詳細については後述する。
物理サーバ20は、複数の仮想マシンのそれぞれが設定されるサーバである。物理サーバ20は、複数の仮想マシンのそれぞれに割り当てられるCPU(Central Processing Unit)、メモリ、ハードディスクドライブ等の複数のハードウェアを備える。CPU、メモリ、ハードディスクドライブの図示は省略する。
物理サーバ20は、プロビジョニング装置100からの指示に応じ、ハイパーバイザを用いて複数の種類のハードウェアを分割して複数の仮想マシンサーバを用意し、各仮想マシンサーバに仮想マシンを割り当てる。
プロビジョニング装置100は、クラスタテンプレート情報を基にして、クラスタ構成を組む複数の仮想マシンを一括で作成し、作成した複数の仮想マシンを、物理サーバ20に用意された各仮想マシンサーバに仮想マシンを配置する装置である。以下において、プロビジョニング装置100について具体的に説明する。
図2は、プロビジョニング装置の構成を示す機能ブロック図である。図2に示すように、このプロビジョニング装置100は、記憶部110、通信部120、資源操作部130、接続設定部140、仮想マシン配置制御部150を有する。各処理部110〜150は相互に接続される。
記憶部110は、クラスタテンプレート情報110aおよびインスタンス情報110bを記憶する記憶部である。
クラスタテンプレート情報110aは、仮想マシンの資源の雛形および仮想マシンクラスタの資源の雛形や、同一のクラスタに所属する複数の仮想マシンと仮想マシンクラスタとの接続関係を定義した情報を含む。
図3は、クラスタテンプレート情報のデータ構造の一例を示す図である。図3に示すように、このクラスタテンプレート情報110aは、仮想マシンクラスタテンプレート30、仮想マシンテンプレート30a、30b、接続定義情報31を有する。ここでは、説明の便宜上、仮想マシンテンプレート30a、30bを示すが、このクラスタテンプレート情報110aには、他の仮想マシンテンプレートが含まれていても良い。
仮想マシンクラスタテンプレート30は、仮想マシンクラスタの資源の雛形である。仮想マシンクラスタテンプレート30は、属性として、クラスタ識別子と、所属一覧とを有する。クラスタ識別子は、仮想マシンクラスタを一意に識別する情報である。所属一覧は、仮想マシンクラスタに所属する各仮想マシンを一意に識別する仮想マシン識別子の一覧を示す情報である。
仮想マシンクラスタテンプレート30のポート識別情報は、仮想マシンクラスタテンプレート30のポートを一意に識別する情報を含む。ポートは、仮想マシンクラスタに所属する仮想マシンと仮想マシンクラスタとの接続関係を持つために定義された情報である。ポートの数は、仮想マシンクラスタに所属する仮想マシンの数に応じて増減する。なお、仮想マシンクラスタテンプレート30に定義されるポートの図示は省略する。
仮想マシンテンプレート30aおよび仮想マシンテンプレート30bの説明は同じであるため、ここでは一例として、仮想マシンプレート30aについて説明する。
仮想マシンプレート30aは、仮想マシンの資源の雛形である。仮想マシンテンプレート30は、属性として、仮想マシン識別子、クラスタ識別子、ポジション識別子を有する。仮想マシン識別子は、仮想マシンを一意に識別する情報である。クラスタ識別子は、所属先の仮想マシンクラスタを一意に識別する情報である。ポジション識別子は、仮想マシンの配置先を一意に識別する情報である。
ポート識別情報は、仮想マシンテンプレート30aのポートを一意に識別する情報である。ポートは、仮想マシンクラスタに所属する仮想マシンと仮想マシンクラスタとの接続関係を持つために定義された情報である。仮想マシンテンプレート30aのポートの数は1つである。仮想マシンテンプレート30に定義されるポートの図示は省略する。
接続定義情報31は、仮想マシンクラスタテンプレート30と、仮想マシンテンプレート30a、30bとの接続関係を定義する情報である。図4は、接続定義情報のデータ構造の一例を示す図である。図4に示すように、この接続定義情報31は、接続元ポート識別情報と接続先ポート識別情報とを対応付ける。接続元ポート識別情報は、仮想マシンクラスタテンプレート30のポート識別情報に対応する。接続先ポート識別情報は、仮想マシンテンプレート30a、30bのポート識別情報に対応する。
例えば、図4の1行目において、接続元ポート識別情報が「ポート1−1」、接続先ポート識別情報が「ポート2」となっている。このため、仮想マシンクラスタテンプレート30の「ポート1−1」と、仮想マシンテンプレート30aの「ポート2」とが接続されている。
次に、図2に示したインスタンス情報110bについて説明する。インスタンス情報110bは、クラスタテンプレート情報110aを基にして生成される情報(インスタンス)である。なお、クラスタテンプレート情報110aからインスタンス情報110bが生成されるまでの説明は後述する。
図5は、インスタンス情報のデータ構造の一例を示す図である。図5に示すように、このインスタンス情報110bは、仮想マシンクラスタインスタンス40、仮想マシンインスタンス40a、40b、コネクタインスタンス41を有する。ここでは、説明の便宜上、仮想マシンインスタンス40a、40bを示すが、このインスタンス情報110bには、クラスタテンプレート情報110aに応じて、他の仮想マシンインスタンスが含まれていても良い。
仮想マシンクラスタインスタンス40は、図3に示した仮想マシンクラスタテンプレート30を元に生成される、仮想マシンクラスタの資源である。仮想マシンクラスタインスタンス40は、属性として、クラスタ識別子と、所属一覧とを有する。クラスタ識別子、所属一覧に関する説明は、仮想マシンクラスタテンプレート30のクラスタ識別子、所属一覧の説明と同様である。仮想マシンクラスタインスタンス40では、各属性に属性値が設定される。
仮想マシンクラスタインスタンス40のポート識別情報は、仮想マシンクラスタインスタンス40のポートを一意に識別する情報を含む。なお、仮想マシンクラスタインスタンス40に定義されるポートの図示は省略する。
仮想マシンインスタンス40aおよび仮想マシンインスタンス40bの説明は同じであるため、ここでは一例として、仮想マシンインスタンス40aについて説明する。
仮想マシンインスタンス40aは、図3に示した仮想マシンテンプレートを元に生成される、仮想マシンの資源である。仮想マシンインスタンス40aは、属性として、仮想マシン識別子、クラスタ識別子、ポジション識別子を有する。仮想マシン識別子、クラスタ識別子、ポジション識別子に関する説明は、仮想マシンテンプレート30aの仮想マシン識別子、クラスタ識別子、ポジション識別子の説明と同様である。仮想マシンインスタンス40aでは、各属性に属性値が設定される。
仮想マシンインスタンス40aのポート識別情報は、仮想マシンインスタンス40aのポートを一意に識別する情報を含む。なお、仮想マシンインスタンス40aに定義されるポートの図示は省略する。
コネクタインスタンス41は、仮想マシンクラスタインスタンス40と、仮想マシンインスタンス40a、40bとの接続関係を定義する情報であり、図3の接続定義情報31を基にして生成される。図6は、コネクタインスタンスのデータ構造の一例を示す図である。図6に示すように、コネクタインスタンス41は、接続元情報と接続先情報とを対応付ける。
接続元情報は、接続元の仮想マシン識別子と接続元となる仮想マシンクラスタインスタンスのポート識別情報とが含まれる。なお、接続元の仮想マシン識別子は、仮想マシンクラスタを一意に識別する情報とする。接続先情報は、接続先の仮想マシンの仮想マシン識別子およびポート識別情報が含まれる。
例えば、図6の1行目において、接続元情報の仮想マシン識別子が「仮想マシンクラスタ−1」、ポート識別情報が「ポート1−1」、接続先情報の仮想マシン識別子が「仮想マシン識別子−1」、ポート識別情報が「ポート2」となっている。このため、仮想マシンクラスタインスタンス40の「ポート1−1」と、仮想マシンインスタンス40aの「ポート2」とが接続されている。
次に、仮想マシンの状態遷移について説明する。図7は、仮想マシンの状態遷移モデルを示す図である。仮想マシンの状態は、初期50a、未割当50b、割当済50c、起動中50dのいずれかとなり、資源SPI(Service Provider Interface)の種別に応じて遷移する。
初期50aの状態は、例えば、仮想マシンテンプレート30a、30bから、仮想マシンインスタンス40a、40bが作成されていない状態を示す。未割当50bの状態は、例えば、仮想マシンテンプレート30a、30bから、仮想マシンインスタンス40a、40bが作成された状態を示す。
割当済50cの状態は、ソフトウェアリソースやハードウェアリソースを仮想マシンの資源に割り当てた状態を示す。起動中50dの状態は、仮想マシンの資源が利用可能な状態である。
資源SPIには、作成()、割当()、起動()、停止()、解放()、削除()が存在する。資源SPIの「作成()」は、仮想マシンの状態を初期50aから、未割当50bに遷移させる。資源SPIの「割当()」は、仮想マシンの状態を未割当50bから割当済50cに遷移させる。資源SPIの「起動()」は、仮想マシンの状態を割当済50cから起動中50dに遷移させる。
資源SPIの「停止()」は、仮想マシンの状態を起動中50dから割当済50cに遷移させる。資源SPIの「解放()」は、仮想マシンの状態を割当済50cから未割当50bに遷移させる。資源SPIの「削除()」は、仮想マシンの状態を未割当50bから初期50aに遷移させる。
次に、仮想マシンクラスタの状態遷移について説明する。仮想マシンクラスタの状態遷移モデルは、図7に示した仮想マシンの状態遷移モデルと同様である。
管理者は操作端末10を操作して、資源SPIをプロビジョニング装置100に通知し、プロビジョニング装置100に仮想マシンおよび仮想マシンクラスタの状態を遷移させる。
図2の説明に戻る。通信部120は、コンピュータネットワーク5を介して、操作端末10、物理サーバ20との間でデータ通信を実行する処理部である。例えば、通信部120は、通信装置に対応する。プロビジョニング装置100の資源操作部130は、通信部120を介して、操作端末10から資源SPI等を受け付ける。
資源操作部130は、操作端末10から資源SPIを受け付けた場合に、資源SPIの種別に応じて、接続設定部140、仮想マシン配置制御部150と協働し、仮想マシンクラスタの状態と、この仮想マシンクラスタに所属する仮想マシンの状態とを遷移させる処理部である。
なお、プロビジョニング装置100は、資源操作部130と、接続設定部140とが協働して行う処理を実行する接続処理部を有しても良い。また、プロビジョニング装置100は、資源操作部130と、仮想マシン配置制御部150とが協働して行う処理を実行する配置処理部を有しても良い。
資源操作部130が、資源SPI「作成()」を受け付けた場合の処理について説明する。この場合には、資源操作部130は、仮想マシンクラスタの状態と、この仮想マシンクラスタに所属する仮想マシンの状態を、初期の状態から未割当の状態に遷移させる。
具体的に、資源操作部130は、仮想マシンクラスタテンプレート30を基にして、仮想マシンクラスタインスタンス40を生成する。資源操作部130は、ユニークなクラスタ識別子を払い出し、払い出したクラスタ識別子を、仮想マシンクラスタインスタンス40のクラスタ識別子の属性値に設定する。なお、この時点において、所属一覧の属性値には、何も設定されない。
資源操作部130は、仮想マシンテンプレート30aを基にして、仮想マシンインスタンス40aを生成する。資源操作部130は、ユニークな仮想マシン識別子を払い出し、払い出した仮想マシン識別子を、仮想マシンインスタンス40aの仮想マシン識別子に設定する。なお、この時点において、仮想マシンインスタンス40aのクラスタ識別子、ポジション識別子には、何も設定されない。
資源操作部130が、仮想マシンテンプレート30bを基にして、仮想マシンインスタンス40bを生成する処理は、仮想マシンテンプレート30bを基にして、仮想マシンインスタンス40aを生成する処理と同様である。
また、資源操作部130は、接続定義情報31を基にして、コネクタインスタンス41を生成する。資源操作部130は、接続定義情報31の接続元ポート識別情報および接続先ポート情報の関係と、仮想マシンクラスタインスタンス40、仮想マシンインスタンス40a、40bのポート識別情報とを比較してコネクトインスタンス41の接続元情報と、接続先情報の値を判定し、コネクトインスタンス41を生成する。なお、資源操作部130は、接続定義情報31が存在しない場合には、コネクタインスタンス41を生成しない。
次に、資源操作部130が、資源SPI「削除()」を受け付けた場合の処理について説明する。この場合には、資源操作部130は、仮想マシンクラスタの状態と、この仮想マシンクラスタに所属する仮想マシンの状態を、未割当の状態から初期の状態に遷移させる。例えば、資源操作部130は、インスタンス情報110bを削除する。
次に、資源操作部130が、資源SPI「割当()」を受け付けた場合の処理について説明する。この場合には、資源操作部130は、仮想マシンクラスタの状態と、この仮想マシンクラスタに所属する仮想マシンの状態を、未割当の状態から割当済の状態に遷移させる。例えば、資源操作部130は、ソフトウェアリソースやハードウェアリソースを仮想マシンクラスタの資源および仮想マシンの資源を、ソフトウェアリソースやハードウェアリソースを仮想マシンクラスタの資源および仮想マシンの資源に割り当てる。
次に、資源操作部130が、資源SPI「解放()」を受け付けた場合の処理について説明する。この場合には、資源操作部130は、仮想マシンクラスタの状態と、この仮想マシンクラスタに所属する仮想マシンの状態を、割当済の状態から未割当の状態に遷移させる。例えば、資源操作部130は、ソフトウェアリソースやハードウェアリソースに割り当てた仮想マシンクラスタの資源および仮想マシンの資源を解放する。
次に、資源操作部130が、資源SPI「起動()」を受け付けた場合の処理について説明する。この場合には、資源操作部130は、接続設定部140および仮想マシン配置制御部150と協働して、仮想マシンクラスタの状態と、この仮想マシンクラスタに所属する仮想マシンの状態を、割当済の状態から起動中の状態に遷移させる。起動状態となった仮想マシンは、自身に設定されたポジション識別子に従って、物理サーバ20上の仮想マシンサーバを特定し、起動処理を行う。
ここで、資源操作部130が、資源SPI「起動()」を受け付けた場合の処理手順について説明する。図8は、資源SPI「起動()」を受け付けた場合の処理手順を示すフローチャートである。
図8に示すように、資源操作部130は、インスタンス情報110bを参照し、仮想マシンクラスタとのコネクタインスタンスが存在するか否かを判定する(ステップS101)。資源操作部130は、仮想マシンとのコネクタインスタンスが存在しない場合には(ステップS101,No)、ステップS106に移行する。
一方、資源操作部130は、仮想マシンクラスタとのコネクタインスタンスが存在する場合には(ステップS101,Yes)、仮想マシンクラスタの状態は割当済か否かを判定する(ステップS102)。資源操作部130は、仮想マシンクラスタの状態が割当済の場合には(ステップS102,Yes)、ステップS104に移行する。
一方、資源操作部130は、仮想マシンクラスタの状態が割当済ではない場合には(ステップS102,No)、仮想マシンクラスタに対する割当処理を実行する(ステップS103)。ステップS103において、資源操作部130は、上記に示した、資源SPI「割当()」を受け付けた場合の処理と同様の処理を実行する。
資源操作部130は、接続設定部140と協働して、接続元の仮想マシンクラスタインスタンス40の所属一覧に、仮想マシン識別子を追加する(ステップS104)。
ステップS104について具体的に説明する。接続設定部140は、コネクトインスタンス41を参照して、仮想マシンクラスタインスタンス40に所属する仮想マシンインスタンスを判定する。そして、接続設定部140は、仮想マシンクラスタインスタンス40に所属する仮想マシンインスタンスの仮想マシン識別子の属性値を、所属一覧の属性値に追加する。
例えば、図5において、仮想マシンクラスタインスタンス40に、仮想マシンインスタンス40a、40bが所属している場合には、接続設定部140は、仮想マシンクラスタインスタンス40の所属一覧の属性値に「仮想マシン−1、仮想マシン−N」を追加する。
なお、仮想マシンクラスタの資源が割当済となった後に、仮想マシンクラスタインスタンス40の所属一覧の属性値を設定する制約は、仮想マシンクラスタの資源が共有資源などを保持し、それらの共有資源の割当状態にて確定することを前提とするためとなる。共有資源には、共有ディスク、論理IPアドレス等が含まれる。
図8の説明に戻る。資源操作部130は、接続設定部140と協働して、接続元の仮想マシンクラスタインスタンス40のクラスタ識別子を、仮想マシンクラスタのクラスタ識別子の属性値に設定する(ステップS105)。
ステップS105について具体的に説明する。接続設定部140は、コネクトインスタンス41を参照して、仮想マシンクラスタインスタンス40に所属する仮想マシンインスタンスを判定する。そして、接続設定部140は、仮想マシンクラスタインスタンス40のクラスタ識別子の属性値を、所属する仮想マシンインスタンス40a、40bのクラスタ識別子の属性値に設定する。
例えば、図5において、仮想マシンクラスタインスタンス40に所属する仮想マシンインスタンスは、仮想マシンインスタンス40a、40bとなる。このため、接続設定部140は、仮想マシンクラスタインスタンスのクラスタ識別子の属性値「仮想マシンC−1」を、仮想マシンインスタンス40a、40bのクラスタ識別子の属性値に設定する。
図8の説明に戻る。資源操作部130は、仮想マシンインスタンスのクラスタ識別子の属性値が存在するか否かを判定する(ステップS106)。資源操作部130は、仮想マシンインスタンスのクラスタ識別子の属性値が存在する場合には(ステップS106,Yes)、仮想マシンインスタンスのクラスタ識別子の属性値を仮想マシン配置制御部150に通知し、ポジション識別子の払出を要求する(ステップS107)。
資源操作部130は、仮想マシン配置制御部150からポジション識別子を取得し、仮想マシンインスタンスに設定する(ステップS108)。
ステップS107について具体的に説明する。資源操作部130は、各仮想マシンインスタンスのクラスタ識別子の属性値を、仮想マシン配置制御部150に入力することで、ポジション識別子の払出を要求する。
例えば、図5を用いて説明すると、資源操作部130は、仮想マシンインスタンス40aのクラスタ識別子の属性値を、仮想マシン配置制御部150に入力して、仮想マシンインスタンス40aに対するポジション識別子の払出を要求する。資源操作部130は、仮想マシンインスタンス40bのクラスタ識別子の属性値を、仮想マシン配置制御部150に入力して、仮想マシンインスタンス40bに対するポジション識別子の払出を要求する。
仮想マシン配置制御部150は、資源操作部130からポジション識別子の払出要求を取得した場合には、ポジション識別子を資源操作部130に通知する処理部である。仮想マシン配置制御部150は、複数のポジション識別子の払出要求を取得した場合には、各払出要求と共に取得するクラスタ識別子を比較する。仮想マシン配置制御部150は、各クラスタ識別子の属性値が同一である場合には、それぞれ異なるポジション識別子を、資源操作部130に通知する。
例えば、仮想マシン配置制御部150が、資源操作部130から、仮想マシンインスタンス40aおよび仮想マシンインスタンス40bに対するポジション識別子の払出要求を取得し、クラスタ識別子「仮想マシンC−1」を取得した場合について説明する。この場合には、仮想マシン配置制御部150は、仮想マシンインスタンス40aに対するポジション識別子「物理サーバ1−1」を資源操作部130に通知し、仮想マシンインスタンス40bに対するポジション識別子「物理サーバN−N」を資源操作部130に通知する。資源操作部130は、仮想マシンインスタンス40aのポジション識別子の属性値に「物理サーバ1−1」を設定する。資源操作部130は、仮想マシンインスタンス40bのポジション識別子の属性値に「物理サーバN−N」を設定する。
なお、仮想マシン配置制御部150は、仮想マシンを配置可能なポジション識別子のリストを保持しているものとする。
図8の説明に戻る。ステップS106において、資源操作部130は、クラスタ識別子が存在しない場合には(ステップS106,No)、仮想マシンインスタンスに対するポジション識別子の払出を仮想マシン配置制御部150に要求し、ポジション識別子を取得し、ポジション識別子を仮想マシンインスタンスに設定する(ステップS109)。
資源操作部130は、仮想マシンインスタンスを参照し、指定されたポジション識別子で、仮想マシンを起動する(ステップS110)。例えば、資源操作部130は、ポジション識別子と、物理サーバ20との関係を保持しており、係る関係を基にして、仮想マシンを物理サーバ20上(物理サーバ20上で起動する仮想マシンサーバ上)で起動させる。
次に、資源操作部130が、資源SPI「停止()」を受け付けた場合の処理について説明する。この場合には、資源操作部130は、仮想マシンクラスタの状態と、この仮想マシンクラスタに所属する仮想マシンの状態を、起動中の状態から割当済の状態に遷移させる。例えば、資源操作部130は、物理サーバ20上で動作している仮想マシンを停止させる。
次に、本実施形態に係るプロビジョニング装置100の効果について説明する。プロビジョニング装置100は、仮想マシンクラスタを定義して、同一のクラスタに所属する仮想マシンを同一の仮想マシンクラスタに接続し、同一のクラスタに所属する各仮想マシンに同一のクラスタ識別子を設定する。そして、プロビジョニング装置100は、各仮想マシンに設定されたクラスタ識別子を基にして、クラスタ識別子が同一となる仮想マシンを、異なる仮想マシンサーバで起動させる。このため、プロビジョニング装置100によれば、同一のクラスタに所属する仮想マシンを、同一の仮想マシンサーバに配置することを防止できる。
また、本実施形態に係るプロビジョニング装置100によれば、クラスタ構成を組む複数の仮想マシンを一括で作成することが可能となり、物理環境によるクラスタシステムと同等の冗長性を実現する仮想環境によるクラスタシステムについて、効率的なプロビジョニングを実行することができる。
また、本実施形態に係るプロビジョニング装置100によれば、仮想マシンクラスタテンプレート30および各仮想マシンテンプレート30a、30bにポートを設定したため、同一の仮想マシンクラスタに所属する仮想マシンを接続定義情報31によって定義することが可能となる。
ところで、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部あるいは一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
例えば、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合することができる。一例を挙げると、資源操作部130、接続設定部140、仮想マシン配置制御部150を一つの制御部として統合しても良い。
次に、実施形態に示したプロビジョニング装置100と同様の機能を実現する制御プログラムを実行するコンピュータの一例を説明する。図9は、開示の技術に係る制御プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。図9に例示するように、コンピュータ200は、例えば、メモリ201と、CPU(Central Processing Unit)202と、ハードディスクドライブインタフェース203と、ディスクドライブインタフェース204と、シリアルポートインタフェース205と、ビデオアダプタ206と、ネットワークインタフェース207とを有し、これらの各部はバス208によって接続される。
メモリ201は、図9に例示するように、ROM(Read Only Memory)201a及びRAM(Random Access Memory)201bを含む。ROM201aは、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース203は、図9に例示するように、ハードディスクドライブ203aに接続される。ディスクドライブインタフェース204は、図9に例示するように、ディスクドライブ204aに接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ204aに挿入される。シリアルポートインタフェース205は、図9に例示するように、例えばマウス205a、キーボード205bに接続される。ビデオアダプタ206は、図9に例示するように、例えばディスプレイ206aに接続される。
ここで、図9に例示するように、ハードディスクドライブ203aは、例えば、OS(Operating System)1、アプリケーションプログラム2、プログラムモジュール3、プログラムデータ4を記憶する。すなわち、開示の技術に係る制御プログラムは、コンピュータ200によって実行される指令が記述されたプログラムモジュール3として、例えばハードディスクドライブ203aに記憶される。具体的には、上記実施形態で説明した資源操作部130、接続設定部140、仮想マシン配置制御部150に対応する情報処理を実行する接続処理手順、配置処理手順が記述されたプログラムモジュール3が、ハードディスクドライブ203aに記憶される。また、上記実施形態で説明した記憶部110に記憶されるデータのように、制御プログラムによる情報処理に用いられるデータは、プログラムデータ4として、例えばハードディスクドライブ203aに記憶される。そして、CPU202が、ハードディスクドライブ203aに記憶されたプログラムモジュール3やプログラムデータ4を必要に応じてRAM201bに読み出し、接続処理手順、配置処理手順を実行する。
なお、制御プログラムに係るプログラムモジュール3やプログラムデータ4は、ハードディスクドライブ203aに記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU202によって読み出されてもよい。あるいは、制御プログラムに係るプログラムモジュール3やプログラムデータ4は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース207を介してCPU202によって読み出されてもよい。
1 OS
2 アプリケーションプログラム
3 プログラムモジュール
4 プログラムデータ
5 コンピュータネットワーク
10 操作端末
20 物理サーバ
30 仮想マシンクラスタテンプレート
30a、30b 仮想マシンテンプレート
31 接続定義情報
40 仮想マシンクラスタインスタンス
40a、40b 仮想マシンインスタンス
41 コネクタインスタンス
100 プロビジョニング装置
110 記憶部
110a クラスタテンプレート情報
110b インスタンス情報
120 通信部
130 資源操作部
140 接続設定部
150 仮想マシン配置制御部
200 コンピュータ
201 メモリ
201a ROM
201b RAM
202 CPU
203 ハードディスクドライブインタフェース
203a ハードディスクドライブ
204 ディスクドライブインタフェース
204a ディスクドライブ
205 シリアルポートインタフェース
205a マウス
205b キーボード
206 ビデオアダプタ
206a ディスプレイ
207 ネットワークインタフェース
208 バス

Claims (3)

  1. 複数の仮想マシンの資源を定義する複数の仮想マシン定義情報と、前記複数の仮想マシンに接続される仮想マシンクラスタの資源を定義する仮想マシンクラスタ定義情報と、同一のクラスタに所属する複数の仮想マシンと前記仮想マシンクラスタとの接続関係を定義する接続定義情報とを記憶する記憶部と、
    操作部から作成の指示を受け付けた場合に、前記仮想マシン定義情報および前記仮想マシンクラスタ定義情報を基にして、仮想マシンの資源および仮想マシンクラスタの資源を生成し、前記接続定義情報を基にして、同一のクラスタに所属する複数の仮想マシンの資源、および該複数の仮想マシンと接続関係にある前記仮想マシンクラスタの資源に、同一のクラスタ識別子を設定するインスタンス情報を生成する接続処理部と、
    前記操作部から割り当ての指示を受け付けた場合に、前記生成されたインスタンス情報に基づいて、前記クラスタ識別子が同一となる仮想マシンの資源を、異なる仮想マシンサーバに配置する配置処理部とを有し、
    前記仮想マシン定義情報は、前記仮想マシンのポートを定義した情報を含み、
    前記仮想マシンクラスタ定義情報は、前記仮想マシンクラスタの資源に接続される仮想マシンの資源の数に応じたポートを定義した情報を含み、
    前記接続定義情報は、前記仮想マシン定義情報のポートおよび前記仮想マシンクラスタ定義情報のポートを用いて複数の仮想マシンと前記仮想マシンクラスタとの接続関係を定義する情報であり、
    前記接続処理部は、前記接続定義情報に定義された前記仮想マシンクラスタの資源のポートと前記仮想マシンの資源のポートとの接続関係を基にして、前記仮想マシンクラスタの資源のポートと仮想マシンの資源のポートとを接続し、同一の仮想マシンクラスタに接続された仮想マシンの資源を、同一のクラスタに所属する仮想マシンの資源であると判定して前記インスタンス情報を生成することを特徴とする制御装置。
  2. 接続処理部と、配置処理部とを有する制御装置で実行される制御方法であって、
    前記接続処理部が、複数の仮想マシンの資源を定義する複数の仮想マシン定義情報と、前記複数の仮想マシンに接続される仮想マシンクラスタの資源を定義する仮想マシンクラスタ定義情報と、同一のクラスタに所属する複数の仮想マシンと前記仮想マシンクラスタとの接続関係を定義する接続定義情報とを記憶する記憶部を参照し、
    操作部から作成の指示を受け付けた場合に、前記仮想マシン定義情報および前記仮想マシンクラスタ定義情報を基にして、仮想マシンの資源および仮想マシンクラスタの資源を生成し、前記接続定義情報を基にして、同一のクラスタに所属する複数の仮想マシンの資源、および該複数の仮想マシンと接続関係にある前記仮想マシンクラスタの資源に、同一のクラスタ識別子を設定するインスタンス情報を生成する接続処理工程と、
    前記配置処理部が、前記操作部から割り当ての指示を受け付けた場合に、前記生成されたインスタンス情報に基づいて、前記クラスタ識別子が同一となる仮想マシンの資源を、異なる仮想マシンサーバに配置する配置処理工程とを含み、
    前記記憶部に記憶された前記仮想マシン定義情報は、前記仮想マシンのポートを定義した情報を含み、
    前記仮想マシンクラスタ定義情報は、前記仮想マシンクラスタの資源に接続される仮想マシンの資源の数に応じたポートを定義した情報を含み、
    前記接続定義情報は、前記仮想マシン定義情報のポートおよび前記仮想マシンクラスタ定義情報のポートを用いて複数の仮想マシンと前記仮想マシンクラスタとの接続関係を定義する情報であり、
    前記接続処理工程は、前記接続定義情報に定義された前記仮想マシンクラスタの資源のポートと前記仮想マシンの資源のポートとの接続関係を基にして、前記仮想マシンクラスタの資源のポートと仮想マシンの資源のポートとを接続し、同一の仮想マシンクラスタに接続された仮想マシンの資源を、同一のクラスタに所属する仮想マシンの資源であると判定して前記インスタンス情報を生成することを特徴とする制御方法。
  3. 接続処理部と、配置処理部とを有するコンピュータに、前記接続処理部が、操作部から作成の指示を受け付けた場合に、複数の仮想マシンの資源を定義する複数の仮想マシン定義情報と、前記複数の仮想マシンに接続される仮想マシンクラスタの資源を定義する仮想マシンクラスタ定義情報と、同一のクラスタに所属する複数の仮想マシンと前記仮想マシンクラスタとの接続関係を定義する接続定義情報とを記憶する記憶部を参照し、前記仮想マシン定義情報および前記仮想マシンクラスタ定義情報を基にして、仮想マシンの資源および仮想マシンクラスタの資源を生成し、前記接続定義情報を基にして、同一のクラスタに所属する複数の仮想マシンの資源、および該複数の仮想マシンと接続関係にある前記仮想マシンクラスタの資源に、同一のクラスタ識別子を設定するインスタンス情報を生成する接続処理ステップと、
    前記配置処理部が、前記操作部から割り当ての指示を受け付けた場合に、前記生成されたインスタンス情報に基づいて、前記クラスタ識別子が同一となる仮想マシンの資源を、異なる仮想マシンサーバに配置する配置処理ステップとを実行させ、
    前記記憶部に記憶された前記仮想マシン定義情報は、前記仮想マシンのポートを定義した情報を含み、
    前記仮想マシンクラスタ定義情報は、前記仮想マシンクラスタの資源に接続される仮想マシンの資源の数に応じたポートを定義した情報を含み、
    前記接続定義情報は、前記仮想マシン定義情報のポートおよび前記仮想マシンクラスタ定義情報のポートを用いて複数の仮想マシンと前記仮想マシンクラスタとの接続関係を定義する情報であり、
    前記接続処理ステップは、前記接続定義情報に定義された前記仮想マシンクラスタの資源のポートと前記仮想マシンの資源のポートとの接続関係を基にして、前記仮想マシンクラスタの資源のポートと仮想マシンの資源のポートとを接続し、同一の仮想マシンクラスタに接続された仮想マシンの資源を、同一のクラスタに所属する仮想マシンの資源であると判定して前記インスタンス情報を生成することを特徴とする制御プログラム。
JP2012131843A 2012-06-11 2012-06-11 制御装置、制御方法および制御プログラム Active JP5492253B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012131843A JP5492253B2 (ja) 2012-06-11 2012-06-11 制御装置、制御方法および制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012131843A JP5492253B2 (ja) 2012-06-11 2012-06-11 制御装置、制御方法および制御プログラム

Publications (2)

Publication Number Publication Date
JP2013257626A JP2013257626A (ja) 2013-12-26
JP5492253B2 true JP5492253B2 (ja) 2014-05-14

Family

ID=49954043

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012131843A Active JP5492253B2 (ja) 2012-06-11 2012-06-11 制御装置、制御方法および制御プログラム

Country Status (1)

Country Link
JP (1) JP5492253B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017182591A (ja) * 2016-03-31 2017-10-05 三菱電機インフォメーションシステムズ株式会社 コンピュータ資源配分決定方法、コンピュータ資源配分決定方法プログラムおよび制御用コンピュータ

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4119162B2 (ja) * 2002-05-15 2008-07-16 株式会社日立製作所 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
JP5368907B2 (ja) * 2009-08-10 2013-12-18 株式会社エヌ・ティ・ティ・データ サーバ管理システム、サーバ管理方法、及びプログラム
JP5717164B2 (ja) * 2009-10-07 2015-05-13 日本電気株式会社 コンピュータシステム、及びコンピュータシステムのメンテナンス方法
JP5282046B2 (ja) * 2010-01-05 2013-09-04 株式会社日立製作所 計算機システム及びその可用化方法
JP2012018556A (ja) * 2010-07-08 2012-01-26 Hitachi Ltd 計算機システム及び計算機システムの系切替制御方法
US9208029B2 (en) * 2010-11-12 2015-12-08 Hitachi, Ltd. Computer system to switch logical group of virtual computers

Also Published As

Publication number Publication date
JP2013257626A (ja) 2013-12-26

Similar Documents

Publication Publication Date Title
US11714671B2 (en) Creating virtual machine groups based on request
US9999030B2 (en) Resource provisioning method
CN110324164B (zh) 一种网络切片的部署方法及装置
US10700947B2 (en) Life cycle management method and device for network service
JP6771650B2 (ja) クラウドコンピューティングシステムにおいて仮想マシンが物理サーバにアクセスするための方法、装置、およびシステム
CN111385114B (zh) Vnf服务实例化方法及装置
US9450783B2 (en) Abstracting cloud management
JP6658882B2 (ja) 制御装置、vnf配置先選択方法及びプログラム
US20140207921A1 (en) Computer system and configuration management method therefor
CN105553741A (zh) 一种基于云计算的应用系统自动化部署方法
TW201232415A (en) Integration of heterogeneous computing systems into a hybrid computing system
EP3442201B1 (en) Cloud platform construction method and cloud platform
WO2014101475A1 (zh) 云平台应用部署方法及装置
US10761869B2 (en) Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type
CN108089913A (zh) 一种超融合系统的虚拟机部署方法
EP3629160B1 (en) Method and device for managing vnf instantiation
US8995424B2 (en) Network infrastructure provisioning with automated channel assignment
JP5719378B2 (ja) コンピュータ・アーキテクチャのプラグ・アンド・プレイ方式のサポートのための方法及びシステム
JP5492253B2 (ja) 制御装置、制御方法および制御プログラム
JP2015103094A (ja) 仮想リソース管理装置、選択方法及び選択プログラム
CN111045778B (zh) 一种虚拟机的创建方法、装置、服务器及存储介质
WO2020077585A1 (zh) Vnf服务实例化方法及装置
NL2027692B1 (en) Pre-provisioning server hardware for deployment on an edge network
WO2014148142A1 (ja) クラウド向け計算機システム

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140228

R150 Certificate of patent or registration of utility model

Ref document number: 5492253

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150