JP2016505965A - 優先化バーチャル機械へ最適化されたサービス品質を提供することと、共有されたリソースの品質に基づくアプリケーション - Google Patents

優先化バーチャル機械へ最適化されたサービス品質を提供することと、共有されたリソースの品質に基づくアプリケーション Download PDF

Info

Publication number
JP2016505965A
JP2016505965A JP2015549380A JP2015549380A JP2016505965A JP 2016505965 A JP2016505965 A JP 2016505965A JP 2015549380 A JP2015549380 A JP 2015549380A JP 2015549380 A JP2015549380 A JP 2015549380A JP 2016505965 A JP2016505965 A JP 2016505965A
Authority
JP
Japan
Prior art keywords
quality
application
computer
priority
shared computer
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
JP2015549380A
Other languages
English (en)
Other versions
JP6321031B2 (ja
JP2016505965A5 (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.)
NortonLifeLock Inc
Original Assignee
Symantec 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 Symantec Corp filed Critical Symantec Corp
Publication of JP2016505965A publication Critical patent/JP2016505965A/ja
Publication of JP2016505965A5 publication Critical patent/JP2016505965A5/ja
Application granted granted Critical
Publication of JP6321031B2 publication Critical patent/JP6321031B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/5044Allocation 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 hardware capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5022Ensuring fulfilment of SLA by giving priorities, e.g. assigning classes of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

サービスの品質が、種々の品質の異なる共有されたコンピュータリソースに基づいて、優先化されたVMsとアプリケーションに提供される。各VM又はアプリケーションは、関連した優先度を有する。品質格付けが、各共有されたコンピュータリソースに対して動的に割り当てられる。特定のVMs又はアプリケーションによって作成された共有されたコンピュータリソースに対する要求が受信される。各特定の受信された要求に対して、要求しているVM又はアプリケーションの電流優先度が同定される。各受信された要求への応答において、特定の共有されたコンピュータリソースが、特定の要求しているVM又はアプリケーションに対して割り当てられる。本割当は、要求しているVM又はアプリケーションの電流優先度と、共有されたコンピュータリソースの電流品質格付けに基づいて作成され、それによって、サービスの品質が、電流優先度に相当する、要求しているVM又はアプリケーションに提供される。

Description

本開示は、一般に、コンピュータデバイスバーチャル化、より詳細には優先化されたバーチャル機械へ最適化されたサービス品質を提供すること、及び共有されたコンピュータリソースの様々な品質に基づくアプリケーションに関する。
クラスタは、個々のシステム構成要素が失敗したときに、継続したサービスを提供するための、重複するコンピュータリソースの群を利用するコンピュータの群である。より詳細には、クラスタは、多重サービス、多重ネットワークコネクション、重複データ記憶装置などを提供することによって、失敗の単一点を除去する。クラスタリングシステムはしばしば、ジャーナルファイルシステム、論理的ボリュームマネージメント、マルチパス入力/出力(I/O)機能性などのような、更なる有用な特徴を提供する記憶装置マネージメント製品と組み合わせられる。例えば、バーチャルディスクデバイスが、I/Oのイニシエータに対して利用可能とされる、Veritas Volume Managerや、Dynamic Multipathingのような、いくつかの記憶装置マネージメント製品が、マルチパス化記憶装置デバイスを支持し、そこで多重物理的パスが、バーチャルディスクと、内在物理的記憶装置との間に存在する。
高利用性クラスタリングシステムにおいて、サーバの(又は、ネットワークアダプタ、記憶装置デバイスなどのような、それによって使用される特定のコンピュータリソースの)失敗が検出され、失敗したサーバ上で走っていたアプリケーションが、自動的に他のコンピュータシステム上で再度開始される。この工程は、「障害迂回」と呼ばれる。高利用性クラスタリングシステムはまた、アプリケーション自身の失敗も検出可能であり、アプリケーションを他のノードに障害迂回する。実質的に、高利用性クラスタリングシステムは、アプリケーションが高い利用性を維持することを確かにするために、アプリケーション、アプリケーションが走っているサーバ、及びアプリケーションによって使用されたリソースをモニタする。クラスタは、種々のレベルの利用性を補償する、サービスレベル合意にしたがって、カスタマーに対してアプリケーションを提供するために使用可能である。
コンピュータデバイスのバーチャル化が、高利用性クラスタリングにおいて、及び他の文脈において利用可能である。1つ又はそれ以上のバーチャル機械(VMs又はゲスト)が、各VMがその固有のオペレーティングシステム実例を走らせるように、物理的コンピュータ(ホストコンピュータ又はホスト)上、ソフトウェアレベルで例示化可能である。データベースのようなサーバアプリケーションを含む、ちょうどソフトウェアアプリケーションのように、エンタープライズマネージメントソリューション及びe−コマースウェブサイトは、物理的コンピュータ上で走らせることが可能であり、そしてまたこれらのアプリケーションは、バーチャル機械上で走らせることが可能である。VMsの高利用性クラスタが構築可能であり、その中で、高利用性クラスタリングシステムによってモニタされているアプリケーションが、走り、物理的サーバとは反対に、VMs間で障害迂回する。
いくつかのバーチャル化シナリオにおいて、しばしばハイパーバイザと呼ばれるソフトウェア構成要素が、ゲストの機能のいくつか、又は全てに対して、ゲストと、ホストオペレーティングシステムとの間のインタフェースとして働きうる。他のバーチャル化実行において、物理的、ホストコンピュータ上で走っている、内在ホストオペレーティングシステムは存在しない。これらの状況において、ハイパーバイザは、その最上でゲストが走る、ホストオペレーティングシステムとして機能する効果において、ゲストと、ホストコンピュータのハードウェア間のインタフェースとして働く。ホストオペレーティングシステムが存在する場合でさえも、ハイパーバイザは時々、特定のサービスに対して、ハードウェアと直接インタフェース接続する。いくつかのバーチャル化シナリオにおいて、ホストそれ自身は、もう一つのホスト上で走っているゲスト(すなわちバーチャルホスト)の形状である。
ハイパーバイザは、VMsからのリソースに対する要求を受信し、CPU、メモリ、I/Oバンド幅、I/Oチャネル、記憶装置、性能ブーストキャッシュ、複製リンクなどのような共有されたリソースを割り付ける。記憶装置マネージメント環境において、マルチパスされた記憶装置もまた、VMs又はホスト間で共有可能でもある。従来のハイパーバイザは、リソースの異なる共有を異なるVMsに割り付けることが可能であるけれども、従来のハイパーバイザは、与えられた型の全ての利用可能なリソース(例えばCPU、メモリ及び/又はI/Oチャネル)を、同様に、そして、実質的に同一の方法で操作するように取り扱う。これは、種々のサービス品質を、それぞれの優先度、又はカスタマーとの内在サービスレベル合意に基づいて、異なるVMs及びアプリケーションに提供可能である程度を制限する。
この問題に対処することが望ましい。
サービス品質が、種々の品質の異なる共有されたコンピュータリソースに基づいて、コンピュータ上の優先化されたVMs又は他のアプリケーションに提供される。それぞれのVM又はアプリケーションは、優先度を有し、これは、他のVMs又はアプリケーションに対して提供されるべき、サービス品質を示唆可能である。共有されたコンピュータリソースは、多重VMs又はアプリケーションによってアクセス可能である。共有されたコンピュータリソースは、例えばバーチャル化を促進するために、単一のコンピュータ上で走っている、多重VMs又はアプリケーション間で共有可能である。品質格付けが、それぞれの共有されたコンピュータリソースに割り当てられる。いくつかの実施形態において、品質格付けには、特定の共有されたコンピュータリソースの総品質の単一定量化が含まれる。割り当てられた品質格付けはまた、特定の型の共有されたコンピュータリソース、又は共有されたコンピュータリソースの特定の例についての、複数の定性因子を定量化可能である。共有されたコンピュータリソースは、それらの電流状況に基づいた電流品質格付けを決定するために、定期的に評価可能である。電流品質格付けをついで、共有されたコンピュータリソースに割り当てる。
特定のVMs又はアプリケーションによって作成された共有されたコンピュータリソースに対する要求が受信される。例えば、受信された要求は、例えばバーチャルディスクにアクセスするために、ハイパーバイザへの、特定のVMsによって作成された共有されたコンピュータリソースに対する要求の形状でありうる。それぞれの特定の受信された要求に対して、要求しているアプリケーションの優先度を同定する。要求しているアプリケーションの優先度を同定することにはさらに、たとえは要求それ自身内のタグからの、共有されたコンピュータリソースに対する要求を作成した特定のアプリケーションを同定することが含まれうる。受信した要求が、IO操作の形状である場合、共有されたコンピュータリソースが、標的化LUNによって同定可能である。それぞれの受信された要求に対する応答において、特定の共有されたコンピュータリソースが、特定の要求しているアプリケーションに割り当てられる。この割当は、要求しているアプリケーションの優先度と、共有されたコンピュータリソースの品質格付けに基づいて作成され、それによって、その優先度に相当している要求しているアプリケーションへ、サービス品質を提供する。いくつかの実施形態において、時間にわたるアプリケーションによる共有されたコンピュータリソースの利用を文書化している情報が、将来の参照のためにログされる。
1つの実施形態において、共有されたコンピュータリソースに対する受信された要求には、特定の記憶装置デバイスを標的としているIO操作を開始するために、特定のアプリケーションによって作成された要求が含まれる。この場合、共有されたコンピュータリソースは、特定の記憶装置デバイスにアクセスするための、複数のキューの形状である。それぞれのキューは、異なるレベルの優先度を有する、特定の記憶装置デバイスにアクセスするように設定される。本実施形態において、要求しているアプリケーションが、IO操作を処理するために、キューの特定の1つに割り当てられる。
他の実施形態において、共有されたコンピュータリソースに対する受信された要求は、マルチパスされた記憶装置デバイスにアクセスするために、マルチパス化構成要素に対する、特定のアプリケーションによって作成された要求の形状である。本実施形態において、共有されたコンピュータリソースには、物理的記憶装置への多重パスの特定の1つにアクセスするための、複数のキューが含まれ得、そこで品質格付けを割り当てることにはさらに、それぞれのキューに、特定のレベルの優先度を割り当てることが含まれる。共有されたコンピュータリソースは代わりにさらに、物理的記憶装置への複数のパスを含み得、この場合、品質格付けが、その品質の定量化として、特定のパスに割り当てられる。
この「発明の概要」及び後述の「発明を実施するための形態」に記述される特徴及び利点は、すべてを包含したものではなく、特に、本特許の図面、明細書、及び特許請求の範囲の見地から、関連分野の当業者には、数多くの付加的な特徴及び利点が明らかとなろう。さらに、本明細書に使用されている表現は、読みやすさと説明の目的のために主に選択されており、発明の主題を限定又は制限するために選択されたものではなく、そのような発明の主題を決定するには、特許請求の範囲に依ることが必要である。
いくつかの実施形態にしたがった、サービス品質マネージャが実行可能な例示ネットワークアーキテクチャのブロック図である。 いくつかの実施形態にしたがった、サービス品質マネージャを実行することに好適なコンピュータシステムのブロック図である。 いくつかの実施形態にしたがった、サービス品質マネージャの操作のブロック図である。 いくつかの実施形態にしたがった、サービス品質マネージャによって使用された、共有された記憶装置アーキテクチャのブロック図である。 いくつかの実施形態にしたがった、サービス品質マネージャのモジュールのブロック図である。 いくつかの実施形態にしたがった、サービス品質マネージャの操作の特定の使用の場合を例示しているブロック図である。
図には、単に例示目的のため、様々な実施形態が示されている。当業者には、本明細書に記述されている原理から逸脱することなく、本明細書に示されている構造及び方法の別の実施形態を採用し得ることが、下記の議論から容易に理解されよう。
図1は、例示ネットワークアーキテクチャ100のブロック図であり、そこで、サービス品質マネージャ101が実行可能である。例示されたネットワークアーキテクチャ100において、クライアントシステム103A、103B及び103N、ならびにサーバ105A及び105Nは、ネットワーク107に通信可能に連結される。サービス品質マネージャ101は、サーバ105A及び105N上に存在するとして例示されるが、他の実施形態において、サービス品質マネージャ101は、望むような、より多くの、より少ない、又は異なるコンピュータ210上に存在することも可能である。図1において、サーバ105Aはさらに、直接接続した、記憶装置デバイス160A(1)〜(N)を有するとして描写され、サーバ105Nは、直接接続した、記憶装置デバイス160B(1)〜(N)を有して描写される。サーバ105A及び105Nはまた、サーバ105A及び105Nによって、そしてネットワーク107を介してクライアントシステム103A〜Nによって、記憶装置デバイス180(1)〜(N)へのアクセスを支持するSANファブリック170に連結する。SANファブリック170からアクセス可能な特定の記憶デバイスの具体例として、インテリジェント記憶アレイ190も示されている。他の実施形態において、共有された記憶装置は、SANファブリック170の代わりに(又はと組み合わせて)、FC及びiSCSI(示していない)を用いて実施される。
多くの異なるネットワーキング技術もまた、クライアントコンピュータシステム103A〜Nのそれぞれからネットワーク107へ、接続性を提供するために使用可能である。いくつかの例には、LAN、WAN及び種々のワイヤレス技術が含まれる。クライアントシステム103A〜Nは、例えばウェブブラウザ又は他のクライアントソフトウェア(示していない)を用いて、サーバ105A又は105N上のアプリケーション及び/又はデータにアクセス可能である。これは、クライアントシステム103A〜Nが、アプリケーションサーバ105からアプリケーションを走らせる、及び/又は記憶装置サーバ105、又は記憶装置デバイス160A(1)〜(N)、160B(1)〜(N)、180(1)〜(N)の1つ、又はインテリジェント記憶装置アレイ190によってホストされたデータにアクセスすることを可能にする。
図1は、3つのクライアント103A〜Nと、2つのサーバ105A〜Nを例として示すが、実際に、多くのさらなる(又はより少ない)コンピュータを配置可能である。一実施形態において、ネットワーク107はインターネットの形態である。他の実施形態において、他のネットワーク107又はネットワークベースの環境を使用することができる。
図2は、サービス品質マネージャ101を実行するために好適なコンピュータシステム210のブロック図である。図1で図示するクライアント103とサーバ105は、図2で図示するもののような、コンピュータ210の形状であり得る。図示のように、コンピュータシステム210の1つの構成要素がバス212である。バス212は、コンピュータシステム210の他の構成要素、少なくとも1つのプロセッサ214、システムメモリ217(例えばランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、フラッシュメモリ)、入出力(I/O)コントローラ218、スピーカシステム220などの外部音声装置に通信可能に連結された音声出力インタフェース222、ディスプレイ画面224などの外部ビデオ出力装置に通信可能に連結されたディスプレイアダプタ226、1つ以上のインタフェース(例えばシリアルポート230、ユニバーサルシリアルバス(USB)のレセプタクル230、パラレルポート(図示なし)など)、キーボード232に通信可能に連結されたキーボードコントローラ233、少なくとも1つのハードディスク224(又はその他の形態の磁気媒体)に通信可能に連結された記憶装置インタフェース234、ファイバーチャネル(FC)ネットワーク290と接続するよう構成されたホストバスアダプタ(HBA)インタフェースカード235A、SCSIバス239に接続するよう構成されたHBAインタフェースカード235B、光ディスク242を受容するよう構成された光ディスクドライブ240、バス212に(例えばUSBレセプタクル228を介して)連結されたマウス246(又はその他のポインティングデバイス)、バス212に(例えばシリアルポート230を介して)連結されたモデム247、及び、例えばバス212に直接連結されたネットワークインタフェース248と、通信可能に連結される。
他の構成要素(図示なし)は、同様の方法で接続され得る(例えば文書スキャナ、デジタルカメラ、プリンタなど)。逆に、図2に示されているすべての構成要素は必ずしも存在する必要はない。構成要素は、図2に示されるものとは異なる手法で相互接続することができる。
バス212は、プロセッサ214と、上述のように、ROM及び/又はフラッシュメモリ並びにRAMを含み得るシステムメモリ217との間のデータ通信を可能にする。RAMは典型的に、オペレーティングシステム及びアプリケーションプログラムがロードされるメインメモリである。ROM及び/又はフラッシュメモリは、他のコードと共に、特定の基本的なハードウェアオペレーションを制御するベーシックインプット・アウトプットシステム(BIOS)を含み得る。アプリケーションプログラムはローカルコンピュータ可読媒体(例えばハードディスク244、光ディスク242)に格納され、システムメモリ217にロードされ、そしてプロセッサ214により実行され得る。アプリケーションプログラムは、例えばネットワークインタフェース248又はモデム247を介して、離れた場所(すなわち、離れたところに配置されたコンピュータシステム210)からシステムメモリ217にロードすることもできる。図2において、サービス品質マネージャ101が、システムメモリ217中に存在するとして図示される。サービス品質マネージャ101の働きを、図3と共に、以下でより詳細に説明する。
記憶装置インタフェース234は、1つ以上のハードディスク244(及び/又はその他の標準記憶媒体)に連結されている。(複数の)ハードディスク244は、コンピュータシステム210の一部であってもよく、又は、物理的に別であってもよく、他のインタフェースシステムを介してアクセスされてもよい。
ネットワークインタフェース248及び/又はモデム247は、例えばインターネットなどのネットワーク107に、直接的又は間接的に、通信可能に連結され得る。そのような連結は、有線又は無線であり得る。
図3は、いくつかの実施形態にしたがった、サービス品質マネージャ101の操作を図示する。図3は、クラスタ300の多重物理的コンピュータ210のそれぞれ1つ上の、ハイパーバイザ307にて走っている、サービス品質マネージャ101の例を図示しており、そこで、1つ又はそれ以上のVMs 305が、以下でより詳細に議論されるように、各物理的コンピュータ210上で走る。異なる実施形態において、サービス品質マネージャ101の機能性は、サーバ105、クライアント103上で存在可能であり、又は、サービス品質マネージャ101の機能性が、ネットワーク107にわたるサービスとして提供される、クラウドに基づくコンピュータ環境内を含む、多重コンピュータシステム210間で分配されうることが理解されるべきである。サービス品質マネージャ101が、単一実体として図3で図示されているけれども、図示されたサービス品質マネージャ101が、機能性の集団を表し、望むように、単一又は多重モジュールとして例示化可能であることが理解されるべきである。サービス品質マネージャ101のモジュールが、コンピュータシステム210の少なくとも1つのプロセッサ214がモジュールを処理する時に、コンピュータシステム210が、関連した機能性を実行するように、任意のコンピュータシステム210のシステムメモリ217(例えばRAM、ROM、フラッシュメモリ)内で(例えばオブジェクトコード又は実行可能イメージとして)例示化可能であることが理解されるべきである。本明細書において使用される用語「コンピュータシステム」、「コンピュータ」、「クライアント」、「クライアントコンピュータ」、「サーバ」、「サーバコンピュータ」及び「コンピューティングデバイス」は、記述される機能性を実行するよう構成及び/又はプログラムされた、1つ以上のコンピュータを意味する。さらに、サービス品質マネージャ101の品質の機能性を実行するためのプログラムコードを、プログラムコードがコンピュータメモリ217内にロードされ、コンピュータシステム210の少なくとも1つのプロセッサ214によって実行される時に、コンピュータシステム210が、関連した機能性を実行するように、コンピュータ読み取り可能記憶装置媒体上に保存可能である。磁気又は光学記憶装置媒体のような、任意の形態の非一過性コンピュータ読み取り可能媒体を、本文脈で使用可能である。本明細書において使用される、用語「コンピュータ読み取り可能媒体」は、電気シグナルが、内在物理的媒体から分離することを意味しない。
図3は、バーチャル化環境311と共に、クラスタリング及び記憶装置システム301の文脈で例示化可能なクラスタ300を図示している。図示及び説明の効率のために、クラスタリング及び記憶装置システム301と、バーチャル化環境311両方が、集中型構成要素として図示される。実際、クラスタリング及び記憶装置システム301と、バーチャル化環境311両方は、クラスタ300の至る所で分布される構成要素を含むことが理解されるべきである。図3は、それぞれ2つのVMs 305(ゲスト)を走らせている、2つのホストコンピュータ210を含む、クラスタ300を図示する。VMs 305は、バーチャル化環境311によって提供される。図3は、2つの物理的コンピュータ210のみを描写するが、異なる実施形態において、クラスタ300は、望むように、より多い(又はより少ない)コンピュータシステム210を含むことができることが理解されるべきである。各VM 305は、例えば図2で図示した型の、物理的ホストコンピュータ210上で走る。1つ又はそれ以上のVMs 305は、各ホスト210上で走ることが出来る(1つのVM 305又は2つ以上のVMs 305が、単一のホスト210上で走ることが出来るけれども、ホスト210あたり2つのVMs 305が図3で図示される)。順に、1つ又はそれ以上のアプリケーション313が各VM 305上で走ることが可能である。
図3にて図示したように、ハイパーバイザが、各物理的ホストコンピュータ210上で走る。1つの実施形態において、ハイパーバイザは、ハードウェアレベル、又は「地金」ハイパーバイザ307の形状であり、VM 305及び任意の追加バーチャル化環境ソフトウェアに対する、機能オペレーティングシステムとして働く。本明細書において使用される、用語「ハードウェアレベルハイパーバイザ」は、少なくともいくつかのサービスに対して、少なくとも1つのVM 305と、(ホスト上で走っているオペレーティングシステムと反対の)ホストコンピュータ210のハードウェア間のインタフェースとして機能する構成要素を意味する。ハイパーバイザ307によって実行されるとして本明細書で記述されるサービスが、特定のバーチャル化シナリオのもと、「スーパーバイザバーチャル機械」、「バーチャル機械マネージャ(VMM)」、「サービス分配」、又は「ドメイン0(dom0)」のような、異なる名前を有する構成要素によって実施されることを留意されたい。
1つの実施形態において、バーチャル化環境311は、VMware Inc.によって提供されたソフトウェア形状である。この場合、ハイパーバイザ307は、VMwareハードウェアレベルハイパーバイザVMware ESX 307の形状である。VMwareのハードウェアレベルハイパーバイザ307の名前は、製品リリース間で変化可能であることが理解されるべきである(例えば、ESX Serverと呼ばれていたが、将来違った名前で呼ばれうる)。VMwareに基づくバーチャル化環境311において、サポーティングソフトウェア一組は、VMware vSphereであり、これは、VMwareクラウド対応バーチャル化ソフトウェアパッケージである。VMware vSphereは、ESXの最上で走る。VMwareクラウド対応バーチャル化ソフトウェアパッケージの名前は、製品リリース間で変化可能であることが理解されるべきである。VMwareバーチャル化環境311が本明細書で議論されているけれども、他の実施形態が、同様の機能性と特徴を提供する、他のバーチャル化環境311の文脈にて実行可能であることがさらに理解されるべきである。例えば、他の実施形態において、MicrosoftのHyper−Vのようなバーチャル化環境が使用される。
クラスタによって使用された共有された記憶装置309が、単一の記憶装置デバイス160であるように、図3と共に図示され、記述されるけれども、実際、内在物理的記憶装置デバイス160とともに典型的に実施され、共有された記憶装置309にアクセスしているコンピュータシステム210に対して、単一の記憶装置デバイス160として現れるように、クラスタリング及び記憶装置システム301によってマネージされる。1つの実施形態にしたがった1つのそのようなシナリオのアーキテクチャの例を図4に例示し、これは以下でより詳細に議論される。いくつかの実施形態において、共有された記憶装置309は、バーチャル機械ディスク(VMDK)フォーマット中の一組の1つ又はそれ以上のVMwareディスク(複数可)のような、バーチャル化環境311によって提供されるバーチャル記憶装置の形状である。この型の実施形態を、以下より詳細に記述する。いくつかの実施形態において、クラスタ300が、Veritas Storage Foundation High Availability(SFHA)又はVeritas Storage Foundation Cluster File System High Availability(SFCFSHA)を用いて実行されるが、他の実施形態を、Microsoft Cluster Serverのような、他のクラスタリング及び記憶装置マネージメント環境の文脈にて実行可能である。
図5と共に、より詳細に以下で説明するように、サービス品質マネージャ101が、CPU、メモリ、I/Oバンド幅、I/Oチャネル、記憶装置、性能ブーストキャッシュ、複製リンクなどのような、共有されたコンピュータリソース315の種々の品質を考慮することによって、優先化されたVMs 305及びアプリケーション313に対して、サービス品質を最適化する。用語が本明細書で使用されるように、「共有されたコンピュータリソース」は、バーチャル化を促進するために、コンピュータシステム210上の構成要素間で共有された、任意の物理的又は論理的リソースである。サービス品質マネージャ101は、共有されたリソース315を評価し、それらの優先度507に基づいたVMs 305にサービス品質を提供するために、同一の型のリソース315間の、品質における区別を利用する。言い換えれば、単一ホスト210上で走っており、その上のハイパーバイザ307に、共有されたコンピュータリソース315に対する要求を作成している、多重VMs 305(又はその上で走っているアプリケーション313)が、例えば、種々のレベルの利用性が補償されている異なるカスタマー又は内部クライアントと結んだサービスレベル合意に基づいて、異なる優先度507を持ちうる。従来のハイパーバイザ307は、同一の型の全てではない共有されたコンピュータリソース315が、全ての時間点で、同一の方向で振るまうことを認識することを失敗する。事実、同一の型(例えば多重I/Oチャンネル)の共有されたリソース315が、品質(例えば利用性、バンド幅、信頼度、速度)において大きく様々であり得る。サービス品質マネージャ101は、最適な利用可能なリソース315を、最も高い優先度507を有するVMs 305及び/又はアプリケーション313に対して提供することによって、共有されたリソース315の最適な利用を作る。異なる実施形態において、この機能性が、任意の型の共有されたコンピュータリソース315の間の品質における区別を同定し、それらの優先度507に基づいた特定のVMs 305(又はアプリケーション313)に対して、様々なサービス品質を提供するために使用可能である。
図3は、ハイパーバイザ307レベルにて走っており、ハイパーバイザ307によってVMs 305に割り当てられた共有されたコンピュータリソース315の種々の品質を考慮する、サービス品質を提供しているサービス品質マネージャ101を示す。他の実施形態において、サービス品質マネージャ101が、ハイパーバイザ307以外の構成要素のレベルで走り、バーチャル化の他の形態を促進するために、VMs 305以外の構成要素に対して、共有されたコンピュータリソース315を割り当てることが理解されるべきである。例えば、図6とともに、以下詳細に記述するように、1つの実施形態において、サービス品質マネージャ101が、マルチパス構成要素601/HBA 235レベルにて走り、共有されたリソース315を、バーチャルマルチパスされたディスク603へのアクセスを試みているアプリケーション313へ割り当てる。この記述の目的のために、VM 305が、アプリケーション313の特定化された型であることを想起し、この方法のVMs 305を考えるために有用でありうる。
図4は、いくつかの実施形態にしたがった、共有された記憶装置309アーキテクチャの一例を図示する。インテリジェント記憶装置アレイ190が、多重物理的記憶装置デバイス160を、単一論理的ユニット(LUNs)401内にグループ化する。各LUN 401が、アクセスホスト210又はゲスト305に対する単一記憶装置デバイス160として現れる。クラスタリング及び記憶装置システム301の論理的ボリュームマネージャ403が、各LUN 401の最上に、多重論理的ボリューム405を作成するために、ソフトウェアレベル論理的ボリュームマネージメントを順に提供可能である。図4が、それぞれが3ボリューム405として論理的に処理される2つのLUNs 401を図示するけれども、クラスタ300は、より多い、又はより少ないLUNs 401を含むことが可能であること、及びより多く、又はより少ない論理的ボリューム405が、該LUN 401の最上に構築されうることが理解されるべきである。
図5に移って、サービス品質マネージャ101のモジュールを、1つの実施形態に従って、より詳細に図示する。サービス品質マネージャ101の品質格付け割当モジュール501が、品質格付け503を、ホスト210上のVM 305によって使用されうる各共有されたリソース315へ割り当てる。そのようなコンピュータリソース315の集団が、共有されたコンピュータリソースプール505として考えることが可能である。コンピュータリソース315の品質に影響を与える因子は、静的(例えば、記憶装置デバイスの平均アクセススピード又は内在ハードウェアコンフィギュレーションによって決定されるようなネットワークコネクションの最大スループット)又は動的(例えば、記録装置デバイス上の利用可能な空間の電流量又はコミュニケーションチャンネル上の電流負荷)でありうる。異なる実施形態において、品質格付け割当モジュール501が、静的因子、動的因子、又は2つの組み合わせに基づいて、コンピュータリソース315に品質格付け503を割り当てることができる。コンピュータリソース315の品質が、動的に変化可能であるので、品質格付け割当モジュール501を、プール505中のリソース315を連続的、又は定期的に評価可能であり、(例えば、利用のレベル又は型の関数として変化する、コンピュータリソース315のモニタされたキャパシティへのリアルタイム変化に基づいて)それらの電流状態に基づいて、電流品質格付け503を決定可能である。新しいコンピュータリソース315を、例えば新しいネットワークアダプタをコンピュータデバイス210に加える場合に、プール505に加えることが出来る。これが起こる時に、品質格付け割当モジュール501が、新規コンピュータリソース315を検出し、それを、適切な品質格付け503に割り当てる。
共有されたコンピュータリソースの品質が、任意の内在ハードウェアの特徴の代わり、又は内在ハードウェアの特徴に加えて、そのプログラムコンフィギュレーションの関数であり得ることが理解されるべきである。例えば、図6と共に、より詳細に以下で記述される1つの実施形態において、多重優先度キュー607が、各ホストバスアダプタ(HBA)235に対して維持される。より高い優先度キュー607中のI/Oが、より低い優先度キュー607でのものよりも高い振動数にてHBA 235に送られ、従って、品質格付け割当モジュール501が、より高い優先度キュー607に対して、より高い品質格付け503を割り当てる。しかしながら、HBA 235又は他の内在構成要素の任意の既得特徴と反対に、各キュー607が処理される振動数は、どれくらいプログラム的にマネージされているのかの関数である。
本用語が本明細書で使用されるように、品質格付け503が、共有されたコンピュータリソース315の品質の定量である。異なる内部フォーマットを、異なる実施形態で、品質格付け503を提示するために使用可能である(例えば、スケール上の数字、英数記述、パーセンテージなど)。いくつかの実施形態において、品質格付け503は、異なる型のリソース315に対する、異なる定性的因子を定量する(例えば、記憶装置デバイス、I/Oチャンネルのバンド幅)。いくつかの実施形態において、多重定性因子が、単一定性格付け503によって個々のリソース315に対して定量化される(例えば、定量格付け対象中の別の領域によって表される、キャパシティ、バンド幅及び待ち時間)。他の実施形態において、品質格付け503は、リソースの総品質の単一定量の形状である。
異なるVMs 305は、異なる割り当てられた優先度507を有し、これは、その上で走っているアプリケーション313の相当するサービスレベル合意に基づいて、又は同一のホスト210上で走っている他のVMs 305のものに関して、VMの優先度507を決定する他の因子に依存しうる。1つの実施形態において、優先度507が、VMs 305に割り当てられ、アプリケーション313が、特定のアプリケーション313に提供されるべきサービスレベルに相当している優先度507を有するVMs 305上で走らされる。他の実施形態において、優先度507が、アプリケーション313それ自身に割り当てられ、各VM 305が、その上で走るアプリケーション313のものから、その優先度507をとる。図6と共に、より詳細に以下で記述するように、他の実施形態において、優先度507を、VMs 305の考慮なしに、1つ又はそれ以上の物理的コンピュータ(複数可)210上で走る多重アプリケーション313のそれぞれ1つに割り当てることが可能である。優先度507を、サービス品質保証又は他の因子に基づいて、アドミニストレーター又は他のユーザー(例えば、ユーザーインタフェースを通して)によってVMs 305及び/又はアプリケーション313に割当可能である。例えば、ビジネスで重大なアプリケーションを、高い優先度507を有する特定のVM上で走らせることが可能である。用語が本明細書で使用されるように、優先度507は、同一のホスト又は同様に条件づけられた、他のVMs 305又はアプリケーション313に関して、VM 305又はアプリケーション313に提供されるべき、サービス品質の指標である。異なる内部フォーマットを、異なる実施形態における優先度507(例えば、低−中−高、スケール上の数字など)を提示するために使用可能である。優先度507が、サービス品質マネージャ101がそれらにアクセス可能なように、アクセス可能フォーマット(例えばグローバルデータ構造、データベースなど)中に、(例えばクラスタリング及び記憶装置システム301によって)保存される。
サービス品質マネージャ101の要求受信モジュール509は、コンピュータリソース315のためのハイパーバイザに対して作成された要求511を受信する。サービス品質マネージャ101が、ハイパーバイザ307レベルにて走ることを想起のこと。したがって、要求受信モジュール509は、ハイパーバイザ307に対して作成されたコールを傍受する、又はフィルタすること、及び共有されたコンピュータリソース315を要求するものを同定することによって、ハイパーバイザ307に対して作成された対象の要求511を受信可能である。
サービス品質マネージャ101の優先度同定モジュール513が、共有されたリソース315に対する要求511を作成したVM 305(又はアプリケーション313)の優先度507を同定する。1つの実施形態において、共有されたリソースに対する要求511が、オリジネーターの同定子(例えば、要求511を作成したVM 305のID)でタグ化される。この場合、優先度同定モジュール513が、タグからの要求511のオリジネーターを同定する、例えばグローバルデータ構造から、相当する優先度507を検索する。他の実施形態において、優先度同定モジュール513が、他の方法で、要求511のオリジネーターを同定し、(したがってその優先度507を調べ、検索することが可能である)。例えば、要求511が、共有された記憶装置媒体309にアクセスするための企画の形状である場合、優先度同定モジュール513が、その上で企画されたI/O操作が発生しているLUN 401を決定することによって、要求511のオリジネーターを同定可能である。
共有されたコンピュータリソース315に対する要求511への応答において、サービス品質マネージャ101のリソース割当モジュール515が、リクエスタ(すなわち、VM 305又はアプリケーション313)の優先度507、及びリソース315の品質格付け503に基づいて、プール505から要求された型の特定の共有されたリソース315を割り当てる。1つの実施形態において、この工程には、より高い優先度507を有する構成要素によって作成されたサービス要求511に対して、より高い品質格付け503を有するリソース315を割り当てることが含まれうる。他の実施形態において、より特定のレベルの品質が、割当を作成するために使用される。例えば、優先度は、信頼度、速度、バンド幅などのような重要性の特定の因子を示唆可能であり、これらの特定の因子についての種々の品質格付け503を有する、共有されたリソース315が、相当する因子特異的優先度507を有するVMs 305に割当可能である。両方が一般的で、特定の因子についての、品質格付け503と優先度507両方に対して使用するための粒度の実際のレベルが、望むように実施形態間で様々であり得る。同様に、リソース315を、品質格付け503と優先度507間のマッピングに基づいた要求に対して割り当てるために使用するための実際のロジックが、実施形態間で様々であり得る。共有されたコンピュータリソース315を、品質格付け503と優先度507間の対応に基づいて、VMs 305及びアプリケーション313に割り当てることによって、サービス品質マネージャ101が、サービスレベル合意又はその他によって決定されるように、それらの関連した特定の優先度507と一致して、特定の構成要素に対して、サービス品質を提供可能である。これにより、共有されたリソース315の共通のプール505のより賢明な利用がなされる。
いくつかの実施形態において、サービス品質マネージャ101のロギングモジュール517は、時間にわたり、特定のVMs 305(又はアプリケーション313)によって、共有されたコンピュータリソース315の利用をモニタし、将来の参照のために、ログ519に対して相当する情報を記述する。ロギングモジュール517が、望むように、異なる実施形態において、詳細な様々なレベルの情報をログ可能である。例えば、ログ519は、基礎オーディット/統計学的リソース利用情報、又は例えば、ファイル変更ログのレベルにて、該パスに送られたI/Oのオフセット、記憶装置デバイス、複製リンクなどのような、特定のリソース315にアクセスする場合に使用される実際の値を文書化可能である。ログされた情報を、例えば内部データアップデート(例えば、該パイプ上に送られた増分データ)をコンピュータ計算し、それを、増分バックアップシステムなどのような、オフ−ホスト処理サービス(図示していない)に提供するために使用可能である。
図3に注意を引き戻して、特定の利用の場合が、1つの実施形態に従った、サービス品質マネージャ101の操作を図示することを補助するためにここで記述される。以上で留意したように、1つの実施形態において、バーチャル化環境311は、VMware vSphereプラットフォームの形状であり、ハイパーバイザ307が、VMwareのハードウェアレベルハイパーバイザESXである。本実施形態において、複数のVMs 305が、該ホストコンピュータ210上のESX 307の実例の最上で走り、VMDK 309へ、又はVMDK 309からデータを読み書きするために、ESX 307に対して要求511を作成する。(VMDK 309は、VMware特定フォーマット中のバーチャル機械ディスクである)。リソース割当モジュール515が、これらのI/O操作の特定の1つを、I/O操作を要求したVM 305の優先度507に基づいた、種々の優先度レベル(すなわち種々の品質格付け503)の(共有されたリソース315の一型である)I/Oキュー607に割り当てる。I/Oキュー607が、図3にて特に図示されてはいないが、図6が、異なるレベルの優先度を有するキュー607の形状で、共有されたコンピュータリソース315を図示していることを留意のこと。記述されている特定の利用の場合の例において、ホスト210上で走っている各VM 305は、3つの優先度、高、中又は低の1つを有する。リソース割当モジュール515は、3つのI/Oキュー607の1つを、I/O要求511を、割り当てられたキュー607内に配置することによって、VMs 305からのサービスI/O要求511に割り当てる。3つのキュー607が、それぞれ、高、中及び低の品質格付け503を有する。高の優先度307を有するVMs 305に発生しているI/O要求が、高格付けされたキュー607中に配置され、中格付けされたキュー607中に中優先度VMs 305から発生しているもの、低格付けされたキュー607中に低格付けされたVMs 305からのものが配置される。キュー607が、高優先VMs 305からのI/O要求511が、最も高いサービス品質をもつ、などのように、それらの格付けにしたがってサービスされる。同様の利用の場合において、3つのより多いレベルの品質格付け503と優先度507が使用可能であることが理解されるべきである。
記述されている利用の場合において、優先度同定モジュール513が、内在LUN 401へ、又は内在LUN 401から、要求511が指向されるかを決定することによって、それより該I/O要求511が発生したVM 305(したがってその優先度507)を決定する。この利用の場合、共有された記憶装置309が、VMDKバーチャルディスクの形状であることを想起のこと。したがって、標的LUN 401を決定するために、サービス品質マネージャ101が、I/O操作によって影響を受けるVMDKディスクブロックのマッピング317と、VMDK 309を内在しているLUNs 401の組中の相当するオフセットを作成する。本マッピング317は、標的LUN 401を示唆し、したがって本来のVM 305とその優先度507を示唆する。
異なる方法論を使用して、本利用の場合の異なる実施において、LUN 401マッピング317に対するVMDKディスク309を決定可能である。例えば、1つの実施において、VMwareウェブサービスAPIsを、該VMwareデータストアの部分である、LUNs 401の組を決定するために使用する。記憶装置マッピングを、特定のコマンドラインオプション(コマンド及びコーリングパラメータ(複数可)が、VMware製品の将来のバージョンにて変更可能であるけれども、現在は、「vmkfstools−t0」)を有する該VMwareコマンドを用いて決定する。このコマンドは、一組の汎用一意識別子(UUIDs)中のオフセットに対してVMDKブロックに関するマッピングを出力する。これらのUUIDsは、実際の記憶装置LUNs 401に直接は相関しないが、固定されたオフセット(現在、VMware Virtual Machine File System 4.1中、オフセット00100080)にて開始している個々の記憶装置LUNs 401中で保存される。(以上で記述したようなウェブ−サービスAPIを介して決定されるような)該VMwareデータストアの部分であるデバイス上で、本オフセットにてデータを読むことによって、LUNs 401がどの該UUIDsを有するのか決定される。サービス品質マネージャ101が、「vmkfstools−t0」コマンドによって返されたような、UUIDs中のオフセットに対して、VMDKブロックに関するマッピングを有するので、そしてどのLUN 401がどのUUIDを有したのかを決定したので、サービス品質マネージャ101がここで、LUNs 401に対するVMDKブロックのマッピング317を構築可能である。他の実行において、このマッピング317が、例えば利用可能な場合に、特定のVMware APIsを用いることによって、他の方法で得られることを留意のこと。任意の場合において、マッピング317は、どのVMDKデータのブロックが、どの該LUN 401のオフセット中に残るかを示唆する。本マッピング317に基づいて、マルチパス化構成要素(例えば、VMware ESX環境中のVxDMP)が、どのVM 305該I/Oパケットが来て、向かうのか、したがってどのVM 305が要求511を作成したのか、を決定可能である。マルチパス化は、図6とともに以下でより詳細に議論する。一旦、要求511を作成したVM 305が同定されたならば、優先度同定モジュール513が、そのVM 305の優先度507を同定し、リソース割当モジュール515が、特定のI/O操作を、適合品質格付け503を有するI/Oキュー607へ割り当てる。
ここで図6に移り、サービス品質マネージャ101の他の利用の場合が記述される。図6で図示した利用の場合において、ハイパーバイザ307レベルで走るのではなく、サービス品質マネージャ101が、クラスタリング及び記憶装置システム301のマルチパス化構成要素601のレベルにて走り、いくつかのモジュールがHBA 235レベルで走る。より詳細には、Veritas Volume Manage’s Dynamic Multipathing構成要素のようないくつかの記憶装置マネージメント製品が、支持マルチパス化記憶装置デバイス603を支持する。マルチパス化記憶装置603は、I/Oのイニシエータに対して利用可能とされるバーチャルディスクであり、そこで多重物理的パス605が、バーチャルマルチパス化ディスク603と、内在物理的記憶装置160間に存在する。図6が、物理的記憶装置160に対する2つのパス605を図示し、実際より多い(又はより少ない)パス605が存在しうる。さらに、図6は、単一の構成要素として、物理的記憶媒体160を図示するけれども、典型的に、物理的記憶媒体160は、例えば図4にて図示するような、多重内在物理的記憶媒体デバイス160で実施される。
図6で図示するように、多重アプリケーション313は、コンピュータシステム210のシステムメモリ217中で走り、バーチャルマルチパス化ディスク603を標的としているI/O操作を開始する。応答において、マルチパス構成要素601が、どのパス605が、該I/O操作のために使用されるかを決定する。従来、マルチパス化構成要素601は、どのパス605が、各I/Oに送るのかを決定を下し、該パス605が失敗する場合、パス605間を動的に切り替えるために、従来のロードバランスポリシー(例えば、ラウンドロビン、ミニムンクなど)を利用する。I/Oを、該パス605を下って、物理的記憶装置160に送るために、マルチパス化構成要素601が、I/Oを、該パス605を介して、物理的記憶装置160に連結するように構成された、特定のホストアダプターバス(HBA)に送る。
図6で図示する1つの利用の場合において、サービス品質マネージャ101が、各HBA 235に対する、多重優先度キュー607を維持する。マルチパス化構成要素601が、バーチャルマルチパス化ディスク603を標的としているI/Osを受信し、I/Osを特定のHBAs 235に割り当てるために、そのロードバランシングポリシーを使用する。HBA 235レベルにて、リソース割当モジュール515がついで、キュー607の品質格付け503と、I/O操作を開始したアプリケーション313の優先度507に依存して、該I/Osを、特定のHBA 235に対する特定の優先度キュー607に割り当てる。より詳細には、図6は、HBA 235あたり、それぞれ、高優先度アプリケーション313、中優先度アプリケーション313及び低優先度アプリケーション313からのI/Osに対して、3つの優先度キュー607を図示している。他の実施形態において、さらなる、より少ない、又は異なって格付けされたキュー607が、望むように、HBA 235あたりで維持されうる。
優先度同定モジュール513は、それよりI/Oが発生(例えばI/O要求511又はその上でI/O操作が発生しているLUN 401中のタグから)するアプリケーション313を同定し、したがってアプリケーションの優先度507を同定する、アプリケーション313を同定する。リソース割当モジュール515は、アプリケーション313の優先度507に基づいて、適切な優先度キュー607中に、I/Oを挿入する。例えば、図示した3つのキュー607実施形態において、高の優先度507を有するアプリケーション313より由来しているI/Osが、高優先度キュー607に挿入され、中優先度アプリケーション313からのものが、中優先度キュー607に挿入され、低優先度アプリケーション313からのものが、低優先度キュー607に挿入される。
サービス品質マネージャ101は、それらのそれぞれの優先度に基づいて、その優先度キュー607から、各HBA 235を下って、I/Osを送る。言い換えれば、サービス品質マネージャ101が、高優先度キュー607からほとんどのI/Osを選択し、中優先度キュー607からより少ないI/Osを選択し、低優先度キュー607から、もっとも少ない数のI/Osを選択する。各キュー607から選択するためのI/Osの特定の割合が、相対優先度に基づいて決定可能であり、又はアドミニストレーター又は他のユーザーによって設定可能である。使用するための実際の割合は、可変デザインパラメータであり、異なる割合が、望むように異なる実施形態で使用可能である。それらの発生しているアプリケーション313の優先度507への応答における、I/O操作のこのサービスが、より高い優先度アプリケーション313に対して、高いレベルのサービスを提供する。
図6に図示した利用の場合の他の実施形態において、品質格付け503が、パス605へのキュー607と反対に、又は加えて、特定のパス605それら自身に割り当てられる。慣例的に、ユーザーが、異なる重量を、マルチパスした記憶装置デバイス603の異なるパスに割当可能である。重量をついで、スケジューリングメカニズムとして使用し、各重量が、相当するパス605へ送られているI/Osの割合を決定する。重量はまた、パス605のバンド幅、物理的記憶装置デバイス160に対するホップの数、パス605の定性などのような因子に基づいてフライ上で決定しうる。本実施形態において、品質格付け割当モジュール501が、品質格付け503を、それらの重量に基づいてパス605に割り当てる(例えば、重量が大きければ大きいほど、割り当てられた品質格付け503が高い)。いくつかの実施形態において、それらの割り当てられた重量上のパス605の品質格付け503の土台を作るのではなく、品質格付け割当モジュール501が、その信頼度、速度、利用性などのような因子を活発に測定することによって、各パス605に対する品質格付け503を活発に決定する。そのような因子を測定するために、品質格付け割当モジュール501が、ホップの数、パス605の安定性、過去発生した失敗、記憶装置コントローラアップグレードなどのような因子を、統計学的又は動的にモニタする。いずれの場合において、優先度同定モジュール513がついで、I/Osをマルチパス化記憶装置デバイス603へ送るアプリケーション313の優先度507を同定し、リソース割当モジュール515が、相当する品質格付け501を有するパス605へ各I/Oを送り下す。例えば、高優先度アプリケーションから発生しているI/Osが、最も高い品質格付け503を有するパス605を送り下すなど。いくつかの実施形態において、品質格付け503のパス605への割当と、キュー607への品質格付けの割当を、それらの優先度507に基づいたアプリケーション313へ、サービス品質を提供するために、別に利用することが理解されるべきである。他の実施形態において、これらの特徴を組み合わせて使用する。これらの実施形態において、各I/Oが、発生アプリケーション313の優先度507に基づいて、特定の品質格付け503を有する特定のパス605に割り当てられ、ついで、さらに、再び、発生アプリケーションの優先度507(例えば異なるレベルの粒度にて)に基づいて、そのパス605に対する特定の優先度キュー607に割り当てられる。
図6の使用の場合を、ホストランニング多重VMs 305に適用するために、優先度507を、以上で記述したように、VMs 305に割り当てることが可能であり、特定のアプリケーション313を、適切な優先度507を有するVM 305上で走らせることが可能である。
当該技術分野を知る業者には理解されるように、本発明は、その趣旨又は本質的特徴から逸脱することなく、他の具体的な形態で実施することができる。同様に、部分、モジュール、エージェント、マネージャ、構成要素、機能、手順、処置、階層、特徴、属性、方法論、データ構造、及びその他の態様の具体的な名称及び区分は、必須のものでも重要なものでもなく、本発明又はその特徴を実施するメカニズムは、別の名称、区分、及び/又は形式を有し得る。説明目的のための上記の記述は、特定の実施形態を参照して記述されている。しかしながら、上記の例示的議論は網羅的であることを意図したものではなく、開示されている正確な形態に限定することを意図したものでもない。上述の教示を考慮して、多くの修正及び変更が可能である。実施形態は、関連する原理及びその実際的な適用を最適に説明するよう選択かつ記述されており、これにより、他の当業者が、想到される特定の使用に好適であり得るような様々な改変を行うか行わないかにかかわらず、様々な実施形態を最適に利用できる。

Claims (15)

  1. 様々な品質の、複数の共有されたコンピュータリソースの異なる1つに基づいて、物理的コンピュータ上の優先化されたアプリケーションに提供されたサービスの品質を最適化するためのコンピュータ実施方法であって、
    品質格付けを、複数の共有されたコンピュータリソースのそれぞれ1つに動的に割り当てることであって、各共有されたコンピュータリソースが、物理的コンピュータ上で走っている多重アプリケーションによってアクセス可能である、品質格付けを割り当てることと、
    前記物理的コンピュータ上で走っている特定のアプリケーションによって作成された、共有されたコンピュータリソースに対する要求を受信することであって、各特定のアプリケーションが優先度を有する、要求を受信することと、
    各特定の受信した要求に対して、前記特定の要求しているアプリケーションの電流優先度を同定することと、
    各特定の受信した要求への応答において、前記特定の要求しているアプリケーションの電流優先度と、特定の共有されたコンピュータリソースの電流品質格付けとに基づいて、特定の共有されたコンピュータリソースを、前記特定の要求しているアプリケーションに割り当てて、それによって、それらの電流優先度に相当する要求しているアプリケーションに、サービスの品質を提供することと、を含む方法。
  2. 前記物理的コンピュータ上で走っている前記多重アプリケーションにさらに、単一ホスト上で走っている複数のバーチャル機械が含まれる、請求項1に記載の方法。
  3. 前記物理的コンピュータ上で走っている前記多重アプリケーションのそれぞれにさらに、単一ホスト上で走っている特定のバーチャル機械上で走っているアプリケーションが含まれる、請求項1に記載の方法。
  4. 前記複数の共有されたコンピュータリソースのそれぞれ1つにさらに、可視化を促進することにおいて、前記物理的コンピュータ上で走っている多重アプリケーション間で共有されるリソースが含まれる、請求項1に記載の方法。
  5. さらに、
    前記複数の共有されたコンピュータリソースのそれぞれ1つを定期的に評価することと、
    特定の共有されたコンピュータリソースの電流状態に基づいて、特定の評価された共有されたコンピュータリソースに対して、特定の電流品質格付けを決定することと、
    前記特定の共有されたコンピュータリソースに対して、前記電流品質格付けを割り当てることと、を含む、請求項1に記載の方法。
  6. 少なくとも1つの割り当てられた品質格付けが、特定の型の共有されたコンピュータリソースについての複数の定性因子を定量化する、請求項1に記載の方法。
  7. 少なくとも1つの割り当てられた品質格付けが、特定の共有されたコンピュータリソースに関する、複数の定性因子を定量化する、請求項1に記載の方法。
  8. 少なくとも1つの割当てられた品質格付けにさらに、特定の共有されたコンピュータリソースの総品質の、単一の定量化が含まれる、請求項1に記載の方法。
  9. 特定のアプリケーションの優先度にさらに、前記物理的コンピュータ上で走っている他のアプリケーションに対して、特定のアプリケーションに現在提供されるべきサービスの品質の示唆が含まれる、請求項1に記載の方法。
  10. 特定の要求しているアプリケーションの優先度を同定することに、さらに、
    共有されたコンピュータリソースに対して特定の受信された要求を作成した、前記特定のアプリケーションを同定することと、
    前記特定のアプリケーションの電流優先度を取り込むことと、が含まれる、請求項1に記載の方法。
  11. 特定のアプリケーションによって作成された共有されたコンピュータリソースに対する要求を受信することにさらに、特定の記憶装置デバイスを標的としている入力/出力(IO)操作を開始するために、要求を受信することが含まれ、
    複数の共有されたコンピュータリソースにさらに、前記特定の記憶装置デバイスを査定するための複数のキューが含まれ、前記複数の各キューが、異なるレベルの優先度を有する特定の記憶装置デバイスを査定するために設定され、
    特定の要求しているアプリケーションに対して、特定の共有されたコンピュータリソースを割り当てることにさらに、前記特定の要求しているアプリケーションに対して、キューの特定の1つを割り当てることが含まれる、請求項1に記載の方法。
  12. 前記物理的コンピュータ上で走っている特定のアプリケーションによって作成された共有されたコンピュータリソースに対する要求を受信することにさらに、
    マルチパス子構成要素に対して、特定のアプリケーションによって作成されたマルチパスされた記憶装置デバイスにアクセスするために、要求を受信すること、が含まれる、請求項1に記載の方法。
  13. 前記複数の共有されたコンピュータリソースがさらに、i)物理的記憶装置への多重パスの特定の1つにアクセスするための複数のキューと、ii)物理的記憶装置への複数のパスと、を含み、
    複数の共有されたコンピュータリソースのそれぞれ1つに、品質格付けを割り当てることにさらに、i)複数の各キューに対して特定のレベルの優先度を割り当てることが含まれ、又はii)各特定の品質格付けが、特定のパスの品質の定量化として、複数の特定のパスに割り当てられる、請求項12に記載の方法。
  14. 複数の共有されたコンピュータリソースの異なる1つの種々の品質に基づいて、物理的コンピュータ上の優先化されたアプリケーションに提供された、サービスの品質を最適化するための、少なくとも1つの非一過性コンピュータ読み取り可能記憶装置媒体であって、コンピュータメモリ内にロードし、コンピュータデバイスの少なくとも1つのプロセッサによって実行した時に、前記コンピュータデバイスが、以下の段階、
    品質格付けを、複数の共有されたコンピュータリソースのそれぞれ1つに動的に割りあてることであって、各共有されたコンピュータリソースが、物理的コンピュータ上で走っている多重アプリケーションによってアクセス可能である、品質格付けを割り当てることと、
    前記物理的コンピュータ上で走っている特定のアプリケーションによって作成された、共有されたコンピュータリソースに対する要求を受信することであって、各特定のアプリケーションが優先度を有する、要求を受信することと、
    各特定の受信された要求に対して、特定の要求しているプリケーションの電流優先度を同定することと、
    各特定の受信された要求への応答において、前記特定の要求しているアプリケーションの電流優先度と、前記特定の共有されたコンピュータリソースの電流品質格付けとに基づいて、特定の共有されたコンピュータリソースを、前記特定の要求しているプリケーションに割り当て、それによって、それらの電流優先度に相当する要求しているアプリケーションに、サービスの品質を提供することと、を実施することを引き起こす、コンピュータ実行可能命令を記憶している、少なくとも1つの非一過性コンピュータ読み取り可能記憶装置媒体。
  15. 複数の共有されたコンピュータリソースの異なる1つの種々の品質に基づいて、物理的コンピュータ上の優先化されたアプリケーションに提供されたサービスの品質を最適化するためのコンピュータシステムであって、
    システムメモリと、
    前記システムメモリ内に存在している品質格付け割当モジュールであって、複数の共有されたコンピュータリソースのそれぞれ1つに対して、品質格付けを動的に割り当てるためにプログラムされ、各共有されたコンピュータリソースが、多重アプリケーションによってアクセス可能である、品質格付け割当モジュールと、
    前記システムメモリ内に存在している要求受信モジュールであって、特定のアプリケーションによって作成された共有コンピュータリソースに対する要求を受信するためにプログラムされ、各特定のアプリケ−ションが優先度を有する、要求受信モジュールと、
    前記システムメモリ内に存在している優先度同定モジュールであって、各特定の受信された要求に対して、前記特定の要求しているアプリケーションの電流優先度を同定するようにプログラムされる、優先度同定モジュールと、
    前記システムメモリ内に存在しているリソース割当モジュールであって、各特定の受信された要求への応答において、前記特定の要求しているアプリケーションの電流優先度と、前記特定の共有されたコンピュータリソースの電流品質格付けとに基づいて、特定の共有されたコンピュータリソースを、特定の要求しているプリケーションに割り当て、それによって、それらの電流優先度に相当する要求しているアプリケーションに、サービスの品質を提供するようにプログラムされる、リソース割当モジュールと、を含む、コンピュータシステム。
