JP2021047561A - リソース使用量予測装置、リソース使用量予測方法 - Google Patents

リソース使用量予測装置、リソース使用量予測方法 Download PDF

Info

Publication number
JP2021047561A
JP2021047561A JP2019168996A JP2019168996A JP2021047561A JP 2021047561 A JP2021047561 A JP 2021047561A JP 2019168996 A JP2019168996 A JP 2019168996A JP 2019168996 A JP2019168996 A JP 2019168996A JP 2021047561 A JP2021047561 A JP 2021047561A
Authority
JP
Japan
Prior art keywords
resource usage
virtual machine
comparison
time change
correlation coefficient
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
JP2019168996A
Other languages
English (en)
Inventor
善水 柴田
Yoshimizu Shibata
善水 柴田
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2019168996A priority Critical patent/JP2021047561A/ja
Publication of JP2021047561A publication Critical patent/JP2021047561A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】仮想化環境におけるリソースの使用量を効率よく高い精度で予測する。【解決手段】リソース使用量予測装置は、仮想化環境における仮想マシンのリソース使用量の時間変化を記憶し、リソース使用量の予測対象である比較元の仮想マシンのリソース使用量の時間変化と、比較先の仮想マシンのリソース使用量の時間変化との間の相関係数を求め、相関係数が予め設定した閾値を超える比較先の仮想マシンのリソース使用量の時間変化に基づき、比較元の仮想マシンのリソース使用量の予測値を生成する。またリソース使用量予測装置は、仮想マシンの夫々が接続する通信ネットワークの構成を示す情報を記憶し、比較元の仮想マシンが接続する通信ネットワークと構成が共通する通信ネットワークに接続する仮想マシンを前記比較先の仮想マシンとして選出する。【選択図】図3

Description

