JP2019159646A - Vm性能保証システムおよびvm性能保証方法 - Google Patents

Vm性能保証システムおよびvm性能保証方法 Download PDF

Info

Publication number
JP2019159646A
JP2019159646A JP2018044010A JP2018044010A JP2019159646A JP 2019159646 A JP2019159646 A JP 2019159646A JP 2018044010 A JP2018044010 A JP 2018044010A JP 2018044010 A JP2018044010 A JP 2018044010A JP 2019159646 A JP2019159646 A JP 2019159646A
Authority
JP
Japan
Prior art keywords
priority group
priority
performance
physical server
vms
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.)
Granted
Application number
JP2018044010A
Other languages
English (en)
Other versions
JP6795536B2 (ja
Inventor
義人 伊藤
Yoshito Ito
義人 伊藤
信 浜田
Makoto Hamada
信 浜田
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 JP2018044010A priority Critical patent/JP6795536B2/ja
Priority to PCT/JP2019/008279 priority patent/WO2019176606A1/ja
Priority to US16/977,892 priority patent/US11886901B2/en
Publication of JP2019159646A publication Critical patent/JP2019159646A/ja
Application granted granted Critical
Publication of JP6795536B2 publication Critical patent/JP6795536B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】リソースの利用効率を高めつつ、VMの性能保証を実現することができるVM性能保証システムおよびVM性能保証方法を提供する。【解決手段】VM性能保証システムSは、物理サーバ10に、物理リソースを複数のグループに分割し、共有できるVM数が異なるように設定した優先度グループが格納される優先度グループ設定情報14が記憶される記憶部と、優先度グループの変更指示を受信し、優先度グループ設定情報14を参照し、VM1が属する優先度グループを変更する優先度グループ変更部13とを備える。また、コントローラ20に、VM1のリソース利用量に基づき算出された性能値について、性能不足および性能過多を判定し、当該VM1の優先度グループの変更指示を行う優先度変更判定部25を備える。【選択図】図6

Description

本発明は、ネットワーク仮想化技術を用いて、物理マシン上で共有されるVM(Virtual Machine:仮想マシン)の性能を保証する、VM性能保証システムおよびVM性能保証方法に関する。
物理サーバ上で複数のVMを稼働させる一般的な仮想化環境では、サーバリソースは全VMで共有される。そして、その共有の仕方は、ハイパーバイザおよびホストOS(Operating System)のスケジューラに一任され、制御することができない。仮想化環境として広く用いられているOpenStackでも、例えば物理CPU(pCPU)は物理サーバ上の全VMに共有される。
一方、VMを専用の物理CPU(CPUコア)に固定化(ピニング)する技術が開示されている(非特許文献1)。
「Red Hat OpenStack Platform インスタンス&イメージガイド 第4章 NUMAノードを使用するCPUピニングの設定」、[online]、Red Hat、[平成30年3月1日検索]、インターネット<URL:https://access.redhat.com/documentation/ja-jp/red_hat_openstack_platform/9/html/instances_and_images_guide/ch-cpu_pinning>
上記のような従来技術では、物理サーバ上の複数のVMを、どの物理CPUで稼働させるかに関し、共有の程度を制御することはできない。このため、ネットワーク機能としてサービスの性能保証が求められる場合において、OpenStackをはじめとする仮想化環境では特に制御を行わないと、リソースが制御できない形で共有されてしまいVMの性能保証を行うことができなかった。
また、リソースを占有して固定的にVMを割り当てる手法を用いてしまうと、仮想化本来のメリットである柔軟な構成を用いることや、リソースの有効活用ができないという結果となる。
このような点に鑑みて本発明がなされたのであり、本発明は、リソースの利用効率を高めつつ、VMの性能保証を実現することができるVM性能保証システムおよびVM性能保証方法を提供することを課題とする。
前記した課題を解決するため、請求項1に記載の発明は、複数のVMを稼働させる物理サーバと、前記物理サーバに接続され、前記VMの稼働状態を管理するコントローラとを備えるVM性能保証システムであって、前記物理サーバが、当該物理サーバが有する物理リソースを複数のグループに分割し、当該分割したグループそれぞれに共有できるVM数を異なるように設定して、前記共有できるVM数が少ないほど優先度が高い優先度グループとし、前記優先度グループそれぞれとその優先度グループの物理リソース上で稼働させるVMとの対応関係を格納する優先度グループ設定情報が記憶される記憶部と、前記VMそれぞれが稼働する際のリソース利用量を収集し、前記コントローラに送信するリソース利用量収集部と、前記VMそれぞれに対する前記優先度グループの変更指示を示す優先度グループ変更情報を前記コントローラから受信すると、前記優先度グループ設定情報を参照し、当該VMが属する優先度グループを変更する優先度グループ変更部と、を備え、前記コントローラが、前記物理サーバから前記VMそれぞれのリソース利用量を取得するデータ取得部と、取得した前記リソース利用量に基づき算出された性能値が当該VMの性能不足を判定する第1の条件を満たすか否か、および、前記性能値が当該VMの性能過多を判定する第2の条件を満たすか否か、を判定し、前記第1の条件を満たす場合に、より優先度の高い優先度グループへの変更指示を示す第1の前記優先度グループ変更情報を前記物理サーバに送信し、前記第2の条件を満たす場合に、より優先度の低い優先度グループへの変更指示を示す第2の前記優先度グループ変更情報を前記物理サーバに送信する優先度変更判定部と、を備え、前記物理サーバの優先度グループ変更部が、第1の前記優先度グループ変更情報を受信した場合に、当該VMが属する優先度グループをより優先度の高い優先度グループに変更し、第2の前記優先度グループ変更情報を受信した場合に、当該VMが属する優先度グループをより優先度の低い優先度グループに変更することを特徴とするVM性能保証システムとした。
また、請求項4に記載の発明は、複数のVMを稼働させる物理サーバと、前記物理サーバに接続され、前記VMの稼働状態を管理するコントローラとを備えるVM性能保証システムのVM性能保証方法であって、前記物理サーバが、当該物理サーバが有する物理リソースを複数のグループに分割し、当該分割したグループそれぞれに共有できるVM数を異なるように設定して、前記共有できるVM数が少ないほど優先度が高い優先度グループとし、前記優先度グループそれぞれとその優先度グループの物理リソース上で稼働させるVMとの対応関係を格納する優先度グループ設定情報が記憶される記憶部を備えており、前記VMそれぞれが稼働する際のリソース利用量を収集し、前記コントローラに送信するステップを実行し、前記コントローラが、前記物理サーバから前記VMそれぞれのリソース利用量を取得するステップと、取得した前記リソース利用量に基づき算出された性能値が当該VMの性能不足を判定する第1の条件を満たすか否か、および、前記性能値が当該VMの性能過多を判定する第2の条件を満たすか否か、を判定し、前記第1の条件を満たす場合に、より優先度の高い優先度グループへの変更指示を示す第1の優先度グループ変更情報を前記物理サーバに送信し、前記第2の条件を満たす場合に、より優先度の低い優先度グループへの変更指示を示す第2の優先度グループ変更情報を前記物理サーバに送信するステップと、を実行し、前記物理サーバが、前記第1の優先度グループ変更情報を受信した場合に、前記優先度グループ設定情報を参照し、当該VMが属する優先度グループをより優先度の高い優先度グループに変更し、前記第2の優先度グループ変更情報を受信した場合に、前記優先度グループ設定情報を参照し、当該VMが属する優先度グループをより優先度の低い優先度グループに変更するステップを実行することを特徴とするVM性能保証方法とした。
このように、VM性能保証システムでは、物理リソースを複数のグループに分割し、共有できるVM数の異なる優先度グループを定義しておく。そして、コントローラが、VMのリソース利用量に基づき、性能不足もしくは性能過多と判定した場合に、物理サーバにおいて、そのVMの優先度グループを変更することができる。よって、物理サーバの物理リソースを有効活用した上で、VMの性能保証を実現することができる。
請求項2に記載の発明は、前記コントローラが、前記優先度グループに属するVMそれぞれに対して、負荷を所定のパターンで変動させて稼働するテストツールの実行を指示するテストツール機能部と、前記物理サーバから、前記テストツールによる稼働で得られたリソース利用量および性能値をテスト結果情報として受信し、前記テスト結果情報に基づき、前記リソース利用量に応じた性能値の推定に用いる学習結果データを機械学習により生成する学習機能部と、前記物理サーバから取得した現時点での前記VMそれぞれのリソース利用量に基づき、前記学習結果データを用いて前記VMそれぞれの性能推定値を計算する性能値推定部と、をさらに備え、前記優先度変更判定部が、前記算出された性能値の替わりに、計算された前記性能推定値を用いて、前記第1の条件および前記第2の条件を満たすか否かを判定することにより、前記VMそれぞれの前記優先度グループの変更を判定することを特徴とする請求項1に記載のVM性能保証システムとした。
このように、コントローラが、テストツール機能部、学習機能部および性能値推定部を備えることにより、VMのリアルタイムのリソース利用量から性能値が算出できない場合であっても、テストツールで稼働させたテスト結果情報に基づき、当該VMの性能推定値を計算することができる。この性能推定値を用いて、コントローラが、性能不足もしくは性能過多を判定することにより、物理サーバにおいて、動的にVMの優先度グループを変更することができる。よって、物理サーバの物理リソースを有効活用した上で、VMの性能保証を実現することができる。
請求項3に記載の発明は、前記コントローラの前記データ取得部は、前記物理サーバから、前記優先度グループに属するVMそれぞれのリソース利用量および性能値を、所定期間の稼働において実データとして取得し、前記コントローラが、前記実データに基づき、前記リソース利用量に応じた性能値の推定に用いる学習結果データを機械学習により生成する学習機能部と、前記物理サーバから取得した現時点での前記VMそれぞれのリソース利用量に基づき、前記学習結果データを用いて前記VMそれぞれの性能推定値を計算する性能値推定部と、をさらに備え、前記優先度変更判定部が、前記算出された性能値の替わりに、計算された前記性能推定値を用いて、前記第1の条件および前記第2の条件を満たすか否かを判定することにより、前記VMそれぞれの前記優先度グループの変更を判定することを特徴とする請求項1に記載のVM性能保証システムとした。
このように、コントローラが、学習機能部および性能値推定部を備えることにより、VMの所定期間の稼働における実データに基づき、当該VMの性能推定値を計算することができる。この性能推定値を用いて、コントローラが、性能不足もしくは性能過多を判定することにより、物理サーバにおいて、動的にVMの優先度グループを変更することができる。よって、物理サーバの物理リソースを有効活用した上で、VMの性能保証を実現することができる。
本発明によれば、リソースの利用効率を高めつつ、VMの性能保証を実現するVM性能保証システムおよびVM性能保証方法を提供することができる。
VMの負荷が増大した場合にリソース割当を増やす従来の手法を説明するための図である。 本実施形態に係るVM性能保証システムでの、共有するVM数を変更する処理を説明するための図である。 本実施形態に係る物理サーバにおいて、リソースを優先度の異なるグループに分割することを説明するための図である。 本実施形態に係る優先度グループの変更処理を説明するための図である。 優先度グループの変更により、VMの性能保証が実現することを説明するための図である。 本実施形態に係るVM性能保証システムを構成する物理サーバおよびコントローラの構成例を示す図である。 本実施形態に係るVM性能保証システムが実行する学習結果データ生成処理の流れを示すフローチャートである。 本実施形態に係るVM性能保証システムが実行する優先度グループ変更処理の流れを示すフローチャートである。
次に、本発明を実施するための形態(以下、「本実施形態」という。)について説明する。まず、本実施形態に係るVM性能保証システムSの特徴となる構成について、その概要を説明する。
<概要>
VM性能保証システムSは、後記する図6で示すように、複数のVM1を備える物理サーバ10(コンピュート)と、コントローラ20とを備えて構成される。そして、VM性能保証システムSは、物理サーバ10の利用効率を高めつつ、VM1の性能保証を実現するため、以下に示す技術的特徴を備える。
従来、図1に示すように、例えば、1つの物理リソース(CPUコア:図1の●印)に1つのVM1(図1では1つのVM1に2つの仮想CPU(図1の〇印)を備える。)が稼働する状況において、VM1の負荷が増大した場合、物理リソースの割り当てを増やす、つまり、CPUコアを追加しVM1へのリソース割当量を変更することにより、VM1の性能低下を防いでいた。具体的には、図1の左図のVM1の負荷が増大した場合、図1の右図に示すように、例えば、CPUコアを増加し、1つの仮想CPUに1つの物理リソース(CPUコア)を割り当てる制御を行っていた。
これに対し、本実施形態に係るVM性能保証システムSでは、図2に示すように、2つの物理リソース(CPUコア)を2つのVM1が共有する状況において、VM1の負荷が増大した場合に、物理リソースに割り当てるVMの数を変更することにより、VM1の性能低下を防ぐようにする。図2では、物理リソースに共有するVM1の数を「2」から「1」に変更する制御を行う(図2の右図参照)。
つまり、VM1のリソース割当量を変更するのではなく、有限な物理リソース(CPUコア)に対して、割り当てるVM数を制御することを特徴とする。
また、VM性能保証システムSの物理サーバ10では、有限の物理リソース(CPUコア)を優先度の異なるグループに分割しておく(図3参照)。そして、各VM1のリソース利用量から計算されるVM1の性能推定値に基づき、性能不足のVM1は、高優先のグループに所属させるように優先度グループの所属先を変更する。また、性能過多のVM1は、低優先のグループに所属させるように、優先度グループの所属先を変更する。このように、VM性能保証システムSでは、各VM1について計算される性能推定値に基づき、どの優先度のグループに所属させるかを判断して所属先の優先度グループを変更する。
本実施形態において、この優先度グループは、物理リソースに対するVM1の共有数(VM数)が異なるグループとして定義する。具体的には、オーバーコミット率の異なるCPUピニングパターンのグループに、物理リソースを分割しておく。そして、VM1の負荷に応じて、オーバーコミット率の異なる優先度グループ(CPUピニングパターン)を動的に変更する。高負荷時はオーバーコミット率の小さい(高優先)パターンでCPUを占有(固定化)し、低負荷時はオーバーコミット率の大きい(低優先)パターンでCPUを占有する。これにより、所定値以上の性能を保証しながら、物理リソースの利用効率を高めることができる。
例えば、図4に示すように、優先度の最も高いグループとして「優先度Aのグループ」を設定する。この「優先度Aのグループ」は、分割した有限の物理リソース(ここでは、2つのCPUコア)に、VM数が「2」、つまり2つのVM1まで共有できる設定のオーバーコミット率の小さい(高優先)のパターンである。次の「優先度Bのグループ」は、分割した有限の物理リソース(2つのCPUコア)に、VM数が「4」まで共有できるグループである。次の「優先度Cのグループ」は、分割した有限の物理リソース(2つのCPUコア)に、VM数が「8」まで共有できるグループである。そして、「優先度Dのグループ」は、分割した有限の物理リソース(2つのCPUコア)に、VM数が「16」まで共有できる設定のオーバーコミット率の大きい(低優先)のパターンである。
本実施形態に係るVM性能保証システムSでは、例えば、図5に示すように、最初は、VM数「16」の「優先度Dのグループ」に所属していたVM1が、その性能が低下し、予めユーザとの間で取り決めがなされたSLA(Service Level Agreement:サービス品質保証)で示される性能値に所定値以上近づいた場合(性能不足に至る状況の場合)に、所属グループをより高優先でオーバーコミット率の小さい「優先度Cのグループ」(共有できるVM数「8」)に変更する。そのVM1について、その後さらに性能が低下し、SLAで示される性能値に所定値以上近づいた場合には、同様に、所属グループを「優先度Bのグループ」(共有できるVM数「4」)、「優先度Aのグループ」(共有できるVM数「2」)のように、より高優先でオーバーコミット率の小さいグループに変更する。このようにすることにより、VM1の性能保証を実現することができる。
また、VM性能保証システムSでは、性能に余裕がある場合には(性能過多の場合)には、そのVM1の所属グループをより低優先でオーバーコミット率の大きいグループに変更する。このようにすることで、物理リソース(CPUコア)の利用効率を高めることができる。
<本実施形態の構成>
次に、本実施形態に係るVM性能保証システムSについて説明する。
図6は、本実施形態に係るVM性能保証システムSを構成する物理サーバ10およびコントローラ20の機能ブロック図である。
物理サーバ10とコントローラ20は、通信ネットワークを介して接続される。本実施形態では、1台の物理サーバ10上に、仮想ルータとして機能するVM1が複数配置されるものとして説明する。なお、物理サーバ10は1台に限定されるものではなく、複数台の物理サーバ10がコントローラ20に接続されていてもよい。また、仮想ルータもVM1の機能の一例であり、他の機能をVM1で実現するようにしてもよい。
≪物理サーバ≫
物理サーバ10は、自身の物理サーバ上に複数のVM1(仮想マシン)を設定する機能(コンピュートとしての機能)を有する。ここでは、具体例として、各VM1に対してSLA等で規定される性能を、VM1(仮想ルータ)のパケット転送の遅延(レイテンシ)とする。なお、SLA等で規定される性能は、遅延(レイテンシ)以外でも、例えばスループット等であってもよい。また、VM1(仮想ルータ)のCPU使用量、メモリ使用量、パケット送受信数等をリソース利用量とする。
この物理サーバ10は、自身が備える物理リソース(例えば、CPUコア)を優先度の異なる複数のグループに分割しておき、その分割された物理リソース毎に、VM1の共有数(VM数)が異なるグループを定義しておく。そして、物理サーバ10は、VM1の負荷に応じて、そのVM1の優先度グループをオーバーコミット率の異なる他の優先度グループを変更する。
この物理サーバ10は、VM1を生成する機能(図示省略)を備えるとともに、リソース利用量収集部11、優先度グループ定義部12、優先度グループ変更部13を備える。また、物理サーバ10は、入出力部および記憶部(いずれも図示省略)を備える。
入出力部は、情報の送受信を行うための通信インタフェース、および、タッチパネルやキーボード等の入力装置や、モニタ等の出力装置との間で情報の送受信を行うための入出力インタフェースからなる。
また、記憶部は、フラッシュメモリやハードディスク、RAM(Random Access Memory)等により構成される。この物理サーバ10の記憶部には、図6に示すように、優先度グループ設定情報14が記憶される(詳細は後記)。
リソース利用量収集部11は、各VM1のリソース利用量(CPU使用量、メモリ使用量、パケット送受信数等)を収集する。そして、リソース利用量収集部11は、収集した各VM1のリソース利用量の情報を、コントローラ20に送信する。
なお、リソース利用量収集部11は、コントローラ20の指示により、後記するテストツールが実行された場合には、そのテストツールのテスト結果である各VM1のリソース利用量をコントローラ20に送信する。
優先度グループ定義部12は、物理サーバ10の物理リソースであるCPUコアを、複数のグループに分割する。そして、各グループを、オーバーコミット率の異なるCPUピニングパターンに分けて設定する。
具体的には、優先度グループ定義部12は、図4で示したように、優先度が最も高いグループとして、共有できるVM数を「2」とする「優先度Aのグループ」を設定する。次に優先度が高いグループとして、共有できるVM数を「4」とする「優先度Bのグループ」を設定する。さらにその次に優先度が高いグループとして、共有できるVM数を「8」とする「優先度Cのグループ」を設定する。さらにその次に優先度が高いグループ(優先度が最も低いグループ)として、共有できるVM数を「16」とする「優先度Dのグループ」を設定する。
なお、この優先度グループは、優先度A〜Dの4つのグループに限定されることなく、CPUコアを分割できる範囲で、2つ以上の任意の数のグループに設定可能である。
また、VM1を専用のCPUコアに固定化(ピニング)する技術は、例えば非特許文献1の技術により実現することができる。
優先度グループ定義部12は、各優先度グループに対応する物理リソース(CPUコア)の情報と、その優先度グループの物理リソース(CPUコア)において共有するVM数(オーバーコミット率)と、VM1それぞれがどの優先度グループ(優先度A〜Dのグループ)に所属するかを示す情報とを、優先度グループ設定情報14として記憶部に記憶する。
優先度グループ変更部13は、コントローラ20から、そのVM1についての優先度グループの変更指示を示す優先度グループ変更情報を受信し、その優先度グループ変更情報で示される、より優先度の高いグループまたはより優先度の低いグループに、そのVM1が所属する優先度グループを変更する。
≪コントローラ≫
コントローラ20は、物理サーバ10から各VM1のリソース利用量の情報を取得し、VM1(仮想ルータ)の性能推定値を計算する。そして、コントローラ20は、計算したVM1の性能推定値が、性能不足領域、無変更領域、性能過多領域のうちのどの領域に属するのかを判定する。コントローラ20は、VM1の性能推定値が、性能不足領域に属すると判定した場合には、よりオーバーコミット率の小さいCPUピニングパターンの優先度グループに変更する指示(優先度グループ変更情報)を物理サーバ10に送信する。また、コントローラ20は、VM1の性能推定値が、性能過多領域に属すると判定した場合には、よりオーバーコミット率の大きいCPUピニングパターンの優先度グループに変更する指示(優先度グループ変更情報)を物理サーバ10に送信する。
このコントローラ20は、データ取得部21と、テストツール機能部22と、学習機能部23と、性能値推定部24と、優先度変更判定部25とを備える。また、コントローラ20は、入出力部および記憶部(いずれも図示省略)を備える。
入出力部は、情報の送受信を行うための通信インタフェース、および、タッチパネルやキーボード等の入力装置や、モニタ等の出力装置との間で情報の送受信を行うための入出力インタフェースからなる。
また、記憶部は、フラッシュメモリやハードディスク、RAM等により構成される。このコントローラ20の記憶部は、図6に示すように、データ保存DB26を備える。このデータ保存DB26は、物理サーバ10から取得した各VM1のリソース利用量(CPU使用量、メモリ使用量、パケット送受信数等)の情報が記憶される。また、このデータ保存DB26には、テストツール機能部22の指示により、物理サーバ10から取得したVM1ごとのテスト結果の情報が記憶される。
データ取得部21は、物理サーバ10が収集した各VM1についてのリソース利用量を取得し、データ保存DB26に記憶する。また、データ取得部21は、物理サーバ10が実行したテストツールの結果として収集した、リソース利用量等のテスト結果情報を取得し、データ保存DB26に記憶する。
テストツール機能部22は、テストツールを起動し、物理サーバ10にデータ取得開始指示を送信することにより、各VM1のリソース利用量のデータとそれに対応する性能値(遅延)のデータを物理サーバ10から取得する。
テストツール機能部22は、例えば、異なるオーバーコミット率で設定された優先度グループに属するVM1それぞれについて、負荷を所定パターンで変動させ、それにより得られるリソース利用量と、そのときの性能値とをテスト結果情報として取得する。
なお、テストツールを用いる理由は、実性能のデータは、実際のサービス提供時には取得できないことが多いためである。
学習機能部23は、テストツール機能部22が取得したテストツールの結果データ(テスト結果情報)を用いて、機械学習による分析(例えば、回帰分析学習)を行い、学習結果データを生成する。この学習結果データは、各オーバーコミット率(優先度グループ)に所属するVM1毎に、リソース利用量から性能値を推定するための情報である。
性能値推定部24は、物理サーバ10から取得した(現時点での)各VM1のリソース利用量に基づき、学習機能部23が保持する学習結果データを用いて、VM1それぞれの性能推定値を計算する。
優先度変更判定部25は、性能値推定部24が計算したVM1それぞれの性能推定値を用いて、計算したVM1の性能推定値が、性能不足領域、無変更領域、性能過多領域のうちのどの領域に属するのかを判定する。
例えば、優先度変更判定部25は、VM1の性能推定値が、性能不足領域に属すると判定した場合には、よりオーバーコミット率の小さいCPUピニングパターンの優先度グループに変更する指示(優先度グループ変更情報)を物理サーバ10に送信する。また、優先度変更判定部25は、VM1の性能推定値が、性能過多領域に属すると判定した場合には、よりオーバーコミット率の大きいCPUピニングパターンの優先度グループに変更する指示(優先度グループ変更情報)を物理サーバ10に送信する。なお、優先度変更判定部25は、VM1の性能推定値が、無変更領域に属すると判定した場合には、優先度グループを変更する指示を物理サーバ10に送信しない。これにより、そのVM1のその時点での優先度グループへの所属を維持させるようにする。
<処理の流れ>
次に、VM性能保証システムSが実行する処理の流れについて図7および図8を参照して説明する。図7では、VM1(仮想ルータ)の推定遅延値を算出するために必要となる学習結果データを生成する処理(学習結果データ生成処理)について説明する。また、図8では、VM1の優先度グループの変更処理について説明する。
図7は、本実施形態に係るVM性能保証システムSが実行する学習結果データ生成処理の流れを示すフローチャートである。
まず、物理サーバ10の優先度グループ定義部12は、各優先度グループに対応する物理リソース(CPUコア)において共有するVM数(オーバーコミット率)の情報と、VM1それぞれがどの優先度グループ(優先度A〜Dのグループ)に所属するかを示す情報とを、優先度グループ設定情報14として記憶部に記憶する(ステップS10)。
この優先度グループ設定情報14では、例えば、図4に示すように、共有できるVM数を「2」とする優先度が最も高い「優先度Aのグループ」、次に優先度が高く共有できるVM数を「4」とする「優先度Bのグループ」、さらにその次に優先度が高く共有できるVM数を「8」とする「優先度Cのグループ」、優先度が最も低く共有できるVM数を「16」とする「優先度Dのグループ」が設定される。また、優先度グループ設定情報14には、物理サーバ10上のVM1それぞれをどの優先度グループに所属させるかの初期設定の情報が格納させる。
なお、優先度グループ定義部12は、この優先度グループ設定情報14を、外部装置(例えば、コントローラ20やネットワークの管理装置等)から受信することにより取得してもよいし、入出力部(図示省略)を介して情報の入力を受け付けてもよい。
次に、コントローラ20のテストツール機能部22が、テストツールを起動し(ステップS11)、物理サーバ10にデータ取得開始指示を送信する(ステップS12)。
このデータ取得開始指示を受信すると、物理サーバ10は、負荷を所定パターンで変更させ、リソース利用量収集部11が、各VM1についてのリソース利用量およびそのときの性能値の情報をテスト結果として収集する(ステップS13)。そして、リソース利用量収集部11は、収集したテスト結果をコントローラ20に送信する。
コントローラ20のデータ取得部21は、テスト結果を受信しテスト結果情報としてデータ保存DB26に記憶する(ステップS14)。
続いて、コントローラ20の学習機能部23が、各VM1についてのテスト結果情報を用いて、機械学習による分析(例えば、回帰分析学習)を行い、学習結果データを生成する(ステップS15)。
このように、VM性能保証システムSでは、テストツールを用いて、各優先度グループでのVM1についてリソース利用量に応じた性能値を事前に計測しておくことにより、学習結果データを生成する。この学習結果データを用いて、VM性能保証システムSは、リアルタイムに更新される各VM1のリソース利用量のデータに基づき、性能推定値を計算することができる。
次に、VM性能保証システムSが実行するVM1の優先度グループの変更処理について説明する。
図8は、本実施形態に係るVM性能保証システムSが実行する優先度グループ変更処理の流れを示すフローチャートである。
ここでは、物理サーバ10のリソース利用量収集部11が、所定の時間間隔で各VM1のリソース利用量を収集し、コントローラ20に送信する。そして、コントローラ20の性能値推定部24が、学習結果データを用いてVM1の性能推定値を計算する。計算された性能推定値について、優先度変更判定部25が、性能不足領域、性能過多領域に属するかを判定する。以下、詳細に説明する。
なお、図8の処理以前に、図7で行った物理サーバ10による優先度グループ設定情報14の記憶と、コントローラ20による学習結果データの生成が終わっているものとする。
まず、物理サーバ10のリソース利用量収集部11は、所定時間が経過したか否かを判定する(ステップS20)。所定時間が経過していない場合には(ステップS20→No)、ステップS20に戻り、所定時間が経過するまで待機する。一方、所定時間が経過した場合には(ステップS20→Yes)、次のステップS21へ進む。つまり、以降の処理は、所定の時間間隔で繰り返し実行されるものである。
ステップS21において、物理サーバ10のリソース利用量収集部11が、各VM1についてのリソース利用量の情報を収集し、コントローラ20に送信する。
コントローラ20のデータ取得部21は、取得した各VM1についてのリソース利用量の情報をデータ保存DB26に記憶する(ステップS22)。このステップS22以降の処理は、VM1毎に行われる。
次に、コントローラ20の性能値推定部24は、データ保存DB26に記憶された各VM1のリソース利用量に基づき、学習機能部23が保持する学習結果データを用いて、VM1それぞれの性能推定値xを計算する(ステップS23)。
そして、コントローラ20の優先度変更判定部25は、性能値推定部24が計算したVM1の性能推定値が、性能不足領域、無変更領域、性能過多領域のうちのどの領域に属するのかを判定する。ここで、VM1(仮想ルータ)の性能(遅延)に対する性能推定値xを、性能不足領域(x>8ms:第1の条件)、無変更領域(4ms≦x≦8ms)、性能過多領域(x<4ms:第2の条件)と設定しておき、以下の処理により、そのVM1の性能推定値が、性能不足領域に属するのか、または、性能過多領域に属するのかを判定する。具体的には、以下の処理を実行する。
優先度変更判定部25は、VM1の性能推定値xが、x>8ms(第1の条件)に該当するか否かを判定する(ステップS24)。そして、優先度変更判定部25は、第1の条件に該当する場合には(ステップS24→Yes)、性能推定値xが性能不足領域にあると判定する。そして、優先度変更判定部25は、よりオーバーコミット率の小さいCPUピニングパターンの優先度グループに変更する指示(第1の優先度グループ変更情報)を物理サーバ10に送信する(ステップS25)。
物理サーバ10の優先度グループ変更部13は、この優先度グループ変更情報を受信すると、当該VM1の所属する優先度グループを、優先度グループ設定情報14を参照して確認し、よりオーバーコミット率の小さいCPUピニングパターンの優先度グループに変更する(ステップS26)。この際、優先度グループ変更部13は、当該VM1について新たに所属する優先度グループに基づき、優先度グループ設定情報14を更新する。
一方、ステップS24において、第1の条件に該当しない場合には(ステップS24→No)、ステップS27に進む。
ステップS27において、優先度変更判定部25は、VM1の性能推定値xが、x<4ms(第2の条件)に該当するか否かを判定する。そして、優先度変更判定部25は、第2の条件に該当する場合には(ステップS27→Yes)、性能推定値xが性能過多領域にあると判定する。そして、優先度変更判定部25は、よりオーバーコミット率の大きいCPUピニングパターンの優先度グループに変更する指示(第2の優先度グループ変更情報)を物理サーバ10に送信する(ステップS28)。
物理サーバ10の優先度グループ変更部13は、この優先度グループ変更情報を受信すると、当該VM1の所属する優先度グループを、優先度グループ設定情報14を参照して確認し、よりオーバーコミット率の大きいCPUピニングパターンの優先度グループに変更する(ステップS29)。この際、優先度グループ変更部13は、当該VM1について新たに所属する優先度グループに基づき、優先度グループ設定情報14を更新する。
一方、ステップS27において、第2の条件に該当しない場合には(ステップS27→No)、処理を終える。
優先度変更判定部25は、ステップS24〜S29の処理を、物理サーバ10(優先度グループ変更部13)とともに、各VM1について実行する。
以上説明したように、本実施形態に係るVM性能保証システムSによれば、負荷が小さいVM1が過剰となった物理リソースを確保し続けることがないため、物理サーバ10のリソース利用効率を高めることができる。また、共有できるVM数の異なる優先度グループを定義し、性能不足もしくは性能過多の場合に動的に優先度グループを変更することで、物理リソースを効率的に活用した上で、VM1の性能保証を実現することができる。
(変形例)
本発明は、上記した実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で変更実施が可能である。例えば、以下のような変形例として実施することもできる。
<変形例1>
本実施形態では、上記のように、実性能のデータが実際のサービス提供時には取得できないことが多いため、コントローラ20にテストツール機能部22(図6参照)を備え、異なる優先度グループに属するVM1の負荷を所定パターンで変動させてテスト結果情報を取得し、性能推定値を計算できるようにした。
これに対し、SLA等で規定される性能の種別やシステム構成、アプリケーションの設定等により、各VM1のリソース利用量からコントローラ20が性能値をリアルタイムで取得(算出)できる場合には、テストツール機能部22、学習機能部23、性能値推定部24(図6参照)を設けない構成とする。このとき、コントローラ20の優先度変更判定部25は、リアルタイムに取得した性能値を用いて、各VMの性能不足、性能過多を判定することにより、優先度グループの変更処理を実行する。
<変形例2>
また、本実施形態では、コントローラ20にテストツール機能部22(図6参照)を設け、テストツールを起動させてテスト結果情報を物理サーバ10から取得するようにした。このテスト結果情報を用いて、学習機能部23が学習結果データを生成する替わりに、コントローラ20が、所定期間の実運用(稼働)での各VMのリソース利用量と性能値のデータを蓄積し、その蓄積データ(過去の実データ)を用いて、学習機能部23が学習結果データを生成するようにしてもよい。
このような本実施形態の変形例1,2によっても、本実施形態と同様に、物理リソースの利用効率を高めつつ、VM1の性能保証を実現することが可能となる。
1 VM(仮想ルータ)
10 物理サーバ(コンピュート)
11 リソース利用量収集部
12 優先度グループ定義部
13 優先度グループ変更部
14 優先度グループ設定情報
20 コントローラ
21 データ取得部
22 テストツール機能部
23 学習機能部
24 性能値推定部
25 優先度変更判定部
26 データ保存DB

Claims (4)

  1. 複数のVM(Virtual Machine)を稼働させる物理サーバと、前記物理サーバに接続され、前記VMの稼働状態を管理するコントローラとを備えるVM性能保証システムであって、
    前記物理サーバは、
    当該物理サーバが有する物理リソースを複数のグループに分割し、当該分割したグループそれぞれに共有できるVM数を異なるように設定して、前記共有できるVM数が少ないほど優先度が高い優先度グループとし、前記優先度グループそれぞれとその優先度グループの物理リソース上で稼働させるVMとの対応関係を格納する優先度グループ設定情報が記憶される記憶部と、
    前記VMそれぞれが稼働する際のリソース利用量を収集し、前記コントローラに送信するリソース利用量収集部と、
    前記VMそれぞれに対する前記優先度グループの変更指示を示す優先度グループ変更情報を前記コントローラから受信すると、前記優先度グループ設定情報を参照し、当該VMが属する優先度グループを変更する優先度グループ変更部と、を備え、
    前記コントローラは、
    前記物理サーバから前記VMそれぞれのリソース利用量を取得するデータ取得部と、
    取得した前記リソース利用量に基づき算出された性能値が当該VMの性能不足を判定する第1の条件を満たすか否か、および、前記性能値が当該VMの性能過多を判定する第2の条件を満たすか否か、を判定し、前記第1の条件を満たす場合に、より優先度の高い優先度グループへの変更指示を示す第1の前記優先度グループ変更情報を前記物理サーバに送信し、前記第2の条件を満たす場合に、より優先度の低い優先度グループへの変更指示を示す第2の前記優先度グループ変更情報を前記物理サーバに送信する優先度変更判定部と、を備え、
    前記物理サーバの優先度グループ変更部は、
    第1の前記優先度グループ変更情報を受信した場合に、当該VMが属する優先度グループをより優先度の高い優先度グループに変更し、第2の前記優先度グループ変更情報を受信した場合に、当該VMが属する優先度グループをより優先度の低い優先度グループに変更すること
    を特徴とするVM性能保証システム。
  2. 前記コントローラは、
    前記優先度グループに属するVMそれぞれに対して、負荷を所定のパターンで変動させて稼働するテストツールの実行を指示するテストツール機能部と、
    前記物理サーバから、前記テストツールによる稼働で得られたリソース利用量および性能値をテスト結果情報として受信し、前記テスト結果情報に基づき、前記リソース利用量に応じた性能値の推定に用いる学習結果データを機械学習により生成する学習機能部と、
    前記物理サーバから取得した現時点での前記VMそれぞれのリソース利用量に基づき、前記学習結果データを用いて前記VMそれぞれの性能推定値を計算する性能値推定部と、をさらに備え、
    前記優先度変更判定部は、前記算出された性能値の替わりに、計算された前記性能推定値を用いて、前記第1の条件および前記第2の条件を満たすか否かを判定することにより、前記VMそれぞれの前記優先度グループの変更を判定すること
    を特徴とする請求項1に記載のVM性能保証システム。
  3. 前記コントローラの前記データ取得部は、前記物理サーバから、前記優先度グループに属するVMそれぞれのリソース利用量および性能値を、所定期間の稼働において実データとして取得し、
    前記コントローラは、
    前記実データに基づき、前記リソース利用量に応じた性能値の推定に用いる学習結果データを機械学習により生成する学習機能部と、
    前記物理サーバから取得した現時点での前記VMそれぞれのリソース利用量に基づき、前記学習結果データを用いて前記VMそれぞれの性能推定値を計算する性能値推定部と、をさらに備え、
    前記優先度変更判定部は、前記算出された性能値の替わりに、計算された前記性能推定値を用いて、前記第1の条件および前記第2の条件を満たすか否かを判定することにより、前記VMそれぞれの前記優先度グループの変更を判定すること
    を特徴とする請求項1に記載のVM性能保証システム。
  4. 複数のVMを稼働させる物理サーバと、前記物理サーバに接続され、前記VMの稼働状態を管理するコントローラとを備えるVM性能保証システムのVM性能保証方法であって、
    前記物理サーバは、
    当該物理サーバが有する物理リソースを複数のグループに分割し、当該分割したグループそれぞれに共有できるVM数を異なるように設定して、前記共有できるVM数が少ないほど優先度が高い優先度グループとし、前記優先度グループそれぞれとその優先度グループの物理リソース上で稼働させるVMとの対応関係を格納する優先度グループ設定情報が記憶される記憶部を備えており、
    前記VMそれぞれが稼働する際のリソース利用量を収集し、前記コントローラに送信するステップを実行し、
    前記コントローラは、
    前記物理サーバから前記VMそれぞれのリソース利用量を取得するステップと、
    取得した前記リソース利用量に基づき算出された性能値が当該VMの性能不足を判定する第1の条件を満たすか否か、および、前記性能値が当該VMの性能過多を判定する第2の条件を満たすか否か、を判定し、前記第1の条件を満たす場合に、より優先度の高い優先度グループへの変更指示を示す第1の優先度グループ変更情報を前記物理サーバに送信し、前記第2の条件を満たす場合に、より優先度の低い優先度グループへの変更指示を示す第2の優先度グループ変更情報を前記物理サーバに送信するステップと、を実行し、
    前記物理サーバは、
    前記第1の優先度グループ変更情報を受信した場合に、前記優先度グループ設定情報を参照し、当該VMが属する優先度グループをより優先度の高い優先度グループに変更し、前記第2の優先度グループ変更情報を受信した場合に、前記優先度グループ設定情報を参照し、当該VMが属する優先度グループをより優先度の低い優先度グループに変更するステップを実行すること
    を特徴とするVM性能保証方法。
JP2018044010A 2018-03-12 2018-03-12 Vm性能保証システムおよびvm性能保証方法 Active JP6795536B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018044010A JP6795536B2 (ja) 2018-03-12 2018-03-12 Vm性能保証システムおよびvm性能保証方法
PCT/JP2019/008279 WO2019176606A1 (ja) 2018-03-12 2019-03-04 Vm性能保証システムおよびvm性能保証方法
US16/977,892 US11886901B2 (en) 2018-03-12 2019-03-04 VM performance guaranteeing system and VM performance guaranteeing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018044010A JP6795536B2 (ja) 2018-03-12 2018-03-12 Vm性能保証システムおよびvm性能保証方法

Publications (2)

Publication Number Publication Date
JP2019159646A true JP2019159646A (ja) 2019-09-19
JP6795536B2 JP6795536B2 (ja) 2020-12-02

Family

ID=67908157

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018044010A Active JP6795536B2 (ja) 2018-03-12 2018-03-12 Vm性能保証システムおよびvm性能保証方法

Country Status (3)

Country Link
US (1) US11886901B2 (ja)
JP (1) JP6795536B2 (ja)
WO (1) WO2019176606A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6973292B2 (ja) * 2018-05-24 2021-11-24 日本電信電話株式会社 Vm優先度制御システムおよびvm優先度制御方法
US11509732B2 (en) * 2021-01-15 2022-11-22 Dell Products L.P. Smart service orchestrator

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499021A (zh) * 2008-01-31 2009-08-05 国际商业机器公司 在多个虚拟机上动态分配资源的方法和装置
JP5400482B2 (ja) * 2009-06-04 2014-01-29 株式会社日立製作所 管理計算機、リソース管理方法、リソース管理プログラム、記録媒体および情報処理システム
US9639379B1 (en) * 2011-07-19 2017-05-02 Open Invention Network Llc Dynamic configuration of virtual machines
US9164791B2 (en) * 2012-07-02 2015-10-20 International Business Machines Corporation Hierarchical thresholds-based virtual machine configuration
WO2014032287A1 (zh) * 2012-08-31 2014-03-06 华为技术有限公司 中央处理器资源分配方法和计算节点
JP6342826B2 (ja) * 2015-02-17 2018-06-13 日本電信電話株式会社 仮想エッジの資源割当制御システムおよび方法

Also Published As

Publication number Publication date
US20210004255A1 (en) 2021-01-07
US11886901B2 (en) 2024-01-30
WO2019176606A1 (ja) 2019-09-19
JP6795536B2 (ja) 2020-12-02

Similar Documents

Publication Publication Date Title
JP6969499B2 (ja) Vmマイグレーションシステムおよびvmマイグレーション方法
Xu et al. iAware: Making live migration of virtual machines interference-aware in the cloud
CN107003887A (zh) Cpu超载设置和云计算工作负荷调度机构
Sampaio et al. PIASA: A power and interference aware resource management strategy for heterogeneous workloads in cloud data centers
JP6783850B2 (ja) データトラフィックを制限するための方法及びシステム
KR101474872B1 (ko) 클라우드 상에 가상 클러스터들의 효율적 구축을 위한 탄력적 가상 클러스터 관리 방법, 이를 이용한 가상 클러스터 관리 장치 및 클라우드 시스템
KR20160087706A (ko) 가상화 플랫폼을 고려한 분산 데이터 처리 시스템의 자원 할당 장치 및 할당 방법
Kherbache et al. Scheduling live migration of virtual machines
WO2019225419A1 (ja) Vm優先度制御システムおよびvm優先度制御方法
WO2019176606A1 (ja) Vm性能保証システムおよびvm性能保証方法
JP6721800B2 (ja) 協調分散システム、協調分散管理装置、協調分散方法、及びプログラム
WO2020166423A1 (ja) リソース管理装置およびリソース管理方法
JP6326062B2 (ja) 異なる環境どうし間でのジョブ実行依頼のトランスペアレントなルーティング
EP3652895A1 (en) Method and apparatus for monitoring performance of virtualized network functions
Kherbache et al. Scheduling live-migrations for fast, adaptable and energy-efficient relocation operations
Tesfatsion et al. Power and performance optimization in FPGA‐accelerated clouds
JP5758358B2 (ja) 仮想マシンシステム及びその高速ライブマイグレーション方法
JP2017117009A (ja) マルチコアcpuを有するパケット転送装置の制御装置及びプログラム
WO2022102087A1 (ja) コンピュータシステムおよびフロー制御方法
JP5646560B2 (ja) 仮想os制御装置、システム、方法およびプログラム
Hyder et al. Power Aware Virtual Machine Migration for Resource Allocation in Cloud
US11659445B2 (en) Device coordination for distributed edge computations
Malhotra LD_ASG: Load Balancing Algorithm in Cloud Computing
Gutta Sridevi A hybrid multi-level statistical load balancer-based parameters estimation model in realtime cloud computing environment
Pavăl et al. Autoscaling MPI Cluster using OpenMPI and OpenStack cloud services

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20180323

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200228

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: 20201110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201112

R150 Certificate of patent or registration of utility model

Ref document number: 6795536

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150