JP2015549380A 2012-12-19 2013-10-31 優先度が付与された複数のバーチャルマシン及び複数のアプリケーションに対して、共有された複数のリソースの品質に基づいて、サービスの品質を提供すること Active JP6321031B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/720,566 US9515899B2 (en) 2012-12-19 2012-12-19 Providing optimized quality of service to prioritized virtual machines and applications based on quality of shared resources
US13/720,566 2012-12-19
PCT/US2013/067806 WO2014099141A1 (en) 2012-12-19 2013-10-31 Providing optimized quality of service to prioritized virtual machines and applications based on quality of shared resources

Publications (3)

Publication Number Publication Date
JP2016505965A true JP2016505965A (ja) 2016-02-25
JP2016505965A5 JP2016505965A5 (ja) 2018-01-25
JP6321031B2 JP6321031B2 (ja) 2018-05-09

Family

ID=50932312

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015549380A Active JP6321031B2 (ja) 2012-12-19 2013-10-31 優先度が付与された複数のバーチャルマシン及び複数のアプリケーションに対して、共有された複数のリソースの品質に基づいて、サービスの品質を提供すること

Country Status (5)

Country Link
US (3) US9515899B2 (ja)
EP (1) EP2936333B1 (ja)
JP (1) JP6321031B2 (ja)
CN (1) CN104937584B (ja)
WO (1) WO2014099141A1 (ja)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8922243B2 (en) 2012-12-23 2014-12-30 Advanced Micro Devices, Inc. Die-stacked memory device with reconfigurable logic
US9697147B2 (en) 2012-08-06 2017-07-04 Advanced Micro Devices, Inc. Stacked memory device with metadata management
US9135185B2 (en) 2012-12-23 2015-09-15 Advanced Micro Devices, Inc. Die-stacked memory device providing data translation
US9170948B2 (en) * 2012-12-23 2015-10-27 Advanced Micro Devices, Inc. Cache coherency using die-stacked memory device with logic die
US9065722B2 (en) 2012-12-23 2015-06-23 Advanced Micro Devices, Inc. Die-stacked device with partitioned multi-hop network
US9201777B2 (en) * 2012-12-23 2015-12-01 Advanced Micro Devices, Inc. Quality of service support using stacked memory device with logic die
US9274817B1 (en) * 2012-12-31 2016-03-01 Emc Corporation Storage quality-of-service control in distributed virtual infrastructure
US9184982B2 (en) * 2013-01-15 2015-11-10 Hewlett-Packard Development Company, L.P. Balancing the allocation of virtual machines in cloud systems
US10749711B2 (en) 2013-07-10 2020-08-18 Nicira, Inc. Network-link method useful for a last-mile connectivity in an edge-gateway multipath system
US10454714B2 (en) 2013-07-10 2019-10-22 Nicira, Inc. Method and system of overlay flow control
US9286948B2 (en) 2013-07-15 2016-03-15 Advanced Micro Devices, Inc. Query operations for stacked-die memory device
CN105378669A (zh) * 2013-07-19 2016-03-02 惠普发展公司,有限责任合伙企业 虚拟机资源管理系统及其方法
US9686171B1 (en) 2013-07-22 2017-06-20 Veritas Technologies Systems and methods for attributing input/output statistics networks to region-mapped entities
EP3092560B1 (en) * 2014-01-06 2019-05-08 Johnson Controls Technology Company Vehicle with multiple user interface operating domains
US9952946B2 (en) 2014-02-04 2018-04-24 Telefonaktiebolaget L M Ericsson (Publ) Managing service availability in a mega virtual machine
CA2882446A1 (en) * 2014-02-21 2015-08-21 Coho Data, Inc. Methods, systems and devices for parallel network interface data structures with differential data storage service capabilities
US10437624B2 (en) * 2014-06-10 2019-10-08 Hewlett Packard Enterprise Development Lp Service level based categorization of virtual machines
JP6361390B2 (ja) * 2014-09-10 2018-07-25 富士通株式会社 ストレージ制御装置および制御プログラム
US9792057B1 (en) * 2014-09-23 2017-10-17 Primaryio, Inc. Data caching system and method for hypervisor-based computer systems
US9563475B2 (en) * 2014-09-30 2017-02-07 International Business Machines Corporation Merging connection pools to form a logical pool of connections during a preset period of time thereby more efficiently utilizing connections in connection pools
EP3197111B1 (en) * 2014-10-13 2019-05-01 Huawei Technologies Co., Ltd. Service optimization methods, transport controllers, client controller and system
US10296419B1 (en) * 2015-03-27 2019-05-21 EMC IP Holding Company LLC Accessing a virtual device using a kernel
US10425382B2 (en) 2015-04-13 2019-09-24 Nicira, Inc. Method and system of a cloud-based multipath routing protocol
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US10135789B2 (en) 2015-04-13 2018-11-20 Nicira, Inc. Method and system of establishing a virtual private network in a cloud service for branch networking
US9703651B2 (en) * 2015-06-15 2017-07-11 Vmware, Inc. Providing availability of an agent virtual computing instance during a storage failure
CN108984112B (zh) * 2015-09-29 2022-02-25 华为数字技术(成都)有限公司 存储QoS控制策略的实现方法及装置
US9959061B1 (en) * 2015-09-30 2018-05-01 EMC IP Holding Company LLC Data synchronization
CN105487813A (zh) * 2015-10-21 2016-04-13 国家电网公司 一种分布式存储的多路径i/o传输方法
CN106980463A (zh) * 2016-01-18 2017-07-25 中兴通讯股份有限公司 存储系统的服务质量控制方法和装置
CN106982238B (zh) * 2016-01-18 2020-07-28 华为技术有限公司 一种分配网络路径资源的方法、策略控制中心以及主机
US11212125B2 (en) 2016-02-05 2021-12-28 International Business Machines Corporation Asset management with respect to a shared pool of configurable computing resources
CN105975343B (zh) * 2016-05-10 2019-10-15 广东睿江云计算股份有限公司 一种云主机系统中服务质量的控制方法及装置
CN107688492B (zh) * 2016-08-05 2021-11-09 阿里巴巴集团控股有限公司 资源的控制方法、装置和集群资源管理系统
US10678603B2 (en) * 2016-09-01 2020-06-09 Microsoft Technology Licensing, Llc Resource oversubscription based on utilization patterns in computing systems
US10430249B2 (en) 2016-11-02 2019-10-01 Red Hat Israel, Ltd. Supporting quality-of-service for virtual machines based on operational events
US20180131633A1 (en) * 2016-11-08 2018-05-10 Alibaba Group Holding Limited Capacity management of cabinet-scale resource pools
WO2018106772A1 (en) * 2016-12-08 2018-06-14 Ab Initio Technology Llc Computational resource allocation
US11290392B2 (en) * 2017-01-30 2022-03-29 Intel Corporation Technologies for pooling accelerator over fabric
US11121962B2 (en) 2017-01-31 2021-09-14 Vmware, Inc. High performance software-defined core network
US10992568B2 (en) 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US20200036624A1 (en) 2017-01-31 2020-01-30 The Mode Group High performance software-defined core network
US11706127B2 (en) 2017-01-31 2023-07-18 Vmware, Inc. High performance software-defined core network
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US10992558B1 (en) 2017-11-06 2021-04-27 Vmware, Inc. Method and apparatus for distributed data network traffic optimization
US11252079B2 (en) 2017-01-31 2022-02-15 Vmware, Inc. High performance software-defined core network
US10574528B2 (en) 2017-02-11 2020-02-25 Nicira, Inc. Network multi-source inbound quality of service methods and systems
US10778528B2 (en) 2017-02-11 2020-09-15 Nicira, Inc. Method and system of connecting to a multipath hub in a cluster
CN107368367B (zh) * 2017-05-23 2021-03-02 创新先进技术有限公司 资源分配的处理方法、装置及电子设备
US10523539B2 (en) 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
US20190007747A1 (en) * 2017-06-29 2019-01-03 Intel Corporation Technologies for providing adaptive platform quality of service
US10318425B2 (en) 2017-07-12 2019-06-11 International Business Machines Corporation Coordination of cache and memory reservation
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US10999100B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider
US10959098B2 (en) 2017-10-02 2021-03-23 Vmware, Inc. Dynamically specifying multiple public cloud edge nodes to connect to an external multi-computer node
US10999165B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Three tiers of SaaS providers for deploying compute and network infrastructure in the public cloud
US11089111B2 (en) 2017-10-02 2021-08-10 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US11516049B2 (en) 2017-10-02 2022-11-29 Vmware, Inc. Overlay network encapsulation to forward data message flows through multiple public cloud datacenters
CN109725829B (zh) * 2017-10-27 2021-11-05 伊姆西Ip控股有限责任公司 用于数据存储系统的端到端QoS解决方案的系统和方法
US11223514B2 (en) 2017-11-09 2022-01-11 Nicira, Inc. Method and system of a dynamic high-availability mode based on current wide area network connectivity
US20190205153A1 (en) * 2017-12-29 2019-07-04 Virtual Instruments Corporation System and method of dynamically assigning device tiers based on application
CN110096355B (zh) * 2018-01-29 2024-04-09 阿里巴巴集团控股有限公司 一种共享资源分配方法、装置和设备
CN109062685A (zh) * 2018-07-09 2018-12-21 郑州云海信息技术有限公司 云数据系统中资源的管理方法和装置
US10956211B2 (en) * 2019-02-25 2021-03-23 GM Global Technology Operations LLC Method and apparatus of allocating automotive computing tasks to networked devices with heterogeneous capabilities
US11755376B2 (en) * 2019-08-23 2023-09-12 Callidus Software, Inc. Automatic assignment of hardware/software resources to different entities using machine learning based on determined scores for assignment solutions
US11018995B2 (en) 2019-08-27 2021-05-25 Vmware, Inc. Alleviating congestion in a virtual network deployed over public clouds for an entity
US11044190B2 (en) 2019-10-28 2021-06-22 Vmware, Inc. Managing forwarding elements at edge nodes connected to a virtual network
US11489783B2 (en) 2019-12-12 2022-11-01 Vmware, Inc. Performing deep packet inspection in a software defined wide area network
US11394640B2 (en) 2019-12-12 2022-07-19 Vmware, Inc. Collecting and analyzing data regarding flows associated with DPI parameters
US20210234804A1 (en) 2020-01-24 2021-07-29 Vmware, Inc. Accurate traffic steering between links through sub-path path quality metrics
US11650654B2 (en) * 2020-04-14 2023-05-16 Microsoft Technology Licensing, Llc Managing power resources for pools of virtual machines
CN111708633A (zh) * 2020-05-28 2020-09-25 北京赛博云睿智能科技有限公司 一种资源动态调整方法及系统
US11245641B2 (en) 2020-07-02 2022-02-08 Vmware, Inc. Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN
US11363124B2 (en) 2020-07-30 2022-06-14 Vmware, Inc. Zero copy socket splicing
US11575591B2 (en) 2020-11-17 2023-02-07 Vmware, Inc. Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN
US11575600B2 (en) 2020-11-24 2023-02-07 Vmware, Inc. Tunnel-less SD-WAN
US11929903B2 (en) 2020-12-29 2024-03-12 VMware LLC Emulating packet flows to assess network links for SD-WAN
US11792127B2 (en) 2021-01-18 2023-10-17 Vmware, Inc. Network-aware load balancing
US11979325B2 (en) 2021-01-28 2024-05-07 VMware LLC Dynamic SD-WAN hub cluster scaling with machine learning
CN112769629A (zh) * 2021-02-26 2021-05-07 北京百度网讯科技有限公司 带宽分配方法、装置、电子设备及存储介质
CN113225265B (zh) * 2021-04-28 2022-10-28 北京百度网讯科技有限公司 流量控制方法、装置、设备和计算机存储介质
US11509571B1 (en) 2021-05-03 2022-11-22 Vmware, Inc. Cost-based routing mesh for facilitating routing through an SD-WAN
US11729065B2 (en) 2021-05-06 2023-08-15 Vmware, Inc. Methods for application defined virtual network service among multiple transport in SD-WAN
US11489720B1 (en) 2021-06-18 2022-11-01 Vmware, Inc. Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics
US11375005B1 (en) 2021-07-24 2022-06-28 Vmware, Inc. High availability solutions for a secure access service edge application
US11943146B2 (en) 2021-10-01 2024-03-26 VMware LLC Traffic prioritization in SD-WAN
CN114185650B (zh) * 2021-12-14 2023-07-25 平安壹账通云科技(深圳)有限公司 Linux系统下识别SCSI设备的方法、系统、设备及存储介质
US11909815B2 (en) 2022-06-06 2024-02-20 VMware LLC Routing based on geolocation costs
KR20240015952A (ko) * 2022-07-28 2024-02-06 삼성전자주식회사 컴퓨팅 장치 및 그 동작 방법
CN117608867B (zh) * 2024-01-24 2024-04-05 苏州元脑智能科技有限公司 存储io请求处理方法、装置、电子设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004362425A (ja) * 2003-06-06 2004-12-24 Nec Corp 資源競合制御システム及び制御方法並びにプログラム
JP2007305101A (ja) * 2006-04-10 2007-11-22 Fujitsu Ltd 資源ブローカリングプログラム、該プログラムを記録した記録媒体、資源ブローカリング装置、および資源ブローカリング方法
JP2008041100A (ja) * 2006-08-07 2008-02-21 Internatl Business Mach Corp <Ibm> データ処理システムにおけるリソース共有とアプリケーション待ち時間のバランシング方法
WO2008132924A1 (ja) * 2007-04-13 2008-11-06 Nec Corporation 仮想計算機システムおよびその最適化方法

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6101180A (en) 1996-11-12 2000-08-08 Starguide Digital Networks, Inc. High bandwidth broadcast system having localized multicast access to broadcast content
US6332023B1 (en) * 1998-06-04 2001-12-18 Mci Communications Corporation Method of and system for providing services in a communications network
US6640248B1 (en) * 1998-07-10 2003-10-28 Malibu Networks, Inc. Application-aware, quality of service (QoS) sensitive, media access control (MAC) layer
US6856627B2 (en) 1999-01-15 2005-02-15 Cisco Technology, Inc. Method for routing information over a network
US20040205414A1 (en) 1999-07-26 2004-10-14 Roselli Drew Schaffer Fault-tolerance framework for an extendable computer architecture
US7171654B2 (en) * 2000-05-25 2007-01-30 The United States Of America As Represented By The Secretary Of The Navy System specification language for resource management architecture and corresponding programs therefore
DE60034582T2 (de) * 2000-12-14 2008-01-31 Lucent Technologies Inc. Verfahren zur Regelung der Dienstgüte eines CDMA-basierenden Systems
US7243142B2 (en) 2002-02-01 2007-07-10 Sun Microsystems, Inc Distributed computer system enhancing a protocol service to a highly available service
FR2835987B1 (fr) * 2002-02-14 2005-04-29 Cit Alcatel Controle d'admission a un reseau de donnees pour l'assurance de la qualite de service
US7299285B2 (en) * 2002-05-15 2007-11-20 Adc Dsl Systems, Inc. Resource sharing with database synchronization
CN100426733C (zh) * 2003-01-16 2008-10-15 华为技术有限公司 网络通信中实现资源分配的系统及其方法
JP4129473B2 (ja) 2003-05-27 2008-08-06 ノキア コーポレイション コンピュータクラスタにおけるデータ収集
US7551552B2 (en) 2003-10-17 2009-06-23 Microsoft Corporation Method for providing guaranteed distributed failure notification
US7644013B2 (en) * 2003-12-04 2010-01-05 American Express Travel Related Services Company, Inc. System and method for resource optimization
US8104033B2 (en) * 2005-09-30 2012-01-24 Computer Associates Think, Inc. Managing virtual machines based on business priorty
US8212832B2 (en) * 2005-12-08 2012-07-03 Ati Technologies Ulc Method and apparatus with dynamic graphics surface memory allocation
JP2007188398A (ja) * 2006-01-16 2007-07-26 Seiko Epson Corp マルチプロセッサシステム、マルチプロセッサシステムの制御方法をコンピュータに実行させるためのプログラム。
US8144587B2 (en) * 2006-08-22 2012-03-27 Embarq Holdings Company, Llc System and method for load balancing network resources using a connection admission control engine
US20080162735A1 (en) * 2006-12-29 2008-07-03 Doug Voigt Methods and systems for prioritizing input/outputs to storage devices
US7711822B1 (en) * 2007-03-26 2010-05-04 Oracle America, Inc. Resource management in application servers
GB0706283D0 (en) * 2007-03-30 2007-05-09 British Telecomm Data network monitoring system and method
US7802286B2 (en) * 2007-07-24 2010-09-21 Time Warner Cable Inc. Methods and apparatus for format selection for network optimization
US8584128B1 (en) * 2007-09-10 2013-11-12 Emc Corporation Techniques for adjusting priorities associated with servicing requests
US8117495B2 (en) 2007-11-26 2012-02-14 Stratus Technologies Bermuda Ltd Systems and methods of high availability cluster environment failover protection
US7802057B2 (en) * 2007-12-27 2010-09-21 Intel Corporation Priority aware selective cache allocation
JP5120061B2 (ja) * 2008-05-15 2013-01-16 富士通株式会社 優先度制御プログラム、優先度制御装置、及び優先度制御方法
US8347302B1 (en) * 2008-10-09 2013-01-01 Amazon Technologies, Inc. System-aware resource scheduling
WO2010066430A1 (en) * 2008-12-10 2010-06-17 Nec Europe Ltd. A method for operating at least one virtual network on a substrate network and a virtual network environment
US8213310B2 (en) * 2009-02-25 2012-07-03 Qualcomm Incorporated High-priority communications session within a wireless communications system
US8676976B2 (en) * 2009-02-25 2014-03-18 International Business Machines Corporation Microprocessor with software control over allocation of shared resources among multiple virtual servers
US8321558B1 (en) * 2009-03-31 2012-11-27 Amazon Technologies, Inc. Dynamically monitoring and modifying distributed execution of programs
DE102009016742B4 (de) * 2009-04-09 2011-03-10 Technische Universität Braunschweig Carolo-Wilhelmina Mehrprozessor-Computersystem
JP5609868B2 (ja) * 2009-05-15 2014-10-22 日本電気株式会社 ワークフロー監視制御システム、監視制御方法および監視制御プログラム
US8627015B2 (en) * 2009-07-31 2014-01-07 Emc Corporation Data processing system using cache-aware multipath distribution of storage commands among caching storage controllers
US8321569B2 (en) * 2009-12-17 2012-11-27 International Business Machines Corporation Server resource allocation
US8295305B2 (en) * 2009-12-30 2012-10-23 International Business Machines Corporation Dual scheduling of work from multiple sources to multiple sinks using source and sink attributes to achieve fairness and processing efficiency
US8266474B2 (en) 2009-12-30 2012-09-11 Symantec Corporation Fast cluster failure detection
CN101783768A (zh) * 2010-03-08 2010-07-21 东南大学 基于资源预留的网格服务质量保证方法
US8464255B2 (en) * 2010-03-12 2013-06-11 Microsoft Corporation Managing performance interference effects on cloud computing servers
US9262346B2 (en) * 2010-06-21 2016-02-16 Hewlett Packard Enterprises Development LP Prioritizing input/outputs at a host bus adapter
US8984519B2 (en) * 2010-11-17 2015-03-17 Nec Laboratories America, Inc. Scheduler and resource manager for coprocessor-based heterogeneous clusters
US20120159090A1 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Scalable multimedia computer system architecture with qos guarantees
US20130007755A1 (en) * 2011-06-29 2013-01-03 International Business Machines Corporation Methods, computer systems, and physical computer storage media for managing resources of a storage server
US9158568B2 (en) * 2012-01-30 2015-10-13 Hewlett-Packard Development Company, L.P. Input/output operations at a virtual block device of a storage server
US20140130055A1 (en) * 2012-02-14 2014-05-08 Aloke Guha Systems and methods for provisioning of storage for virtualized applications
US9164789B2 (en) * 2012-02-29 2015-10-20 Red Hat Israel, Ltd. Multiple queue management and adaptive CPU matching in a virtual computing system
CN102662750A (zh) * 2012-03-23 2012-09-12 上海交通大学 基于弹性虚拟机池的虚拟机资源优化控制方法及其系统
US20140006620A1 (en) * 2012-06-27 2014-01-02 International Business Machines Corporation System, method and program product for local client device context-aware shared resource and service management
US9043789B2 (en) * 2012-09-05 2015-05-26 Red Hat Israel, Ltd. Managing safe removal of a passthrough device in a virtualization system
US9009705B2 (en) * 2012-10-01 2015-04-14 International Business Machines Corporation Authenticated distribution of virtual machine images
US9454670B2 (en) * 2012-12-03 2016-09-27 International Business Machines Corporation Hybrid file systems
WO2014087518A1 (ja) * 2012-12-06 2014-06-12 株式会社 日立製作所 ネットワークシステム及びその運用方法
US9086902B2 (en) * 2012-12-18 2015-07-21 International Business Machines Corporation Sending tasks between virtual machines based on expiration times

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004362425A (ja) * 2003-06-06 2004-12-24 Nec Corp 資源競合制御システム及び制御方法並びにプログラム
JP2007305101A (ja) * 2006-04-10 2007-11-22 Fujitsu Ltd 資源ブローカリングプログラム、該プログラムを記録した記録媒体、資源ブローカリング装置、および資源ブローカリング方法
JP2008041100A (ja) * 2006-08-07 2008-02-21 Internatl Business Mach Corp <Ibm> データ処理システムにおけるリソース共有とアプリケーション待ち時間のバランシング方法
WO2008132924A1 (ja) * 2007-04-13 2008-11-06 Nec Corporation 仮想計算機システムおよびその最適化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
OLIVER NIEHORSTER, ANDRE BRINKMANN, AXEL KELLER, CHRISTOPH KLEINEWEBER, JENS KRUGER, JENS SIMON: "Cost-Aware and SLO-Fulfilling Software as a Service", JOURNAL OF GRID COMPUTING, vol. Volume:10, Issue:3, JPN7018000653, September 2012 (2012-09-01), US, pages Pages:553-577 *