本発明は、リソース使用量予測装置、リソース使用量予測方法に関する。
特許文献1には、仮想化環境(仮想サーバ)のリソースを効率的に利用することを目的として構成された情報処理システムが記載されている。仮想化環境リソース管理構成変更システムは、仮想化環境の仮想サーバのリソース利用状況を収集し、リソース予約状況を更新し、リソース予約状況を確認し構成変更の情報を登録し、構成変更のスケジューリング及び実行を行い、仮想化環境の過去のリソースの使用率と、仮想サーバのリソース予約状況とを用いて、仮想化環境のリソース空き量を予測し、当該予測値を含む情報を登録してリソース予約状況を更新し、上記予測値を含む情報を用いて、構成変更のための空きがある場合は当該構成変更を可能と判断する。情報処理システムは、仮想サーバに対して割り当てられたリソース量の和(M)と、仮想サーバのリソースの使用量の和(N)とから仮想サーバのリソースの割当値に対する平均使用率(P=N÷M)を算出し、平均使用率(P)と、仮想サーバのリソースの予約値の和(Q)とから仮想サーバのリソースの使用量の予測値(R=P×Q)を算出する。
特開2012−160045号公報
特許文献1では、仮想サーバのリソースの使用量の予測に際し、予測対象である仮想サーバのリソースの割当値に対する平均使用率(P)を用いている。そのため、例えば、リソースの使用量が極端に高い期間やリソースの使用量が極端に低い期間が含まれている場合には十分な予測精度が得られない可能性がある。
本発明はこのような背景に鑑みてなされたものであり、仮想化環境におけるリソースの使用量を効率よく高い精度で予測することが可能な、リソース使用量予測装置、リソース使用量予測方法を提供することを目的とする。
上記目的を達成するための本発明の一つは、仮想化環境におけるリソースの使用量を予測する情報処理装置(リソース使用量予測装置)であって、仮想化環境における仮想マシンのリソース使用量の時間変化を記憶し、リソース使用量の予測対象である比較元の仮想マシンのリソース使用量の時間変化と、比較先の仮想マシンのリソース使用量の時間変化との間の相関係数を求め、前記相関係数が予め設定した閾値を超える前記比較先の仮想マシンのリソース使用量の時間変化に基づき、前記比較元の仮想マシンのリソース使用量の予測値を生成する。
その他、本願が開示する課題、およびその解決方法は、発明を実施するための形態の欄、および図面により明らかにされる。
本発明によれば、仮想化環境におけるリソースの使用量を効率よく高い精度で予測することができる。
一実施形態として示す情報処理システムの概略的な構成を示す図である。 仮想化環境、ユーザ装置、予測装置、及び管理装置の構成に用いる情報処理装置の一例を示すブロック図である。 予測装置が備える主な機能を説明する図である。 リソース使用量管理TBLの一例である。 仮想マシン構成情報TBLの一例である。 相関係数TBLの一例である。 相関係数の算出方法、並びにリソース使用量の時間変化の予測方法を説明する図である。 リソース使用量取得処理を説明するフローチャートである。 外れ値判定処理を説明するフローチャートである。 予測使用量生成処理を説明するフローチャートである。 相関係数算出処理を説明するフローチャートである。 予測使用量算出処理を説明するフローチャートである。
以下、実施形態について図面を参照しつつ説明する。以下の説明において、同一の又は類似する機能を有する構成について同一の符号を付すことにより重複した説明を省略することがある。また同一の構成について付した同一の符号に添え字を付して各構成を区別することがある。また以下の説明において、符号の前に付した「S」の文字は処理ステップを意味する。また以下の説明において、データベースのテーブルのことを「TBL」と表記することがある。
図1に、本発明の一実施形態として説明する情報処理システム1の概略的な構成を示している。同図に示すように、情報処理システム1は、仮想マシン21を実現する仮想化環境200、ユーザ装置4、仮想化環境200におけるリソースの使用量(以下、「リソース使用量」と称する。)の予測装置(以下、「予測装置100」と称する。)、及び管理装置2を含んで構成されている。これらはいずれも情報処理装置(コンピュータ)を用いて構成されている。
管理装置2と予測装置100は、通信ネットワーク51を介して通信可能に接続されている。予測装置100は、通信ネットワーク52を介して仮想化環境200と通信可能に接続されている。仮想化環境200には、仮想マシン21を利用する一つ以上のユーザ装置4が通信ネットワーク53を介して通信可能に接続する。
通信ネットワーク51〜53は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネット、イントラネット、専用線等であり、有線方式又は
無線方式の通信基盤を用いて構成される。尚、本例では、セキュリティの観点から通信ネットワーク51〜53を独立させているが、通信ネットワーク51〜53の一つ以上を共通としてもよい。
仮想化環境200におけるハイパーバイザ22は、情報処理資源(以下、「リソース30」と称する)を用いて一つ以上の仮想マシン21を実現するソフトウェアである。リソース30は、仮想化環境200を構成する情報処理装置が備えるものでもよいし、仮想化環境200とは別体の装置(例えば、ストレージ装置、NAS(Network Attached Storage)等)によって提供されるものでもよい。
仮想マシン21の一つである仮想マシン21aは、仮想化環境200の管理のための各
種情報処理を行う。仮想マシン21aは、例えば、仮想化環境200において実現される仮想マシン21のリソース使用量に関する情報の取得や予測装置100への各種情報の提供を行う。尚、仮想マシン21aの機能を物理マシンによって実現してもよい。本実施形態では、このように仮想化環境200が、ハイパーバイザ型として実現される場合を例として説明するが、仮想化環境200は、いわゆるゲストOSを稼動させるホストOS型として実現されるものでもよい。また仮想化環境200は、コンテナ仮想化等の他の仮想化技術を用いて実現されるものでもよい。
予測装置100は、仮想マシン21aから仮想マシン21のリソース使用量に関する情報を取得し、取得した情報に基づき仮想化環境200において実現される仮想マシン21のリソース使用量を予測する。また予測装置100は、各仮想マシン21のリソース使用量に基づき、仮想化環境200の全体におけるリソース使用量の予測値を求める。予測装置100は、例えば、リソースの種類(CPU、メモリ、ストレージ等)毎にリソース使用量を予測する。
予測装置100が予測したリソース使用量は、通信ネットワーク51を介して管理装置2に送信される。管理装置2は、送られてくるリソース使用量や当該リソース使用量に基づき仮想化環境200の全体におけるリソース使用量の予測値等の各種の情報を出力(表示等)する。
図2は、仮想化環境200、ユーザ装置4、予測装置100、及び管理装置2の構成に用いる情報処理装置の一例を示すブロック図である。同図に示すように、例示する情報処理装置10は、プロセッサ11、主記憶装置12、補助記憶装置13、入力装置14、出力装置15、および通信装置16を備える。尚、情報処理装置10は、例えば、クラウドシステム(Cloud System)により提供されるクラウドサーバ(Cloud Server)のように仮想的な情報処理資源を用いて実現されるものであってもよい。また仮想化環境200、ユーザ装置4、予測装置100、及び管理装置2は、いずれも複数の情報処理装置10を用いて構成してもよい。
プロセッサ11は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、FPGA(Field Programmable
Gate Array)、ASIC(Application Specific Integrated Circuit)、AI(Artificial Intelligence)チップ等を用いて構成されている。
主記憶装置12は、プログラムやデータを記憶する装置であり、例えば、ROM(Read
Only Memory)、RAM(Random Access Memory)、不揮発性メモリ(NVRAM(Non Volatile RAM))等である。
補助記憶装置13は、例えば、SSD(Solid State Drive)、ハードディスクドライ
ブ、光学式記憶装置(CD(Compact Disc)、DVD(Digital Versatile Disc)等)、ストレージシステム、ICカード、SDカードや光学式記録媒体等の記録媒体の読取/書込装置、クラウドサーバの記憶領域等である。補助記憶装置13には、記録媒体の読取装置や通信装置16を介してプログラムやデータを読み込むことができる。補助記憶装置13に格納(記憶)されているプログラムやデータは主記憶装置12に随時読み込まれる。
入力装置14は、外部からの入力を受け付けるインタフェースであり、例えば、キーボード、マウス、タッチパネル、カードリーダ、音声入力装置等である。
出力装置15は、処理経過や処理結果等の各種情報を出力するインタフェースである。出力装置15は、例えば、上記の各種情報を可視化する表示装置(液晶モニタ、LCD(
Liquid Crystal Display)、グラフィックカード等)、上記の各種情報を音声化する装置(音声出力装置(スピーカ等))、上記の各種情報を文字化する装置(印字装置等)である。尚、例えば、情報処理装置10が通信装置16を介して他の装置との間で情報の入力や出力を行う構成としてもよい。
通信装置16は、他の装置との間の通信を実現する装置である。通信装置16は、通信ネットワーク5を介した他の装置との間の通信を実現する、有線方式または無線方式の通信インタフェースであり、例えば、NIC(Network Interface Card)、無線通信モジュール、USBモジュール、シリアル通信モジュール等である。
仮想化環境200、ユーザ装置4、予測装置100、及び管理装置2の夫々が備える機能は、プロセッサ11が、主記憶装置12に格納されているプログラムを読み出して実行することにより、もしくは、夫々を構成するハードウェア(FPGA、ASIC、AIチップ等)によって実現される。情報処理装置10には、例えば、オペレーティングシステム、デバイスドライバ、ファイルシステム、DBMS(DataBase Management System)等が導入されていてもよい。
図3は、予測装置100が備える主な機能を説明する図である。同図に示すように、予測装置100は、記憶部110、リソース使用量取得部120、外れ値判定部130、比較対象選出部140、相関係数算出部150、予測使用量算出部160、及び予測結果出力部170の各機能を備える。
記憶部110は、リソース使用量管理TBL111、仮想マシン構成情報TBL112、相関係数TBL113、及び予測使用量114を記憶する。尚、記憶部110は、例えば、DBMSが提供するデータベースのテーブルや、ファイルシステムが提供するファイルとして、これらの情報(データ)を記憶する。
リソース使用量取得部120は、通信ネットワーク52を介して、仮想マシン21aから、仮想化環境200において実現されている仮想マシン21の夫々のリソース使用量の実績値(仮想マシン21aの実績値は含んでもよいし含まなくてもよい)を取得してリソース使用量管理TBL111に記憶する。
図4にリソース使用量管理TBL111の一例を示す。リソース使用量管理TBL111には、仮想化環境200におけるリソース使用量の実績値と予測値とが管理される。
同図に示すように、リソース使用量管理TBL111は、日時1111、仮想マシンID1112、リソース使用量1113、及び外れ値フラグ1114の各項目を含む一つ以上のレコードを含んで構成される。リソース使用量管理TBL111のレコードの一つは、一つの仮想マシン21のある日時におけるリソース使用量の実績値または予測値の一つに対応する。尚、予測値のレコードの日時が到来してリソース使用量の実績値が取得された場合、例えば、当該レコードは削除されるか、もしくは実績値の内容に更新される。
日時1111には、リソース使用量の実績値が取得された日時(以下、「実績日時」と称する)、またはリソース使用量の予測対象の日時(以下、「予測日時」と称する。)が設定される。仮想マシンID1112には、仮想マシンの識別子である仮想マシンIDが設定される。
リソース使用量1113には、当該仮想マシン21の当該日時(実績日時または予測日時)におけるリソース使用量の実績値または予測値が設定される。尚、同図には、リソースの種類として、CPU割当数、CPU使用量、メモリ割当量、メモリ使用量を例示して
いるが、リソースの種類は必ずしも限定されない。
外れ値フラグ1114には、当該リソース使用量が外れ値であるか否かを示す値(以下、「外れ値フラグ」と称する)が設定される。本実施形態では、当該リソース使用量が外れ値である場合は外れ値フラグ1114に「1」が設定され、当該リソース使用量が外れ値でない場合は外れ値フラグ1114に「0」が設定されるものとする。
図3に戻り、外れ値判定部130は、所定期間(例えば、1日間(0時〜24時)にお
けるリソース使用量の時間変化(回帰分析等の統計処理に基づく時間変化)に基づきリソース使用量の夫々が外れ値か否かを判定し、その結果を外れ値フラグ1114に設定する。リソース使用量が外れ値か否かの判定は、例えば、k近傍法や、指数加重移動平均から
移動標準偏差を求める方法等により行う。
比較対象選出部140は、後述するリソース使用量の時間変化の相関係数の算出において比較元となる仮想マシン21と比較先となる仮想マシン21とを選出する。比較対象選出部140は、仮想マシン構成情報TBL112に登録されている各仮想マシン21を比較元として順次選択する。また比較対象選出部140は、仮想マシン構成情報TBL112に登録されている仮想マシン21のうち、仮想マシン21の構成に関する条件(以下、「構成条件」と称する。)と、仮想マシン21の過去の使用実績等について予め設定された条件(以下、「選出条件」と称する。)を課すことにより、比較先とする仮想マシン21を選出する。
上記の構成条件は、例えば、仮想マシン21がおかれている環境が共通するか否か(例えば、接続している通信ネットワークがインターネットに接続しているか否か(DMZ(DeMilitarized Zone)環境か否か等))を指標とする条件である。また上記の選出条件は、例えば、仮想マシン21の使用実績が一年以上であるか否かを指標とする条件である。
図5に仮想マシン構成情報TBL112の一例を示す。仮想マシン構成情報TBL112には、仮想化環境200において現在実現されているもしくは過去に実現された仮想マシン21の構成に関する情報(以下、「構成情報」と称する。)が管理される。同図に示すように、仮想マシン構成情報TBL112は、仮想マシンID1121、状態1122、及び構成情報1123の各項目を有する一つ以上のレコードで構成される。仮想マシン構成情報TBL112の一つのレコードは一つの仮想マシン21に対応している。
仮想マシンID1121には、仮想化環境200において仮想化環境200において現在実現されているもしくは過去に実現された仮想マシン21の仮想マシンIDが設定される。
状態1122には、当該仮想マシン21が現在実現中であるか否かを示す情報が設定される。本実施形態では、当該仮想マシン21が現在実現中であれば「実現中」が、当該仮想マシン21が現在実現中でなければ「−」が設定されるものとする。
構成情報1123には、当該仮想マシン21の構成情報が設定される。同図には、仮想マシン21の接続先の通信ネットワークの識別子、接続先の通信ネットワークが外部接続可能(インターネット等の不特定多数がアクセス可能)なタイプか否かを示情報を構成情報として例示している。
図3に戻り、相関係数算出部150は、比較元として選出した仮想マシン21のリソース使用量の所定期間における時間変化の実績値と、比較先として選出した仮想マシン21のリソース使用量の上記所定期間における時間変化の実績値との相関係数を求め、求めた
相関係数を相関係数TBL113に設定する。上記所定期間(以下、「比較対象期間」とも称する。)は、比較元として選出した仮想マシン21のリソース使用量の実績値が取得されている期間内の期間である。本実施形態では、相関係数は、ピアソンの積率相関係数であるものとするが、相関係数の種類は必ずしも限定されない。
図6に相関係数TBL113の一例を示す。同図に示すように、相関係数TBL113は、比較元開始日1131、比較元終了日1132、除外期間適用フラグ1133、比較元仮想マシンID1134、比較先開始日1135、比較先終了日1136、比較先仮想マシンID1137、相関係数1138、及び登録更新日時1139の各項目を有する複数のレコードを含んで構成される。相関係数TBL113のレコードの一つは、一つの比較元と一つの比較先の組に対応している。
比較元開始日1131には、比較元の仮想マシン21のリソース使用量の比較対象期間の開始日(以下、「比較元開始日」と称する。)が設定される。比較元終了日1132には、比較元の仮想マシン21のリソース使用量の比較対象期間の終了日(以下、「比較元終了日」と称する。)が設定される。
除外期間適用フラグ1133には、当該レコードの比較元と比較先のリソース使用量の時間変化を比較する際、ユーザ等により除外対象として設定されている期間(以下、「除外期間」と称する。)を除外したか否かを示す値(以下、「除外期間適用フラグ」と称する。)が設定される。本実施形態では、上記比較に際し除外期間を除外した場合、除外期間適用フラグ1133に「1」が設定され、上記比較に際し除外期間を除外していない場合、除外期間適用フラグ1133に「0」が設定されるものとする。
上記の除外期間は、例えば、仮想マシン21がユーザにサービスを提供していない期間(例えば、ウィルス対策ソフトのウィルススキャン処理等が実行されている期間等、システムの保守や保全が行われている時間)である。このように比較元や比較先について設定された除外期間を除外して相関係数を求めることで、比較元のリソース使用量の予測精度を高めることができる。尚、例えば、仮想化環境200が複数の地域のユーザに仮想マシン21を提供している場合、除外期間はユーザが存在する地域毎に個別に設定されるものであってもよい。
比較元仮想マシンID1134には、比較元の仮想マシン21の仮想マシンIDが設定される。
比較先開始日1135には、比較先の仮想マシン21のリソース使用量の比較対象期間の開始日(以下、「比較先開始日」と称する。)が設定される。比較先終了日1136には、比較先の仮想マシン21のリソース使用量の比較対象期間の終了日(以下、「比較先終了日」と称する。)が設定される。尚、比較元の比較対象期間と比較先の比較対象期間は、例えば、両者を同じ月とする等、相関係数が高くなるようにされる。
比較先仮想マシンID1137には、比較先の仮想マシン21の仮想マシンIDが設定される。
相関係数1138には、比較元と比較先のリソース使用量の時間変化の実績値について求めた相関係数が設定される。
登録更新日時1139には、当該レコードが登録又は直近に更新された日時が設定される。
図3に戻り、予測使用量算出部160は、比較元の各仮想マシン21について、比較先の仮想マシン21のリソース使用量の時間変化の実績値を用いてリソース使用量の時間変化を予測し、予測したリソース使用量の時間変化を予測使用量114として記憶する。
図7は、相関係数算出部150による相関係数の算出方法、並びに予測使用量算出部160によるリソース使用量の時間変化の予測方法を説明する図である。図7(a)は、比較先の仮想マシン21のリソース使用量の時間変化の実績値(2017年度)であり、図7(b)は、比較先の仮想マシン21((a)と同じ仮想マシン21)のリソース使用量の時間変化の実績値(2018年度)であり、図7(c)は、比較元のリソース使用量の時間変化の実績値(2019年4月1日〜3月31日)と予測値(2019年5月1日〜2020年3月31日)である。
本例では、比較元のリソース使用量の時間変化の実績値が存在する期間である4月1日〜4月30日の期間を比較対象期間としている。本例では、予測使用量算出部160は、比較先の仮想マシン21のリソース使用量の時間変化の2つの実績値(図7(a)、(b))のうち、上記比較対象期間における相関が高い実績値(図7(b))を用いて、比較元の2019年5月1日〜2020年3月31日の期間のリソース使用量の時間変化を予測している。具体的には、図7(b)の2018年5月1日〜2019年3月31日までのリソース使用量の時間変化の実績値をスケール変換(リソース使用量の値をN(>0)倍)した値を、比較元の2019年5月1日〜2020年3月31日までのリソース使用量の時間変化としている。このようにスケール変換を行うことで、例えば、システム規模の異なる比較先の仮想マシン21のリソース使用量を利用して比較元の仮想マシン21のリソース使用量を予測することができる。
図3に戻り、予測結果出力部170は、予測使用量算出部160が予測した結果(予測使用量114)に基づく情報を各種の情報を生成して管理装置2に送信する。本例では、予測結果出力部170は、予測使用量114に基づく情報を視覚化した画像(例えば、図7(c)のグラフ)を生成して管理装置2に送信する。また予測結果出力部170は、各仮想マシン21について予測した予測使用量114を合算して、仮想化環境200全体でのリソース使用量の予測値を生成して管理装置2に送信する。
続いて、予測装置100が行う処理について順に説明する。
図8は、リソース使用量取得部120が行う処理(以下、「リソース使用量取得処理S800」と称する。)を説明するフローチャートである。リソース使用量取得部120は、例えば、予め設定されたタイミング(毎日一回等)が到来したことを契機として、リソース使用量取得処理S800を実行する。またリソース使用量取得部120は、例えば、管理用の仮想マシン21aから、仮想マシン21の生成や消滅の通知や、仮想マシン21へのリソースの追加や削減が行われた旨の通知を受信したことを契機として、リソース使用量取得処理S800を実行する。以下、同図とともにリソース使用量取得処理S800について説明する。
まずリソース使用量取得部120は、通信ネットワーク52を介して管理用の仮想マシン21aと通信し、仮想化環境200において現在実現されている各仮想マシン21のリソース使用量を取得する(S811)。
続いて、リソース使用量取得部120は、取得した各仮想マシン21のリソース使用量をリソース使用量管理TBL111に格納する(S812)。このようにしてリソース使用量管理TBL111には各仮想マシン21のリソース使用量の実績値が蓄積されていく。
図9は、外れ値判定部130が行う処理(以下、「外れ値判定処理S900」と称する。)を説明するフローチャートである。外れ値判定部130は、例えば、予め設定されたタイミング(毎日一回等)が到来したことや、リソース使用量管理TBL111が更新されたことを契機として外れ値判定処理S900を実行する。以下、同図とともに外れ値判定処理S900について説明する。
まず外れ値判定部130は、リソース使用量管理テーブル111に格納されている各仮想マシン21のリソース使用量の実績値の夫々について、所定期間のリソース使用量の時間変化に基づき外れ値であるか否かを判定する(S911)。
続いて、外れ値判定部130は、判定結果をリソース使用量管理テーブル111に反映する(外れ値フラグ1114に判定結果に応じた値を設定する)(S912)。
図10は、予測装置100が、仮想化環境200におけるリソース使用量の予測値を求めてユーザに提供する際に行う処理(以下、「予測使用量生成処理S1000」と称する。)を説明するフローチャートである。予測装置100は、例えば、予め設定されたタイミング(毎日一回等)が到来したことや、管理装置2を介してユーザから予測使用量を出力する旨の指示を受けたことを契機として予測使用量生成処理S1000を実行する。
まず予測装置100の比較対象選出部140が、通信ネットワーク52を介して、仮想マシン21aから仮想化環境200において現在実現されている仮想マシン21の構成情報を取得し、取得した構成情報を仮想マシン構成情報TBL112に格納する(S1011)。
続いて、比較対象選出部140は、仮想マシン構成情報TBL112から、現在実現中の(状態1122に「稼働中」が設定されている)仮想マシン21を比較元として一つ選択する(S1012)。
続いて、比較対象選出部140は、仮想マシン構成情報TBL112から、構成条件を満たす仮想マシン21を比較先の候補として一つ以上選出する(S1013)。このように比較先の候補の選出に際し構成条件を課すのは、構成が共通する仮想マシン21のリソース使用量の実績値を用いることで、比較元のリソース使用量の予測精度の向上が期待できるからである。
続いて、比較対象選出部140は、S1013で選出した仮想マシン21がゼロ(一つも選出されていない)であるか否かを判定する(S1014)。S1013で選出した仮想マシン21がゼロであれば(S1014:YES)、S1020の処理に進む。S1013で選出した仮想マシン21がゼロでなければ(S1014:NO)、S1015の処理に進む。
S1015では、比較対象選出部140は、S1013で選出した仮想マシン21の中から選出条件を満たす仮想マシン21を一つ以上選出する。このように比較先の候補の選出に際し選出条件を課すのは、比較元についてリソース使用量を予測するために十分な量の情報を取得できない仮想マシン21を比較先から除外して予測装置100の処理負荷を軽減するためである。
続いて、比較対象選出部140は、S1015で選出した仮想マシン21がゼロ(一つも選出されない)であるか否かを判定する(S1016)。S1015で選出した仮想マシン21がゼロであれば(S1016:YES)、S1020の処理に進む。S1015
で選出した仮想マシン21がゼロでなければ(S1016:NO)、S1017の処理に進む。
S1017では、S1015で比較先の候補として選出した仮想マシン21のうち、比較元との間の相関係数(相関係数TBL1138の相関係数1138の値)が高いほうから所定数(例えば10位まで)の仮想マシン21と、相関係数の値が未だ算出されていない(相関係数TBL1138の相関係数1138の値が未設定の)仮想マシン21を選出する。尚、上記の所定数は、例えば、予測装置100の処理能力に応じて増減するようにしてもよい。
S1018では、相関係数算出部150が、S1012で選択した比較元の仮想マシン21と、S1015で選出した一つ以上の比較先の仮想マシン21とを比較対象として、夫々のリソース使用量の時間変化の相関係数を算出する処理(以下、「相関係数算出処理S1018」と称する。)を実行する。相関係数算出処理S1018の詳細については後述する。
続いて、予測使用量算出部160が、比較元の各仮想マシン21について、比較先の仮想マシン21のリソース使用量の時間変化の実績値を用いてリソース使用量の時間変化を予測する処理(以下、「予測使用量算出処理S1019」と称する。)を実行する。予測使用量算出処理S1019の詳細については後述する。
続いて、比較対象選出部140が、S1012において現在実現中の全ての仮想マシン21を比較元として選択済であるか否かを判定する(S1020)。S1012において現在実現中の全ての仮想マシン21を比較元として選択済であれば(S1020:YES)、S1021の処理に進む。S1012において現在実現中の全ての仮想マシン21を比較元として選択済でなければ(S1020:NO)、S1012の処理に戻る。
S1021では、予測結果出力部170は、予測使用量算出部160が予測した結果(予測使用量114)に基づく情報を生成して管理装置2に送信する。本例では、予測結果出力部170は、予測使用量114を視覚化した画像(例えば、図7(c)に示すグラフ)を生成して管理装置2に送信する。また予測結果出力部170は、例えば、各仮想マシン21について予測した予測使用量114を合算し、仮想化環境200全体でのリソース使用量の予測結果を生成して管理装置2に送信する。
図11は、図10の相関係数算出処理S1018を説明するフローチャートである。以下、同図とともに相関係数算出処理S1018について説明する。
まず相関係数算出部150は、S1017で選出した仮想マシン21の一つを比較先として選出する(S1111)。
続いて、相関係数算出部150は、リソース使用量管理TBL111から、選択中の仮想マシン21の所定期間のリソース使用量(例えば1年単位)で選択する(S1112)。
続いて、相関係数算出部150は、比較対象期間について、比較元の仮想マシン21のリソース使用量の時間変化の実績値と、比較先の仮想マシン21のリソース使用量の時間変化の実績値とを比較することにより、両者の相関を求める(S1113)。図7の例では4月1日〜4月30日を比較対象期間としている。相関係数算出部150は、比較元又は比較先の比較対象期間のリソース使用量に外れ値が含まれている場合、当該外れ値を除外して(外れ値を除外して統計処理を行ったリソース使用量の時間変化に基づき)相関係
数を求める。このように外れ値を除外することで、リソース使用量の予測精度を高めることができる。
続いて、相関係数算出部150は、求めた相関係数を相関係数TBL113に登録する(S1114)。
続いて、相関係数算出部150は、比較元の仮想マシン21のリソース使用量の時間変化の実績値と、比較先の仮想マシン21のリソース使用量の時間変化の実績値とを比較することにより、両者の相関を求める(S1115)。図7の例では、4月1日〜4月30日を比較対象期間としている。相関係数算出部150は、比較元又は比較先の比較対象期間のリソース使用量に外れ値が含まれている場合、相関係数算出部150は、当該外れ値を除外して(外れ値を除外して統計処理を行ったリソース使用量の時間変化に基づき)相関係数を求める。また相関係数算出部150は、比較元又は比較先の比較対象期間に除外期間が含まれていれば、当該除外期間を除く期間を比較対象期間として相関係数を求める。尚、S1113の処理とS1115の処理との違いは、比較対象期間からさらに除外期間を除外している点にある。このように比較対象期間から除外期間を除外することでリソース使用量の予測精度を高めることができる。
続いて、相関係数算出部150は、求めた相関係数を相関係数TBL113に登録する(S1116)。
以上のようにして、相関係数TBL113には、S1113で求めた相関係数とS1115で求めた相関係数の双方が登録される。
続いて、相関係数算出部150は、S1112において、リソース使用量管理TBL111から選択中の仮想マシン21のリソース使用量を全ての年について選択済であるか否かを判定する(S1117)。選択中の仮想マシン21のリソース使用量を全ての年について選択済であれば(S1117:YES)、S1118の処理に進む。選択中の仮想マシン21のリソース使用量を全ての年について選択済でなければ(S1117:NO)、S1112の処理に戻る。
S1118では、相関係数算出部150は、S1111において図10のS1017で選出した仮想マシン21の全てを選択済であるか否かを判定する。S1017で選出した仮想マシン21の全てを選択済であれば(S1118:YES)、相関係数算出処理S1018は終了し、その後、処理は図10のS1019に進む。S1017で選出した仮想マシン21の全てを選択済でなければ(S1118:NO)、S1111の処理に戻る。
図12は、図10の予測使用量算出処理S1019を説明するフローチャートである。以下、同図とともに予測使用量算出処理S1019について説明する。
まず予測使用量算出部160は、相関係数TBL113において、相関係数1138の値が最大であり、かつ、値が0.2以上(弱い正の相関以上)である比較先の仮想マシン21のレコードをリソース使用量管理TBL111から抽出する(S1211)。このような条件を課してリソース使用量管理TBL111からレコードを抽出することで、リソース使用量の予測精度を高めることができる。
続いて、予測使用量算出部160は、S1211でレコードが抽出されているか否かを判定する(S1212)。S1211でレコードが抽出されていれば(S1212:NO)、図10のS1020の処理に進む。S1211でレコードが抽出されていなければ(S1212:YES)、S1213の処理に進む。
S1213では、予測使用量算出部160は、S1211で抽出したレコードの除外期間適用フラグが「1」であるか否かを判定する。S1211で抽出したレコードの除外期間適用フラグが「1」であれば(S1213:YES)、S1214の処理に進む。S1211で抽出したレコードの除外期間適用フラグが「0」でれば(S1213:NO)、S1215の処理に進む。
S1214では、予測使用量算出部160は、S1211で抽出したレコードのうち、外れ値と除外期間を除いたレコードのリソース使用量1113を用いて比率Nを求める。本実施形態では、一例として、比率Nは、比較対象期間における比較元のリソース使用量の平均値と比較先のリソース使用量の平均値の比とする。その後、処理はS1216に進む。
S1215では、予測使用量算出部160は、S1211で抽出したレコードのうち、外れ値を除いたレコードのリソース使用量1113を用いて比率Nを求める。本実施形態では、一例として、比率Nは、比較対象期間における比較元のリソース使用量の平均値と比較先のリソース使用量の平均値の比とする。その後、処理はS1216に進む。その後、処理はS1216に進む。
S1216では、予測使用量算出部160は、S1211で抽出したレコードのリソース使用量1113をN倍したリソース使用量を、比較元のリソース使用量の予測値として予測使用量114に登録する。その後、処理は図10のS1020に進む。
以上に説明したように、本実施形態の予測装置100によれば、仮想化環境200において現在実現されているもしくは過去に実現された仮想マシン21のリソース使用量の実績値を用いて、現在実現されている仮想マシン21のリソース使用量を予測することができる。そのため、例えば、新規に作成された仮想マシン21についてもリソース使用量を精度よく予測することができる。
また各仮想マシン21のリソース使用量を合算することで、仮想化環境200の全体におけるリソース使用量を予測することができる。そのため、例えば、リソース使用量の増加を予測して事前に必要な対策を講じておくことができる。
以上、本発明の一実施形態について詳細に説明したが、本発明は上記の実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上記の実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、説明した全ての構成を備えるものに必ずしも限定されるものではない。また上記実施形態の構成の一部について、他の構成の追加や削除、置換をすることが可能である。
また上記の各構成、機能部、処理部、処理手段等は、それらの一部または全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、SSD(Solid State Drive)等の記録装置、IC
カード、SDカード、DVD等の記録媒体に置くことができる。
また各図において、制御線や情報線は説明上必要と考えられるものを示しており、必ずしも実装上の全ての制御線や情報線を示しているとは限らない。例えば、実際には殆ど全ての構成が相互に接続されていると考えてもよい。
また以上に説明した各情報処理装置の各種機能部、各種処理部、各種データベースの配置形態は一例に過ぎない。各種機能部、各種処理部、各種データベースの配置形態は、これらの装置が備えるハードウェアやソフトウェアの性能、処理効率、通信効率等の観点から最適な配置形態に変更し得る。
また前述した各種のデータを格納するデータベースの構成(スキーマ(Schema)等)は、リソースの効率的な利用、処理効率向上、アクセス効率向上、検索効率向上等の観点から柔軟に変更し得る。
1 情報処理システム、2 管理装置、4 ユーザ装置、21 仮想マシン、21a 仮想マシン(管理用)、22 ハイパーバイザ、30 リソース、51〜53 通信ネットワーク、100 予測装置、110 記憶部、120 リソース使用量取得部、130 外れ値判定部、140 比較対象選出部、150 相関係数算出部、160 予測使用量算出部、170 予測結果出力部、200 仮想化環境、S800 リソース使用量取得処理、S900 外れ値判定処理、S1000 予測使用量生成処理、S1018 相関係数算出処理、S1019 予測使用量算出処理

Claims (15)

  1. 仮想化環境におけるリソースの使用量を予測する情報処理装置であって、
    仮想化環境における仮想マシンのリソース使用量の時間変化を記憶し、
    リソース使用量の予測対象である比較元の仮想マシンのリソース使用量の時間変化と、比較先の仮想マシンのリソース使用量の時間変化との間の相関係数を求め、
    前記相関係数が予め設定した閾値を超える前記比較先の仮想マシンのリソース使用量の時間変化に基づき、前記比較元の仮想マシンのリソース使用量の予測値を生成する、
    リソース使用量予測装置。
  2. 請求項1に記載のリソース使用量予測装置であって、
    前記仮想マシンの夫々が接続する通信ネットワークの構成を示す情報を記憶し、
    前記比較元の仮想マシンが接続する通信ネットワークと構成が共通する通信ネットワークに接続する仮想マシンを前記比較先の仮想マシンとして選出する、
    リソース使用量予測装置。
  3. 請求項2に記載のリソース使用量予測装置であって、
    前記比較元の仮想マシンが接続する通信ネットワークと構成が共通するか否かを、通信ネットワークがインターネットに接続可能であるか否かを指標として判定する、
    リソース使用量予測装置。
  4. 請求項1に記載のリソース使用量予測装置であって、
    前記相関係数が予め設定した閾値を超える前記比較先の仮想マシンのリソース使用量の時間変化をスケール変換することにより得られるリソース使用量の時間変化を、前記比較元の仮想マシンのリソース使用量の時間変化の予測値とする、
    リソース使用量予測装置。
  5. 請求項4に記載のリソース使用量予測装置であって、
    前記比較元の仮想マシンのリソース使用量の時間変化の所定期間における平均値と、前記比較先の仮想マシンのリソース使用量の時間変化の前記所定期間における平均値との比を用いて前記スケール変換を行う、
    リソース使用量予測装置。
  6. 請求項1に記載のリソース使用量予測装置であって、
    前記比較元又は前記比較先の仮想マシンのリソース使用量の時間変化について外れ値を求め、求めた前記外れ値を除外して前記相関係数を求める、
    リソース使用量予測装置。
  7. 請求項1に記載のリソース使用量予測装置であって、
    予め設定された除外期間を除外した期間における前記比較元の仮想マシンのリソース使用量の時間変化と、前記期間における前記比較先の仮想マシンのリソース使用量の時間変化とに基づき前記相関係数を求める、
    リソース使用量予測装置。
  8. 請求項1に記載のリソース使用量予測装置であって、
    使用実績が予め設定された期間以上である仮想マシンを前記比較先の仮想マシンとして選出する、
    リソース使用量予測装置。
  9. 請求項1に記載のリソース使用量予測装置であって、
    前記相関係数が最大の前記比較先の仮想マシンのリソース使用量の時間変化を用いて、前記比較元の仮想マシンのリソース使用量の時間変化を予測する、
    リソース使用量予測装置。
  10. 請求項1に記載のリソース使用量予測装置であって、
    前記比較元の仮想マシンのリソース使用量の時間変化の予測値を生成する、
    リソース使用量予測装置。
  11. 請求項1に記載のリソース使用量予測装置であって、
    前記仮想化環境において実現される複数の仮想マシンの夫々のリソース使用量の前記予測値に基づき、前記仮想化環境におけるリソース使用量の予測値を生成する、
    リソース使用量予測装置。
  12. 仮想化環境におけるリソースの使用量を予測する方法であって、
    情報処理装置が、
    仮想化環境における仮想マシンのリソース使用量の時間変化を記憶するステップ、
    リソース使用量の予測対象である比較元の仮想マシンのリソース使用量の時間変化と、比較先の仮想マシンのリソース使用量の時間変化との間の相関係数を求めるステップ、
    前記相関係数が予め設定した閾値を超える前記比較先の仮想マシンのリソース使用量の時間変化に基づき、前記比較元の仮想マシンのリソース使用量の予測値を生成するステップ、
    を実行する、リソース使用量予測方法。
  13. 請求項12に記載のリソース使用量予測方法であって、
    前記情報処理装置が、
    前記仮想マシンの夫々が接続する通信ネットワークの構成を示す情報を記憶するステップ、
    前記比較元の仮想マシンが接続する通信ネットワークと構成が共通する通信ネットワークに接続する仮想マシンを前記比較先の仮想マシンとして選出するステップ、
    をさらに実行する、リソース使用量予測方法。
  14. 請求項13に記載のリソース使用量予測方法であって、
    前記情報処理装置が、前記比較元の仮想マシンが接続する通信ネットワークと構成が共通するか否かを、通信ネットワークがインターネットに接続可能であるか否かを指標として判定するステップ、
    をさらに実行する、リソース使用量予測方法。
  15. 請求項12に記載のリソース使用量予測方法であって、
    前記情報処理装置が、前記相関係数が予め設定した閾値を超える前記比較先の仮想マシンのリソース使用量の時間変化をスケール変換することにより得られるリソース使用量の時間変化を、前記比較元の仮想マシンのリソース使用量の時間変化の予測値とするステップ、
    をさらに実行する、リソース使用量予測方法。
JP2019168996A 2019-09-18 2019-09-18 リソース使用量予測装置、リソース使用量予測方法 Pending JP2021047561A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019168996A JP2021047561A (ja) 2019-09-18 2019-09-18 リソース使用量予測装置、リソース使用量予測方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019168996A JP2021047561A (ja) 2019-09-18 2019-09-18 リソース使用量予測装置、リソース使用量予測方法

Publications (1)

Publication Number Publication Date
JP2021047561A true JP2021047561A (ja) 2021-03-25

Family

ID=74878466

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019168996A Pending JP2021047561A (ja) 2019-09-18 2019-09-18 リソース使用量予測装置、リソース使用量予測方法

Country Status (1)

Country Link
JP (1) JP2021047561A (ja)

Similar Documents

Publication Publication Date Title
Peng et al. Optimus: an efficient dynamic resource scheduler for deep learning clusters
US9715408B2 (en) Data-aware workload scheduling and execution in heterogeneous environments
JP5400482B2 (ja) 管理計算機、リソース管理方法、リソース管理プログラム、記録媒体および情報処理システム
JP5208585B2 (ja) 代表的なトレースを得るための命令を識別する方法、コンピュータ・プログラム及びシステム
US9563335B1 (en) Predictive approach to URL determination
JP4577384B2 (ja) 管理マシン、管理システム、管理プログラム、および、管理方法
JPWO2008102739A1 (ja) 仮想サーバシステム及び物理サーバ選択方法
JP5121936B2 (ja) リソース割り当て装置及びリソース割り当てプログラム及び記録媒体及びリソース割り当て方法
US9501313B2 (en) Resource management and allocation using history information stored in application's commit signature log
JP2010108409A (ja) ストレージ管理方法及び管理サーバ
JP5825122B2 (ja) 生成プログラム、生成方法、および生成システム
JP6533623B2 (ja) 管理計算機、性能監視方法及び計算機システム
JP6692454B2 (ja) 継続的インテグレーションシステム及びリソース制御方法
CN112948279A (zh) 管理存储系统中的访问请求的方法、设备和程序产品
JP2016024612A (ja) データ処理制御方法、データ処理制御プログラムおよびデータ処理制御装置
US10579419B2 (en) Data analysis in storage system
JP4962327B2 (ja) 分散処理プログラム、分散処理装置、および分散処理方法
US10334028B2 (en) Apparatus and method for processing data
JP5773493B2 (ja) 情報処理装置
JP5321748B2 (ja) マルチコアプロセッサシステム、スレッド制御方法、およびスレッド制御プログラム
JP5176558B2 (ja) 分散処理プログラム、分散処理装置、および分散処理方法
JP5043166B2 (ja) 計算機システム、データ検索方法及びデータベース管理計算機
JP2021047561A (ja) リソース使用量予測装置、リソース使用量予測方法
JP6842502B2 (ja) 障害解析支援システム、障害解析支援方法、及び、コンピュータプログラム
JP5472885B2 (ja) プログラム、ストリームデータ処理方法及びストリームデータ処理計算機