JP2015072532A - プロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラム - Google Patents

プロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラム Download PDF

Info

Publication number
JP2015072532A
JP2015072532A JP2013206921A JP2013206921A JP2015072532A JP 2015072532 A JP2015072532 A JP 2015072532A JP 2013206921 A JP2013206921 A JP 2013206921A JP 2013206921 A JP2013206921 A JP 2013206921A JP 2015072532 A JP2015072532 A JP 2015072532A
Authority
JP
Japan
Prior art keywords
rule
computer
subsystem
manager
computers
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.)
Pending
Application number
JP2013206921A
Other languages
English (en)
Inventor
賢一 妹尾
Kenichi Senoo
賢一 妹尾
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2013206921A priority Critical patent/JP2015072532A/ja
Publication of JP2015072532A publication Critical patent/JP2015072532A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】新たなコンピュータが追加あるいは削除された場合にも、各サブシステムのワークフローを容易に更新することを可能とするプロビジョニングシステム等を提供する。
【解決手段】プロビジョニングシステム1は、多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、各コンピュータのうちの一部がサブシステム2a、2b、…を構成しているネットワークに、新規のコンピュータをサブシステムに追加するプロビジョニングシステムであって、サブシステムに属する各コンピュータを管理するマネージャ装置3a、3b、…がコンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログ4aを予め記憶し、当該ルールを各コンピュータに配布するルールリポジトリ装置4を含む。
【選択図】図1

Description