Also Published As

Publication number Publication date
JP6321031B2 (ja) 2018-05-09
EP2936333A4 (en) 2016-10-05
EP2936333A1 (en) 2015-10-28
WO2014099141A4 (en) 2014-08-14
US10338950B1 (en) 2019-07-02
WO2014099141A1 (en) 2014-06-26
CN104937584B (zh) 2018-08-07
US20190347122A1 (en) 2019-11-14
US11599374B2 (en) 2023-03-07
US20140173113A1 (en) 2014-06-19
EP2936333B1 (en) 2020-03-18
CN104937584A (zh) 2015-09-23
US9515899B2 (en) 2016-12-06

Similar Documents

Publication Publication Date Title
US11599374B2 (en) System and method for providing preferential I/O treatment to devices that host a critical virtual machine
US11579991B2 (en) Dynamic allocation of compute resources at a recovery site
US11182220B2 (en) Proactive high availability in a virtualized computer system
JP6199514B2 (ja) ファブリック分散リソースのスケジューリング
US9760395B2 (en) Monitoring hypervisor and provisioned instances of hosted virtual machines using monitoring templates
US11068361B2 (en) Cluster file system support for extended network service addresses
US20170193015A1 (en) Providing a database as a service in a multi-tenant environment
US11016819B2 (en) Optimizing clustered applications in a clustered infrastructure
US9223606B1 (en) Automatically configuring and maintaining cluster level high availability of a virtual machine running an application according to an application level specified service level agreement
US20180232249A1 (en) Virtual machine migration between software defined storage systems
US10616134B1 (en) Prioritizing resource hosts for resource placement
US10944815B2 (en) Service location management in computing systems
US10754368B1 (en) Method and system for load balancing backup resources
US10776173B1 (en) Local placement of resource instances in a distributed system
US10587529B1 (en) Dynamic selection of router groups to manage computing instances
US10481963B1 (en) Load-balancing for achieving transaction fault tolerance
US11360798B2 (en) System and method for internal scalable load service in distributed object storage system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161027

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20170516

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20170525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170526

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170526

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170926

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20171208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20171208

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180404

R150 Certificate of patent or registration of utility model

Ref document number: 6321031

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250