本発明はプロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラムに関し、特に新たなコンピュータの追加あるいは削除を容易に可能とするプロビジョニングシステム等に関する。
プロビジョニングとは、コンピュータ資源を事前に用意し、必要に応じてこれを割り当てて迅速にサービスの提供を行うことをいう。特に近年は、クラウドコンピューティングや仮想コンピューティングが発達したことにより、多数の物理コンピュータや仮想コンピュータを一つの大規模な分散システムとして構築することも多く行われるようになってきている。
そのようなシステムの中で、たとえばウェブサーバやアプリケーションサーバなどのような特定の機能を持つコンピュータにおいて負荷が大きくなった場合に、それと同等の構成と性能を持ったコンピュータに同一の機能を割り当てて動作させるプロビジョニングが行われる。当該システムのほんの一部であっても、障害が発生した場合の社会的な影響は大きいので、負荷の増大や障害発生に迅速に対応するプロビジョニングはますます重要になっている。
そのような大規模な分散システムは、起動時にも、当該システムを構成する各装置をただ単純に起動すればよいというものではなく、当該システム内における装置間の依存関係を意識した順番で起動制御する必要がある。そのために利用されているのが、オーケストレーションソフトウェアと呼ばれる大規模ネットワーク管理用ソフトウェアである。オーケストレーションソフトウェアが動作するネットワーク管理装置は、装置間の依存関係や制御順序をあらかじめワークフローとして定義しており、これに従って各装置に起動や設定などの制御指示を発する。
これに関連する技術として、次の各々がある。その中でも特許文献1には、仮想プライベートデータセンターを複数の物理的データセンターのクラウドネットワーク上に提供するという技術が記載されている。特許文献2には、ブロードキャストチャネルを利用して複数の端末のソフトウェアをアップグレードするという技術が記載されている。特許文献3には、各業務への要求リソース量に応じてサーバとストレージとの組み合わせを決定するという計算機システムが記載されている。
特許文献4には、予め定義されたポリシーに従って仮想マシンを選択し、そこにプログラムを配置して実行させるという技術が記載されている。特許文献5には、サービスファイル提供サーバからサービス提供サーバにアプリケーションなどのファイルを配布して実行させるという技術が記載されている。非特許文献1は、前述の「プロビジョニング」という用語の説明である。非特許文献2は、プロビジョニングと前述の「オーケストレーションソフトウェア」についての既存技術の一例である。
特開2012−084129号公報 特表2009−516467号公報 国際公開WO2011/070803号 特開2011−095871号公報 特開2005−316680号公報
@IT情報マネジメント編集部、「情報システム用語事典:プロビジョニング」、平成18年6月18日、[平成25年4月24日検索]、アイティメディア(株)、インターネット<URL:http://www.itmedia.co.jp/im/articles/0606/18/news005.html> NetApp、Vishwas H V、「ストレージ・プロビジョニングとオーケストレーション・ソフトウェアの統合」、平成22年7月、[平成25年4月24日検索]、NetApp Inc,.
大規模な分散システムにおいては、たとえばウェブサーバ、アプリケーションサーバ、データベースサーバ、ロードバランサなど、当該システムの中で特定の役割を果たす装置も、もはや1台のコンピュータ装置のみでその役割をまかないきれるものではない。そのため、同一の役割を果たす複数の装置がサブシステムと呼ばれるグループを構成していることが一般的である。
その場合、たとえば複数台のウェブサーバがウェブサーバグループというサブシステムを構成し、そのうちの1台がウェブサーバマネージャとして、当該サブシステム内でのワークフローを定義して、同一サブシステムに属する他のウェブサーバの動作を統括管理している。他のアプリケーションサーバ、データベースサーバ、ロードバランサ、…などについても同様である。
そのようなシステムにおいて、たとえばウェブサーバに対する処理負荷が増大していることが検出された場合に、新規にウェブサーバを構築してこれをウェブサーバグループに加入させて、その処理負荷を軽減することは容易に考えられる。
しかしながら、ウェブサーバはウェブサーバ単体で機能しているのではない。アプリケーションサーバ、データベースサーバ、ロードバランサなど、他のサブシステムと連携しながら動作する必要がある。また前述のように他の装置あるいは他のサブシステムとの間で複雑な依存関係が定義されている。
上記のウェブサーバグループに新規にウェブサーバを追加するという例を一つとっても、その影響はウェブサーバグループのみにとどまるものではなく、分散システム全体に波及するものである。特に、ウェブサーバグループ以外のサブシステムにおいても、ウェブサーバが新規に追加されたことに対応して、当該サブシステムのワークフローを更新することが必要となる。
ところが、このワークフローの更新を容易に可能とする技術は前述の特許文献1〜5および非特許文献1〜2には記載されていない。特に分散システムの規模が大きくなればなるほど、設定されるルールも複雑になり、1台のコンピュータのみでこれを判断するのは負荷がかかり過ぎて困難なものとなるが、前述の各文献に記載の技術はいずれも、この点に対応するものではない。
本発明の目的は、複数のサブシステムからなる分散システムで、当該サブシステムの構成要素として新たなコンピュータが追加あるいは削除された場合にも、各サブシステムのワークフローを容易に更新することを可能とするプロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラムを提供することにある。
上記目的を達成するため、本発明に係るプロビジョニングシステムは、多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規のコンピュータをサブシステムに追加するプロビジョニングシステムであって、サブシステムに属する各コンピュータを管理するマネージャ装置がコンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを予め記憶し、当該ルールを各コンピュータに配布するルールリポジトリ装置を含むこと、を特徴とする。
上記目的を達成するため、本発明に係るルールリポジトリ装置は、多数の仮想コンピュータもしくは物理コンピュータが相互に接続されたネットワークに接続されたルールリポジトリ装置であって、サブシステムに属する各コンピュータを管理するマネージャ装置がコンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを予め記憶した記憶手段と、当該ルールを各コンピュータに配布するルール配送手段とを有すること、を特徴とする。
上記目的を達成するため、本発明に係るマネージャ装置は、多数の仮想コンピュータもしくは物理コンピュータと、コンピュータを新規追加する際に必要な動作をルールとして定義して当該ルールを各コンピュータに配布するルールリポジトリ装置とが相互に接続されたネットワークで、サブシステムに属する各コンピュータを管理するマネージャ装置であって、ルールリポジトリ装置からブロードキャスト配送されたルールを受信した場合に、当該ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶するルール受信手段と、記憶されたルールに基づいてコンピュータを新規追加する際に必要な動作を実行するルール適用手段とを有すること、を特徴とする。
上記目的を達成するため、本発明に係るプロビジョニング方法は、多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規のコンピュータをサブシステムに追加するプロビジョニングシステムにあって、サブシステムに属する各コンピュータを管理するマネージャ装置がコンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを、予め記憶すると共に、当該ルールを各コンピュータに配布する機能を備えたルールリポジトリ装置が、ネットワークに接続されており、ルールリポジトリ装置のルール変更検出手段が、ルールカタログに含まれるルールに変更があるか否かを定期的に検出し、ルールに変更があることが検出された場合に、ルールリポジトリ装置のルール配送手段が当該ルールをネットワーク全体に対してブロードキャスト配送すること、を特徴とする。
上記目的を達成するため、本発明に係るプロビジョニングプログラムは、多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規のコンピュータをサブシステムに追加するプロビジョニングシステムにあって、サブシステムに属する各コンピュータを管理するマネージャ装置がコンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを、予め記憶すると共に、当該ルールを各コンピュータに配布する機能を備えたルールリポジトリ装置が、ネットワークに接続されており、ルールリポジトリ装置が備えるプロセッサに、ルールカタログに含まれるルールに変更があるか否かを定期的に検出する手順、およびルールに変更があることが検出された場合に、当該ルールをネットワーク全体に対してブロードキャスト配送する手順を実行させること、を特徴とする。
本発明は、上記したようにルールリポジトリ装置が各マネージャ装置に必要な動作をルールとして配布するよう構成したので、各マネージャ装置はこのルールに基づいて自律的に動作することができる。これによって、新たなコンピュータが追加あるいは削除された場合にも、各サブシステムのワークフローを容易に更新することが可能であるという、優れた特徴を持つプロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラムを提供することができる。
本発明の基本形態に係るプロビジョニングシステムの構成について示す説明図である。 本発明の実施形態に係るプロビジョニングシステムの構成について示す説明図である。 図2に示したルールリポジトリ装置の内部構成について示す説明図である。 図2に示したマネージャ装置の構成について示す説明図である。 図3に示したルールカタログの内容の一例について示す説明図である。 図2に示したプロビジョニングシステムで、ウェブサーバグループに新たにウェブサーバを追加する場合の動作について示すフローチャートである。 図2に示したプロビジョニングシステムで図6に示した動作を行う際に、各マネージャ装置が自らの動作について判断する際に行う動作について示すフローチャートである。 図2に示したプロビジョニングシステムで、ルールリポジトリ装置に記憶されたルールカタログに何らかの変更(追加、削除などを含む)があった場合の動作について示すフローチャートである。 図2に示したプロビジョニングシステムで、図6に示した動作で追加されたウェブサーバを削除する場合の動作について示すフローチャートである。
(基本形態)
以下、本発明の基本形態の構成について添付図1に基づいて説明する。
基本形態に係るプロビジョニングシステム1は、多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、各コンピュータのうちの一部がサブシステム2a、2b、…を構成しているネットワークに、新規のコンピュータをサブシステムに追加するプロビジョニングシステムであって、サブシステムに属する各コンピュータを管理するマネージャ装置3a、3b、…がコンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログ4aを予め記憶し、当該ルールを各コンピュータに配布するルールリポジトリ装置4を含む。
これら各装置のより詳細な構成は、次の実施形態として説明する。
(実施形態)
続いて、本発明の実施形態の構成について添付図2に基づいて説明する。
本実施形態に係るプロビジョニングシステム10は、多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、各コンピュータのうちの一部がサブシステム(30、40、50、60)を構成しているネットワーク(仮想通信路90)に、新規のコンピュータをサブシステムに追加するプロビジョニングシステムであって、サブシステムに属する各コンピュータを管理するマネージャ装置(ウェブサーバマネージャ31、アプリケーションサーバマネージャ41、データベースサーバマネージャ51、ロードバランサマネージャ61)がコンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログ103を予め記憶し、当該ルールを各コンピュータに配布するルールリポジトリ装置71を含む。
また、ルールリポジトリ装置71が、ルールカタログ103を予め記憶した記憶手段71bと、ルールカタログに含まれるルールに変更があるか否かを定期的に検出するルール変更検出手段101と、ルールに変更があることが検出された場合に当該ルールをネットワーク全体に対してブロードキャスト配送するルール配送手段102とを有する。
そして各マネージャ装置(ウェブサーバマネージャ31等)は、ブロードキャスト配送されたルールを受信した場合に、ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段31bに記憶するルール受信手段151と、記憶されたルールに基づいてコンピュータを新規追加する際に必要な動作を実行するルール適用手段152とを有する。さらに、コンピュータを削除する際に、マネージャ装置は当該コンピュータの追加時に設定変更を行った装置に対して当該設定を削除するよう要求する機能を有する。
以上の構成を備えることにより、このプロビジョニングシステム10は、新たなコンピュータが追加あるいは削除された場合にも、各サブシステムのワークフローを容易に更新することが可能なものとなる。
以下、これをより詳細に説明する。
図2は、本発明の実施形態に係るプロビジョニングシステム10の構成について示す説明図である。プロビジョニングシステム10は、単数もしくは複数のコンピュータの計算機資源上に、仮想コンピュータとこれに付随する仮想ネットワーク機器、仮想通信路などを生成して動作させる仮想化基盤11(ハイパーバイザ)を備える。この仮想化基盤11(ハイパーバイザ)は、物理ネットワーク21を介して接続された監視制御端末20からの動作指令によって、多数の仮想コンピュータを生成して動作させる。
この仮想化基盤11上で動作する仮想コンピュータは、機能に応じて複数のグループに分かれる。以後、それらのグループをサブシステムという。本実施形態では、ウェブサーバグループ30、アプリケーションサーバグループ40、データベースサーバグループ50、およびロードバランサグループ60という4つのサブシステムが存在するものとする。
ウェブサーバグループ30は、当該グループに属する各仮想コンピュータを一括して制御するウェブサーバマネージャ31と、単数または複数のウェブサーバ32a、32b、…とで構成される。これと同様に、アプリケーションサーバグループ40はアプリケーションサーバマネージャ41と、単数または複数のアプリケーションサーバ42a、42b、…とで構成される。
データベースサーバグループ50も、データベースサーバマネージャ51と、単数または複数のデータベースサーバ52a、52b、…とで構成される。ロードバランサグループ60も、ロードバランサマネージャ61と、単数または複数のロードバランサ62a、…とで構成される。
これらの各サブシステムの機能「ウェブサーバ」「アプリケーションサーバ」「データベースサーバ」「ロードバランサ」は一例に過ぎないものである。これらの機能を持ったサブシステムが全て揃っている必要はもちろんないし、これら以外の機能を持ったサブシステムがあってももちろんよい。
また、各サブシステムに属する複数のコンピュータを一括して制御するウェブサーバマネージャ31、アプリケーションサーバマネージャ41、データベースサーバマネージャ51、およびロードバランサマネージャ61を、総称してマネージャ装置という。図2では、各サブシステムに属するに属するマネージャ装置以外のコンピュータを仮想マシンの意味で「VM」と表示している。
これらの各仮想コンピュータは、いずれも仮想通信路90に接続されている。仮想通信路90はさらに、後述の仮想マシンマネージャ70、ルールリポジトリ装置71、モニタ装置72、および性能監視マネージャ73といった各仮想コンピュータにも接続されている。また、監視制御端末20を含む物理ネットワーク21とも接続されている。性能監視マネージャ73は、各仮想コンピュータの性能情報を検出して、これを監視制御端末20に出力する。
仮想マシンマネージャ70は、監視制御端末20や他の仮想コンピュータからの要求に基づいて、仮想コンピュータを生成および削除する。また、必要に応じて仮想ネットワーク機器や仮想通信路を作成することもできる。
たとえば、仮想通信路91は、ウェブサーバグループ30内で、ウェブサーバマネージャ31とウェブサーバ32a、32b、…の間でのメッセージ交換で使用される通信路である。また、仮想通信路92は、ロードバランサ62aとウェブサーバ32aとの間に設けられた専用通信路である。このように、異なるサブシステムに属して異なる役目を担う仮想コンピュータであっても、専用通信路が必要になるケースも発生しうる。仮想マシンマネージャ70は、そのような場合に対応することも可能である。
ルールリポジトリ装置71は、プロビジョニングシステム10上で動作する各仮想コンピュータの動作に必要となる動作ルールを記憶しており、各仮想コンピュータからの要求に応じて、該当するルールを当該コンピュータに返送する。
図3は、図2に示したルールリポジトリ装置71の内部構成について示す説明図である。前述のように、ルールリポジトリ装置71は仮想コンピュータの一つであるが、物理コンピュータによって構成されてもよい。それらいずれの場合も、ルールリポジトリ装置71はコンピュータ装置としての基本的な構成を仮想的もしくは物理的に備えている。即ち、ルールリポジトリ装置71は、コンピュータプログラムの実施主体であるプロセッサ71aと、プログラムおよびデータを記憶する記憶手段71bとを備える。
プロセッサ71aは、ルール配送プログラムの動作により、ルール変更検出手段101、およびルール配送手段102として機能する。そして記憶手段71bには、プロビジョニングシステム10上で動作する全仮想コンピュータの動作に必要なルールを一括して定義するルールカタログ103が記憶されている。
図4は、図2に示したマネージャ装置の構成について示す説明図である。図4にはウェブサーバマネージャ31の構成について示しているが、アプリケーションサーバマネージャ41、データベースサーバマネージャ51、およびロードバランサマネージャ61の構成もこれと同様である。
ウェブサーバマネージャ31も、図3に示したルールリポジトリ装置71と同様のプロセッサ31aと記憶手段31bとを備える。プロセッサ31aは、ルール配送プログラムの動作により、ルール受信手段151、およびルール適用手段152として動作する。記憶手段31bは、ルール受信手段151が受信したサブシステム用ルール153が記憶されている。
図5は、図3に示したルールカタログ103の内容の一例について示す説明図である。ルールカタログ103は、メッセージID103a、サブシステムID103b、ルール103c、リビジョン103dといった各データ項目を含む。これ以外のデータ項目が含まれていてももちろんよい。
メッセージID103aは、各サブシステム間で交換されるメッセージに一意に付与される識別子であり、当該サブシステムの状態遷移における状態を示すものである。サブシステムID103bは、当該メッセージの対象となるサブシステムを一意に示す識別子である。たとえばウェブサーバグループ30に対してはサブシステムID103b=「b38a2903-51e2-49e3-9884-0d01975149a0」である。これらメッセージID103aおよびサブシステムID103bは、典型的にはUUID(Universally Unique Identifier)として生成されるものである。
ルール103cは、当該メッセージに対する振る舞いを定義するものであり、典型的にはXML(Extensible Markup Language)、またはプロビジョニング情報交換の標準仕様としてのXMLの拡張であるSPML(Service Provisioning Markup Language)によって、インタフェース仕様、処理内容、および許容動作時間などを定義するものである。ここでいうインタフェース仕様には、引数と正常終了および異常終了の通知メッセージIDを含む。
リビジョン103dは、ルールの改訂番号を示す数値である。ルールが変更されるたびに、定められた規則に従ってこの数値が変更される。各マネージャ装置は、変更されたルールがブロードキャストされた時に、このリビジョンの数値を自らの記憶しているルールと比較して、ブロードキャストされたルールを受信して記憶処理するか否かを判断する。
以下、本実施形態では、ウェブサーバマネージャ31と、ウェブサーバ32aおよび32bとからなるウェブサーバグループ30に、新たにウェブサーバ32cを追加する際の動作について説明する。他のサブシステム(アプリケーションサーバグループ40、データベースサーバグループ50、ロードバランサグループ60)に仮想コンピュータを追加する場合も、これと同一の動作となる。
図6は、図2に示したプロビジョニングシステム10で、ウェブサーバグループ30に新たにウェブサーバ32cを追加する場合の動作について示すフローチャートである。まず、監視制御端末20から適切な要求、たとえば「ウェブサーバグループ30の負荷を軽減せよ」などのような要求が、物理ネットワーク21から仮想通信路90を通じてプロビジョニングシステム10全体にブロードキャストされる(ステップS101)。
これを受けたウェブサーバマネージャ31のルール適用手段152は、この「負荷を軽減せよ」の要求をルールと照合して、これを「新たにウェブサーバを追加する旨の要求を、仮想マシンマネージャ70に対して発する」と解釈し(ステップS102)、実際にその要求のメッセージを仮想マシンマネージャ70に対して発する(ステップS103)。プロビジョニングシステム10で、各装置の相互間での照会、要求、応答などの情報交換を総称して、メッセージという。
これを受けた仮想マシンマネージャ70のルール適用手段152は、その要求の通りにウェブサーバ32cを新たに生成し(ステップS104)、その生成が完了したことをウェブサーバマネージャ31に対して応答する(ステップS105)。仮想マシンマネージャ70はさらに、この生成されたウェブサーバ32cが業務に組み込まれることをアプリケーションサーバマネージャ41に報告する(ステップS106)。
これを受けたアプリケーションサーバマネージャ41のルール適用手段152は、生成されたウェブサーバ32cの設定に必要な情報をウェブサーバマネージャ31に対して送信する(ステップS107)。
ウェブサーバマネージャ31のルール適用手段152は、その情報をウェブサーバ32cに送付して設定に反映させることを要求し、同時にウェブサーバグループ30専用の仮想通信路91に参加することも要求するメッセージをウェブサーバ32cに送信する(ステップS108)。ウェブサーバ32cはそれらの設定を自らに反映させ、設定完了をウェブサーバマネージャ31に報告する(ステップS109)。
これを受けたウェブサーバマネージャ31のルール適用手段152は、新たなウェブサーバ32cが完成したことをプロビジョニングシステム10全体にブロードキャストする。この通知を受けたロードバランサマネージャ61および性能監視マネージャ73は、各々がウェブサーバの新規追加に対応する設定変更を行って処理完了をウェブサーバマネージャ31に通知する(ステップS110〜113)。
これを受けてウェブサーバマネージャ31のルール適用手段152は、最終的にウェブサーバ追加完了の旨を、要求元の監視制御端末20に対して送信する(ステップS114)。
以上の各動作ステップで、各要素のルール適用手段152が「この場合、どのようにふるまうか」を判断するために必要となるのが、図3および図5に示したルールカタログ103である。
たとえば、ステップS102で、ウェブサーバマネージャ31が、監視制御端末20から受けた「負荷を軽減せよ」の要求を「新たにウェブサーバを追加する旨の要求を、仮想マシンマネージャ70に対して発する」ことと解釈し、ステップS103で実際にその要求を発することも、このルールカタログ103に記載された「ルール」に基づく動作である。
また、ステップS104でウェブサーバ32cを新たに生成した仮想マシンマネージャ70が、ステップS105でその生成が完了したことをウェブサーバマネージャ31に対して応答し、さらにステップS106で生成されたウェブサーバ32cが業務に組み込まれることをアプリケーションサーバマネージャ41に報告するという動作も、その「ルール」に基づく動作である。
図7は、図2に示したプロビジョニングシステム10で図6に示した動作を行う際に、各マネージャ装置が自らの動作について判断する際に行う動作について示すフローチャートである。各マネージャ装置のルール適用手段152は、他装置からメッセージを受け取った場合(ステップS201)、そのメッセージの内容に自装置、もしくは自らの属するサブシステムに関わる内容があるか否かを判断し(ステップS202)、なければそのまま終了する。
自装置、もしくは自らの属するサブシステムに関わる内容を含むメッセージを受信した場合(ステップS202がイエス)、ルール適用手段152はどのようにふるまうかを自らの保持するサブシステム用ルール153に基づいて判断する(ステップS203)。判断できたら、そのルールの通りに処理を行って(ステップS204)処理を終了する。
判断できない場合は、自らの属するサブシステムのサブシステムID103b、および当該メッセージのメッセージID103aをルールリポジトリ装置71に送信して、対応するサブシステム用ルール153の送信を依頼し(ステップS205)、受信したサブシステム用ルール153の通りに処理を行って(ステップS204)処理を終了する。
図8は、図2に示したプロビジョニングシステム10で、ルールリポジトリ装置71に記憶されたルールカタログ103に何らかの変更(追加、削除などを含む)があった場合の動作について示すフローチャートである。ルールリポジトリ装置71のルール配送手段102は、ルールカタログ103に何らかの変更があるか否かを定期的に検出し(ステップS251)、変更がある場合にその内容をプロビジョニングシステム10全体にブロードキャスト配送する(ステップS252)。変更がなければそのまま終了する。
そのブロードキャストされた内容を受信した各マネージャ装置のルール受信手段151は、自らのサブシステムID103bに該当する内容がそこに含まれているか否かについて判定し(ステップS253)、含まれていればその内容を受信してサブシステム用ルール153として記憶して処理を終了する(ステップS254)。含まれていなければそのまま終了する。
このようにして、各装置が自らのサブシステムに該当するルールを記憶して、ルール適用手段152が図7に記載した判断の動作を行うのである。
図2に示したモニタ装置72は、プロビジョニングシステム10内で交換されるメッセージの内容を取得して、当該システムの構成変更の状況を把握する。モニタ装置72は、仮想通信路90だけでなく、仮想通信路91あるいは92で交換されるメッセージも取得可能であり、またブロードキャストされたメッセージだけでなく、特定の要素間のメッセージも取得可能である。モニタ装置72は、状況の変更を取得した際には、その内容を監視制御端末20などに適宜出力する。
図9は、図2に示したプロビジョニングシステム10で、図6に示した動作で追加されたウェブサーバ32cを削除する場合の動作について示すフローチャートである。監視制御端末20から「ウェブサーバ32cを削除せよ」などのような要求がプロビジョニングシステム10全体にブロードキャストされる(ステップS301)。
この要求を受けたウェブサーバマネージャ31のルール適用手段152は、図6のステップS110〜113で性能監視マネージャ73およびロードバランサマネージャ61にウェブサーバ32cについての設定変更がされたことを把握しているので、性能監視マネージャ73およびロードバランサマネージャ61に対してウェブサーバ32cについての設定を削除するよう要求し、性能監視マネージャ73およびロードバランサマネージャ61はこれに応じて各々設定変更を行い、処理完了をウェブサーバマネージャ31に通知する(ステップS302〜305)。
これを受けたウェブサーバマネージャ31のルール適用手段152は、他にウェブサーバ32cについての設定が残っているサーバが存在するか否かをプロビジョニングシステム10全体にブロードキャストで問い合わせ、あれば当該サーバからの削除処理完了を待ち合わせて(ステップS306〜307)ステップS308に進む。なければそのままステップS308に進む。
そしてウェブサーバマネージャ31のルール適用手段152は、仮想マシンマネージャ70に対してウェブサーバ32cに対して要求するようメッセージを発する(ステップS308)。ここで仮想マシンマネージャ70は、ウェブサーバ32cを削除する前に、削除時のディスク保存ポリシーなど、定められたポリシーに従って確認処理などを行ってもよい。
削除が完了したら(ステップS309)、ここで仮想マシンマネージャ70はウェブサーバマネージャ31に対して削除完了を通知し(ステップS310)、これを受けてウェブサーバマネージャ31のルール適用手段152は、最終的にウェブサーバ削除完了の旨を、要求元の監視制御端末20に対して送信する(ステップS311)。
(実施形態の全体的な動作と効果)
次に、上記の実施形態の全体的な動作について説明する。
本実施形態に係るプロビジョニング方法は、多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規のコンピュータをサブシステムに追加するプロビジョニングシステムにあって、サブシステムに属する各コンピュータを管理するマネージャ装置がコンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを、予め記憶すると共に、当該ルールを各コンピュータに配布する機能を備えたルールリポジトリ装置が、ネットワークに接続されており、ルールリポジトリ装置のルール変更検出手段が、ルールカタログに含まれるルールに変更があるか否かを定期的に検出し(図8・ステップS251)、ルールに変更があることが検出された場合に、ルールリポジトリ装置のルール配送手段が当該ルールをネットワーク全体に対してブロードキャスト配送する(図8・ステップS252)。
また、各マネージャ装置のルール受信手段は、ブロードキャスト配送されたルールを受信した場合に、ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し(図8・ステップS253)、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶し(図8・ステップS254)、各マネージャ装置のルール適用手段が、記憶されたルールに基づいてコンピュータを新規追加する際に必要な動作を実行する。
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するルールリポジトリ装置71およびマネージャ装置31が各々備えるプロセッサ71aおよび31aに実行させるようにしてもよい。本プログラムは、非一時的な記録媒体、例えば、DVD、CD、フラッシュメモリ等に記録されてもよい。その場合、本プログラムは、記録媒体からコンピュータによって読み出され、実行される。
この動作により、本実施形態は以下のような効果を奏する。
本実施形態によれば、多くの装置が要素として関与する複雑な処理であっても、1つの装置のみで一括して判断処理する必要はない。ただルールリポジトリ装置に「ルールカタログ」としてまとめられた運用ルールを各マネージャ装置に配布すれば、各装置がそのルールに従って自律的にコンピュータを新規追加や削除などを行うことが可能となる。
この動作はコンピュータの新規追加や削除のみならず、たとえば障害発生時の対応に対しても適用することが可能である。そして、ネットワークがさらに大規模化しても、判断処理にかかる負荷が1つの装置のみに集中することはないので、ネットワークの大規模化に容易に対応できる。
(実施形態の拡張)
以上で説明した本実施形態は、本発明の趣旨を逸脱しない範囲で、種々の拡張が可能である。以下、これについて説明する。
前述したように、上記の実施形態では仮想コンピュータを追加もしくは削除する動作について説明したが、物理コンピュータにおいても同様の動作が可能である。その場合、仮想コンピュータを生成するかわりに、あらかじめマシンプールとして用意された物理コンピュータにオペレーティングシステムをインストールして設定し、動作を割り当てるとよい。
また、仮想(または物理)コンピュータを追加もしくは削除する動作以外にも、それらの各コンピュータに対するオペレーティングシステムの設定やアプリケーションソフトのインストールなどにも、本実施形態の動作を適用することができる。
そして、ネットワークがさらに大規模化した場合には、サブシステムの下にさらにサブシステムを階層的に設けて、各階層ごとにマネージャ装置を設ける構成としてもよい。ルールリポジトリ装置も1台のみとは限らず、階層ごと・サブシステムごとに設けてもよい。
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
上述した実施形態について、その新規な技術内容の要点をまとめると、以下のようになる。なお、上記実施形態の一部または全部は、新規な技術として以下のようにまとめられるが、本発明は必ずしもこれに限定されるものではない。
(付記1) 多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、前記各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規の前記コンピュータを前記サブシステムに追加するプロビジョニングシステムであって、
前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを予め記憶し、当該ルールを前記各コンピュータに配布するルールリポジトリ装置を含むこと、を特徴とするプロビジョニングシステム。
(付記2) 前記ルールリポジトリ装置が、
前記ルールカタログを予め記憶した記憶手段と、
前記ルールカタログに含まれる前記ルールに変更があるか否かを定期的に検出するルール変更検出手段と、
前記ルールに変更があることが検出された場合に当該ルールを前記ネットワーク全体に対してブロードキャスト配送するルール配送手段と
を有すること、を特徴とする付記1に記載のプロビジョニングシステム。
(付記3) 前記各マネージャ装置が、
前記ブロードキャスト配送されたルールを受信した場合に、前記ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶するルール受信手段と、
記憶された前記ルールに基づいて前記コンピュータを新規追加する際に必要な動作を実行するルール適用手段と
を有すること、を特徴とする付記2に記載のプロビジョニングシステム。
(付記4) 前記コンピュータを削除する際に、前記マネージャ装置が当該コンピュータの追加時に設定変更を行った装置に対して当該設定を削除するよう要求する機能を有すること、を特徴とする付記1に記載のプロビジョニングシステム。
(付記5) 多数の仮想コンピュータもしくは物理コンピュータが相互に接続されたネットワークに接続されたルールリポジトリ装置であって、
前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを予め記憶した記憶手段と、
当該ルールを前記各コンピュータに配布するルール配送手段と
を有すること、を特徴とするルールリポジトリ装置。
(付記6) 前記ルールカタログに含まれる前記ルールに変更があるか否かを定期的に検出するルール変更検出手段を備えると共に、
前記ルール配送手段が、前記ルールに変更があることが検出された場合に当該ルールを前記ネットワーク全体に対してブロードキャスト配送する機能を有すること、を特徴とする付記5に記載のルールリポジトリ装置。
(付記7) 多数の仮想コンピュータもしくは物理コンピュータと、前記コンピュータを新規追加する際に必要な動作をルールとして定義して当該ルールを前記各コンピュータに配布するルールリポジトリ装置とが相互に接続されたネットワークで、前記サブシステムに属する前記各コンピュータを管理するマネージャ装置であって、
前記ルールリポジトリ装置からブロードキャスト配送された前記ルールを受信した場合に、当該ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶するルール受信手段と、
記憶された前記ルールに基づいて前記コンピュータを新規追加する際に必要な動作を実行するルール適用手段と
を有すること、を特徴とするマネージャ装置。
(付記8) 多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、前記各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規の前記コンピュータを前記サブシステムに追加するプロビジョニングシステムにあって、
前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを、予め記憶すると共に、当該ルールを前記各コンピュータに配布する機能を備えたルールリポジトリ装置が、前記ネットワークに接続されており、
前記ルールリポジトリ装置のルール変更検出手段が、前記ルールカタログに含まれる前記ルールに変更があるか否かを定期的に検出し、
前記ルールに変更があることが検出された場合に、前記ルールリポジトリ装置のルール配送手段が当該ルールを前記ネットワーク全体に対してブロードキャスト配送すること、を特徴とするプロビジョニング方法。
(付記9) 前記各マネージャ装置のルール受信手段が、前記ブロードキャスト配送されたルールを受信した場合に、前記ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶し、
前記各マネージャ装置のルール適用手段が、記憶された前記ルールに基づいて前記コンピュータを新規追加する際に必要な動作を実行すること、を特徴とする付記8に記載のプロビジョニング方法。
(付記10) 多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、前記各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規の前記コンピュータを前記サブシステムに追加するプロビジョニングシステムにあって、
前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを、予め記憶すると共に、当該ルールを前記各コンピュータに配布する機能を備えたルールリポジトリ装置が、前記ネットワークに接続されており、
前記ルールリポジトリ装置が備えるプロセッサに、
前記ルールカタログに含まれる前記ルールに変更があるか否かを定期的に検出する手順、
および前記ルールに変更があることが検出された場合に、当該ルールを前記ネットワーク全体に対してブロードキャスト配送する手順
を実行させること、を特徴とするプロビジョニングプログラム。
(付記11) 多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、前記各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規の前記コンピュータを前記サブシステムに追加するプロビジョニングシステムにあって、
前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを予め記憶し、当該ルールを前記各コンピュータに配布するルールリポジトリ装置が前記ネットワークに接続されていると共に、
前記マネージャ装置が備えるプロセッサに、
前記ルールリポジトリ装置からブロードキャスト配送されたルールを受信した場合に、前記ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶する手順、
および記憶された前記ルールに基づいて前記コンピュータを新規追加する際に必要な動作を実行する手順
を実行させること、を特徴とするプロビジョニングプログラム。
本発明はコンピュータネットワークの運用および管理に適用可能である。特にそのネットワークが大規模であればあるほど有用である。そのネットワークが物理的なものか仮想的なものであるかは問わない。
1、10 プロビジョニングシステム
2a、2b サブシステム
3a、3b マネージャ装置
4、71 ルールリポジトリ装置
4a、103 ルールカタログ
11 仮想化基盤
20 監視制御端末
21 物理ネットワーク
30 ウェブサーバグループ
31 ウェブサーバマネージャ
31a、71a プロセッサ
31b、71b 記憶手段
32a、32b、32c ウェブサーバ
40 アプリケーションサーバグループ
41 アプリケーションサーバマネージャ
42a、42b アプリケーションサーバ
50 データベースサーバグループ
51 データベースサーバマネージャ
52a、52b データベースサーバ
60 ロードバランサグループ
61 ロードバランサマネージャ
62a ロードバランサ
70 仮想マシンマネージャ
72 モニタ装置
73 性能監視マネージャ
90、91、92 仮想通信路
101 ルール変更検出手段
102 ルール配送手段
151 ルール受信手段
152 ルール適用手段
153 サブシステム用ルール

Claims (10)

  1. 多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、前記各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規の前記コンピュータを前記サブシステムに追加するプロビジョニングシステムであって、
    前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを予め記憶し、当該ルールを前記各コンピュータに配布するルールリポジトリ装置を含むこと、を特徴とするプロビジョニングシステム。
  2. 前記ルールリポジトリ装置が、
    前記ルールカタログを予め記憶した記憶手段と、
    前記ルールカタログに含まれる前記ルールに変更があるか否かを定期的に検出するルール変更検出手段と、
    前記ルールに変更があることが検出された場合に当該ルールを前記ネットワーク全体に対してブロードキャスト配送するルール配送手段と
    を有すること、を特徴とする請求項1に記載のプロビジョニングシステム。
  3. 前記各マネージャ装置が、
    前記ブロードキャスト配送されたルールを受信した場合に、前記ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶するルール受信手段と、
    記憶された前記ルールに基づいて前記コンピュータを新規追加する際に必要な動作を実行するルール適用手段と
    を有すること、を特徴とする請求項2に記載のプロビジョニングシステム。
  4. 前記コンピュータを削除する際に、前記マネージャ装置が当該コンピュータの追加時に設定変更を行った装置に対して当該設定を削除するよう要求する機能を有すること、を特徴とする請求項1に記載のプロビジョニングシステム。
  5. 多数の仮想コンピュータもしくは物理コンピュータが相互に接続されたネットワークに接続されたルールリポジトリ装置であって、
    前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを予め記憶した記憶手段と、
    当該ルールを前記各コンピュータに配布するルール配送手段と
    を有すること、を特徴とするルールリポジトリ装置。
  6. 前記ルールカタログに含まれる前記ルールに変更があるか否かを定期的に検出するルール変更検出手段を備えると共に、
    前記ルール配送手段が、前記ルールに変更があることが検出された場合に当該ルールを前記ネットワーク全体に対してブロードキャスト配送する機能を有すること、を特徴とする請求項5に記載のルールリポジトリ装置。
  7. 多数の仮想コンピュータもしくは物理コンピュータと、前記コンピュータを新規追加する際に必要な動作をルールとして定義して当該ルールを前記各コンピュータに配布するルールリポジトリ装置とが相互に接続されたネットワークで、前記サブシステムに属する前記各コンピュータを管理するマネージャ装置であって、
    前記ルールリポジトリ装置からブロードキャスト配送された前記ルールを受信した場合に、当該ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶するルール受信手段と、
    記憶された前記ルールに基づいて前記コンピュータを新規追加する際に必要な動作を実行するルール適用手段と
    を有すること、を特徴とするマネージャ装置。
  8. 多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、前記各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規の前記コンピュータを前記サブシステムに追加するプロビジョニングシステムにあって、
    前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを、予め記憶すると共に、当該ルールを前記各コンピュータに配布する機能を備えたルールリポジトリ装置が、前記ネットワークに接続されており、
    前記ルールリポジトリ装置のルール変更検出手段が、前記ルールカタログに含まれる前記ルールに変更があるか否かを定期的に検出し、
    前記ルールに変更があることが検出された場合に、前記ルールリポジトリ装置のルール配送手段が当該ルールを前記ネットワーク全体に対してブロードキャスト配送すること、を特徴とするプロビジョニング方法。
  9. 前記各マネージャ装置のルール受信手段が、前記ブロードキャスト配送されたルールを受信した場合に、前記ルールの中に自らのサブシステムに該当する内容があるか否かについて判断し、該当する内容がある場合に当該ルールを受信して備えられた記憶手段に記憶し、
    前記各マネージャ装置のルール適用手段が、記憶された前記ルールに基づいて前記コンピュータを新規追加する際に必要な動作を実行すること、を特徴とする請求項8に記載のプロビジョニング方法。
  10. 多数の仮想コンピュータもしくは物理コンピュータが相互に接続され、前記各コンピュータのうちの一部がサブシステムを構成しているネットワークに、新規の前記コンピュータを前記サブシステムに追加するプロビジョニングシステムにあって、
    前記サブシステムに属する前記各コンピュータを管理するマネージャ装置が前記コンピュータを新規追加する際に必要な動作をルールとして定義したルールカタログを、予め記憶すると共に、当該ルールを前記各コンピュータに配布する機能を備えたルールリポジトリ装置が、前記ネットワークに接続されており、
    前記ルールリポジトリ装置が備えるプロセッサに、
    前記ルールカタログに含まれる前記ルールに変更があるか否かを定期的に検出する手順、
    および前記ルールに変更があることが検出された場合に、当該ルールを前記ネットワーク全体に対してブロードキャスト配送する手順
    を実行させること、を特徴とするプロビジョニングプログラム。
JP2013206921A 2013-10-02 2013-10-02 プロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラム Pending JP2015072532A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013206921A JP2015072532A (ja) 2013-10-02 2013-10-02 プロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013206921A JP2015072532A (ja) 2013-10-02 2013-10-02 プロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2015072532A true JP2015072532A (ja) 2015-04-16

Family

ID=53014872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013206921A Pending JP2015072532A (ja) 2013-10-02 2013-10-02 プロビジョニングシステム、ルールリポジトリ装置、マネージャ装置、プロビジョニング方法およびプログラム

Country Status (1)

Country Link
JP (1) JP2015072532A (ja)

Similar Documents

Publication Publication Date Title
US10713071B2 (en) Method and apparatus for network function virtualization
US10819701B2 (en) Autonomous secrets management for a managed service identity
US10713183B2 (en) Virtual machine backup using snapshots and current configuration
US7921189B2 (en) Single virtual client for multiple client access and equivalency
US7124133B2 (en) Remote access program, remote access request-processing program, and client computer
US8386501B2 (en) Dynamically splitting multi-tenant databases
CN102291416B (zh) 一种客户端与服务器端双向同步的方法及系统
US8799453B2 (en) Managing networks and machines for an online service
US9990238B2 (en) Event notification
US10691790B2 (en) Autonomous secrets management for a temporary shared access signature service
US20080243993A1 (en) System for generic service management in a distributed and dynamic resource environment, providing constant service access to users
EP3766203B1 (en) Autonomous secrets renewal and distribution
US20120284709A1 (en) Dynamic virtual machine domain configuration and virtual machine relocation management
US20150186228A1 (en) Managing nodes in a distributed computing environment
US20120278344A1 (en) Proximity grids for an in-memory data grid
CN108023939B (zh) 分布式系统中锁服务器故障的处理方法及其系统
CN108551399B (zh) 一种云环境下服务的部署方法、系统及相关装置
SG189389A1 (en) Web service patterns for globally distributed service fabric
US20130325885A1 (en) Provisioning composite applications using a hierarchical data structures
SG189890A1 (en) Routing traffic in an online service with high availability
US20120102484A1 (en) Installing software remotely using a high privilege process
JP2023504469A (ja) ノード管理方法、装置、機器、記憶媒体及びシステム
US10474696B2 (en) Replication groups for content libraries
CN104516744A (zh) 软件更新方法及系统
US11416220B2 (en) Provisioning composite applications using secure parameter access