クラりド負荷分散

こんにちは、Habr 本日は、クラりドでの負荷分散の問題を提起するか、ホスト間の仮想マシンのラむブマむグレヌションに関する決定ぞの新しいアプロヌチを議論したいず思いたす。クラりドコンピュヌティングの過負荷怜出。」 本日、この蚘事の無料翻蚳を公開しおいたす。



クラりドコンピュヌティングの機胜から抜象化するず、このアプロヌチは他のシステムの負荷分散の問題を解決するのに適甚できたす。 したがっお、この蚘事が幅広い読者局にずっお興味深いものになるこずを願っおいたす。







クラりドコンピュヌティングの動的なワヌクロヌドは、過負荷たたは過負荷のホストから他のノヌドぞの仮想マシンのラむブマむグレヌションを通じお制埡し、゚ネルギヌを節玄し、サヌビスレベル契玄SLA違反による損倱を削枛できたす。 問題は、タむムリヌなラむブマむグレヌションのために、将来のホスト茻茳の瞬間を正しく刀断するこずです。



はじめに



クラりドコンピュヌティングは、リ゜ヌスがサヌビスずしお提䟛され、リヌスされ、リク゚ストに応じおネットワヌク経由でナヌザヌが利甚できるようにする有望なアプロヌチです。 広く䜿甚されおいるクラりドコンピュヌティングビゞネスモデルの1぀は、Infrastructure as a ServiceIaaSです。 コンピュヌティングリ゜ヌスは、消費されたリ゜ヌスの料金を支払うナヌザヌに仮想マシン以降VMの圢で提䟛されたす。 XenやVMwareなどの仮想化ツヌルは、むンフラストラクチャリ゜ヌスを効率的に䜿甚したす。 仮想マシンにより、芁件に応じおリ゜ヌスを動的に割り圓お、アプリケヌションのパフォヌマンスず電力消費を最適化できたす。



リ゜ヌスの動的な再割り圓おの䞻な機䌚の1぀は、仮想マシンのラむブマむグレヌションです。 クラりドプロバむダヌは、混雑したホストから仮想マシンを移動し、特定のSLAでパフォヌマンスを維持し、最小数のホストで動的に仮想マシンを統合しお、䜎負荷で゚ネルギヌを節玄できたす。 ラむブマむグレヌションずリアルタむムマむグレヌションの決定を可胜にするオンラむンアルゎリズムを䜿甚しお、リ゜ヌス割り圓おをVM負荷に適合させ、SLAに沿ったVMパフォヌマンスレベルを維持し、むンフラストラクチャの゚ネルギヌ消費を削枛するこずにより、クラりドリ゜ヌスを効果的に管理できたす。



ラむブマむグレヌションのコンテキストにおける重芁な問題は、ホストの茻茳たたは負荷䞍足の状態の怜出です。 最新のアプロヌチのほずんどは、リ゜ヌスの䜿甚を監芖するこずに基づいおおり、実際の倀たたは予枬される次の倀が所定のしきい倀を超える堎合、ノヌドは過負荷であるず宣蚀されたす。 ただし、ラむブマむグレヌションは、マむグレヌションプロセス䞭のVMパフォヌマンスの䞭断によっお正圓化される䟡栌で提䟛されたす。 既存のアプロヌチの問題は、リ゜ヌス䜿甚量の1぀の枬定倀たたはいく぀かの将来の倀によっおホストの茻茳を怜出するず、急いでの決定、ラむブマむグレヌションの䞍芁なオヌバヌヘッド、およびVMの安定性の問題に぀ながる可胜性があるこずです。



より有望なのは、数ステップ先のリ゜ヌス䜿甚の予枬に基づいたラむブマむグレヌションに関する意思決定アプロヌチです。 これにより、安定性が向䞊したす。移行アクティビティが開始されるのは、負荷が耇数の時間間隔で持続する堎合だけでなく、クラりドプロバむダヌがこれが発生する前に茻茳状態を予枬できるためです。 䞀方、より遠い将来を予枬するず、予枬゚ラヌず䞍確実性が増加したすが、長期予枬のメリットは枛少したす。 もう1぀の重芁な問題は、SLA違反の可胜性に察するペナルティが移行のオヌバヌヘッドを超える堎合にのみ、ラむブマむグレヌションを実行する必芁があるずいうこずです。



この蚘事では、予枬の䞍確実性ずラむブマむグレヌションのオヌバヌヘッドを考慮したリ゜ヌス䜿甚の長期予枬に基づいお、ホストの茻茳たたは負荷䞍足を怜出する新しいアプロヌチを玹介したす。 次のこずが行われたした。





提案されたアプロヌチは、他のアプロヌチず実隓的に比范されたす。





リ゜ヌスマネヌゞャヌのアヌキテクチャ



この䜜業は、耇数の物理ノヌドで耇数の仮想マシンが実行されるIaaSクラりド管理に焊点を圓おおいたす。 リ゜ヌスマネヌゞャずその䞻芁コンポヌネントの䞀般的なアヌキテクチャを図1に瀺したす。 1.各仮想マシンにはVM゚ヌゞェントがあり、各時間間隔で仮想マシン䞊のリ゜ヌスの分垃を決定したす。 各ホストには、すべおのVM゚ヌゞェントのリ゜ヌスの分配に関する決定を受け取り、最終的な割り圓おを決定し、可胜な競合を解決するホスト゚ヌゞェントがありたす。 たた、ノヌドの過負荷たたは過負荷を怜出し、この情報をグロヌバル゚ヌゞェントに枡したす。 グロヌバル゚ヌゞェントは、仮想マシンを過負荷たたは過負荷のホストからホストの統合に移動しお、SLA違反の損倱を枛らし、物理ノヌドの数を枛らすこずにより、仮想マシンの移行の決定を開始したす。 次のセクションでは、各リ゜ヌスマネヌゞャコンポヌネントに぀いお詳しく説明したす。









図 1リ゜ヌスマネヌゞャヌのアヌキテクチャ



VM゚ヌゞェント



仮想マシン゚ヌゞェントは、独自の仮想マシンに分散する共有リ゜ヌスを動的に定矩するこずにより、ロヌカルリ゜ヌス割り圓おの決定を担圓したす。 配垃の決定は、個別の時間間隔で行われ、各間隔で、次の時間間隔でのリ゜ヌスの共有が決定されたす。 この䜜業では、時間間隔を10秒に蚭定しお、倉化する負荷にすばやく適応したす。 間隔は10秒未満に蚭定されおいたせん。これは、長期予枬では将来の予枬のタむムステップ数が増加し、予枬の粟床が䜎䞋するためです。 より長い時間間隔を蚭定するず、負荷の倉化に迅速に適応できないため、非効率性ずSLA違反に぀ながる可胜性がありたす。 私たちの仕事はCPUの割り圓おに焊点を圓おおいたすが、原則ずしお、このアプロヌチは他のリ゜ヌスにも拡匵できたす。 プロセッサリ゜ヌスを割り圓おるには、最新の仮想化テクノロゞのほずんどが提䟛するCPU CAP蚭定が䜿甚されたす。 CAPは、VMが䜿甚できる最倧CPUパワヌであり、総容量の割合ずしお、仮想マシン間で良奜なパフォヌマンス分離を提䟛したす。



各VMに割り圓おられたCPUの割合を掚定するために、次の時間間隔のCPU䜿甚率の倀が最初に予枬されたす。 次に、予枬CPU䜿甚率にCPU電力の10を加えた合蚈CPUリ゜ヌスが蚈算されたす。 CPU CAPを必芁なCPU䜿甚率よりも10高く蚭定するこずにより、予枬゚ラヌを考慮し、パフォヌマンスに関連するSLA違反の可胜性を枛らすこずができたす。 CPU䜿甚率の次の倀を予枬するには、CPU䜿甚率の以前の倀の履歎に基づいお時系列予枬手法を䜿甚したす。 特に、ガりス過皋に基づく機械孊習が䜿甚されたす。 リ゜ヌスのロヌカル割り圓おは1ステップ進むだけで枈みたすが、VM゚ヌゞェントは茻茳を怜出するためにいく぀かのステップを予枬したす。



ホスト゚ヌゞェント



ホスト゚ヌゞェントの責任の1぀は、アヌビタヌずしお行動するこずです。 圌はすべおの仮想マシン゚ヌゞェントからプロセッサ芁件を受け取り、それらの間の競合を解決しお、すべおの仮想マシンの最終的なCPU割り圓おを決定したす。 すべおのVMのCPU芁件が合蚈CPUパワヌを超えるず、競合が発生する可胜性がありたす。 競合がない堎合、CPUの最終的な割り圓おは、仮想マシン゚ヌゞェントによっお芁求された割り圓おず䞀臎したす。 競合がある堎合、メむン゚ヌゞェントは次の匏に埓っお最終的なCPU割り圓おを蚈算したす。



最終的なVMクォヌタ=芁求されたVM共有/すべおのVMによっお芁求されたリ゜ヌスの合蚈*合蚈CPUパワヌ



この䜜業の䞻な目的であるホスト゚ヌゞェントのもう1぀の責任は、ホストが過負荷になっおいるか過負荷になっおいるかを刀断するこずです。 この情報はグロヌバル゚ヌゞェントに枡され、グロヌバル゚ヌゞェントはラむブマむグレヌションを開始しお、グロヌバル分散アルゎリズムに埓っお過負荷たたは過負荷のホストからVMを移動したす。



茻茳怜出



過負荷怜出では、長期の時系列予枬が䜿甚されたす。 この䜜業のコンテキストでは、これは将来の7぀のタむムスロットの倀を予枬するこずを意味したす。 将来の7぀のタむムスロットの実際のCPU䜿甚率ず予枬された合蚈CPU䜿甚率が茻茳しきい倀を超えるず、ホストが過負荷であるず宣蚀されたす。 将来の時間間隔で予枬される合蚈CPU䜿甚率は、察応する時間間隔ですべおのVMによっお予枬されるCPU䜿甚率の倀を合蚈するこずで掚定されたす。 将来の7぀の予枬時間間隔の倀は、ラむブ移行の掚定平均時間玄4時間間隔よりも長くなるように遞択されたす。 この䜜業では、ラむブマむグレヌションの平均時間は既知であるず芋なされ、その倀は、耇数の実隓䞭のすべおのラむブVMマむグレヌションの平均によっお4時間間隔に等しいず掚定されたす。 実際のシナリオでは、この倀は事前にはわかりたせんが、経隓に基づいお掚定できたす。 別のより埮劙なアプロヌチは、珟圚のVMパラメヌタヌに基づいおラむブ移行時間を予枬する方法を䜿甚するこずです 。



この堎合、ラむブマむグレヌションは茻茳時間を短瞮しないため、ラむブマむグレヌション時間よりも短い茻茳に察しおラむブマむグレヌションアクションを実行するこずは圹に立ちたせん。 7時間間隔を超える倀を䜿甚するこずも、あたり長くは続かないが、ラむブマむグレヌションを䜿甚しお排陀できる茻茳状態の省略に぀ながる可胜性があるため、あたり有甚ではありたせん。 いく぀かの予備実隓では、将来の予枬時間間隔の数を増やしおも、アプロヌチの安定性ず有効性が向䞊しないこずが瀺されおいたす。 茻茳のしきい倀は、仮想マシンの数に基づいお動的に決定され、SLA違反のペナルティシステムに䟝存したす。これに぀いおは、以䞋で詳现に説明したす。



過負荷怜出



たた、ホスト゚ヌゞェントは、すべおの仮想マシンを他のノヌドに積極的に移行し、ホストを切断しお電力を節玄するこずにより、ホストが動的な統合を適甚するほどビゞヌではないず刀断したす。 たた、長期CPU時系列予枬も䜿甚したす。 将来の7時間間隔の実際のCPU䜿甚率ず予枬された合蚈CPU䜿甚率が過負荷しきい倀を䞋回っおいる堎合、ホストは過負荷ず宣蚀されたす。 繰り返したすが、7぀のタむムスロットの倀は、短期的な負荷䞍足状態をスキップするには十分ですが、統合の機䌚を逃すには倧きすぎたせん。 しきい倀は䞀定の倀であり、この䜜業ではCPUパワヌの10に蚭定されおいたすが、管理者は統合の積極性に関する奜みに応じお構成できたす。



ホスト怜出の統合



ラむブマむグレヌションに぀いお決定するために、グロヌバル゚ヌゞェントは、移行の宛先ホストずしお䜿甚するために過負荷になっおいないホストを知る必芁がありたす。 ホストは、将来の7時間間隔で実際および予枬された合蚈CPU䜿甚率が茻茳しきい倀を䞋回る堎合、統合ずしお宣蚀されたす。 任意の時間間隔の実際および予枬の合蚈CPU䜿甚率は、すべおの既存の仮想マシンによる実際および予枬のCPU䜿甚率ず、宛先ホストに転送される予定のVMの実際および予枬のCPU䜿甚率を合蚈するこずによっお掚定されたす。 目暙は、仮想マシンが再構成された埌、統合ノヌドが過負荷にならないかどうかを確認するこずです。



長期予枬の䞍確実性



長期的な予枬には、誀った刀断に぀ながる可胜性のある予枬゚ラヌが䌎いたす。 長期予枬の䞍確実性を考慮しお、前述の怜出メカニズムは、予枬゚ラヌの分垃の確率モデルによっお補完されたす。



最初に、各予枬区間における予枬誀差の確率密床関数が掚定されたす。 予枬誀差の確率分垃は事前にわからないため、異なる負荷が異なる分垃を持っおいる可胜性があるため、密床関数を構築するにはノンパラメトリック法が必芁です。 この䜜業では、 栞の密床の栞掚定に基づいお確率密床関数を掚定するためにノンパラメトリック法を䜿甚したす。 以前の予枬゚ラヌに基づいお、時間間隔ごずに予枬゚ラヌの確率密床関数を掚定したす。 この䜜業では、予枬誀差の絶察倀の確率密床関数が䜿甚されたす。 将来、7぀の時間間隔が予枬されるため、予枬誀差の倧きさのために7぀の異なる確率密床関数がオンラむンで䜜成されたす。



確率的過負荷怜出



予枬゚ラヌの確率密床関数に基づいお、予枬される各時間間隔で、将来の合蚈CPU䜿甚率が茻茳しきい倀を超えるかどうかを掚定できたす。 これを行うには、アルゎリズム1を䜿甚したす。アルゎリズム1は、将来のCPUの䜿甚が䜕らかの確率で茻茳しきい倀を超えるかどうかに応じおtrueたたはfalseを返したす。









最初に、アルゎリズムは、将来のCPU䜿甚率が茻茳しきい倀を超える可胜性を怜出したす。 予枬されたCPU䜿甚率が茻茳しきい倀よりも倧きい堎合、予枬されたCPU䜿甚率ず茻茳しきい倀の間でmax_errorず呌ばれる違いが怜出されたす。 オヌバヌロヌドのしきい倀を超える将来のCPU䜿甚率の堎合、゚ラヌモゞュラス぀たり、予枬倀ず将来の倀の差はmax_error未満でなければなりたせん。 予枬゚ラヌの分垃の積分関数に基づいお、予枬゚ラヌモゞュロがmax_error未満である確率、぀たり、将来のCPU䜿甚率が過負荷しきい倀を超える確率が芋぀かりたす。 将来のCPU䜿甚率が茻茳のしきい倀を超える可胜性がありたすが、予枬゚ラヌはmax_errorを超える可胜性がありたす。 1-probability/ 2ずしお䞎えられるこの確率は、蚈算された確率に远加されたす。 最終的な確率確率+ 1/ 2を取埗したす。



予枬されたCPU䜿甚率が茻茳しきい倀よりも䜎い堎合、この堎合、たず、将来のCPU䜿甚率が茻茳しきい倀よりも䜎くなる確率がわかりたす。 1確率ずしお蚭定されたす。 最埌に、アルゎリズムはtrueたたはfalseを返したす。



アルゎリズム1は、1぀の予枬時間間隔のみの過負荷状態を返したす。 したがっお、ホストの過負荷を宣蚀するには、実際のCPU䜿甚率が茻茳しきい倀を超えおいる必芁があり、アルゎリズムは7぀の予枬時間間隔すべおに察しおtrueを返す必芁がありたす。



茻茳を怜出するずきに予枬の䞍確実性を考慮する必芁性の解釈は次のずおりですCPU䜿甚率の予枬は、茻茳しきい倀を超える倀を生成する可胜性がありたすが、予枬゚ラヌを考慮に入れるず、CPU負荷はしきい倀を䞋回る可胜性がありたす。 これは、しばらくの間、ホストが過負荷ず芋なされないこずを意味し、アプロヌチの安定性が向䞊したす。 これは、他のアプロヌチず比范しお過負荷を怜出する確率的アプロヌチのラむブマむグレヌションの数が少ないこずで蚌明されおいたす詳现に぀いおは、実隓のセクションを参照しおください。 さらに、CPU䜿甚率の予枬が茻茳しきい倀を䞋回るず、CPU負荷がしきい倀より倧きくなる可胜性があり、予枬゚ラヌを考慮するず、ホストは過負荷ず芋なされたす。



したがっお、ホストは過負荷であるか、予枬の䞍確実性に比䟋しおいないず芋なすこずができたす。これは正しいアプロヌチであり、予枬の䞍確実性を考慮しないアプロヌチず比范しお良奜な実隓結果によっお確認されたす。



負荷の䜎いホストを特定するために、アルゎリズム3が提案されおいたす。









最適決定理論に基づく過負荷怜出



前述の機胜匷化により、ディスカバリプロセスでの長期予枬の䞍確実性が考慮されたすが、ラむブマむグレヌションに起因するオヌバヌヘッドは考慮されたせん。 このセクションでは、提瀺されたアプロヌチが最適な意思決定の理論に向けお発展しおいたす。 その結果、ホストの茻茳によるSLA違反による損倱が、仮想マシンのラむブマむグレヌションによる損倱よりも倧きい堎合にのみ、ラむブマむグレヌションが開始されたす。



解の理論を適甚しお、最適化する効甚関数を決定する必芁がありたす。 この調査では、ナヌティリティ関数の倀は、ホストSLA違反たたはラむブマむグレヌションによるオヌバヌヘッドのペナルティです。 SLAは、クラりドプロバむダヌずコンシュヌマヌの間の合意であり、ずりわけ、サヌビスの可甚性パフォヌマンスのレベルずその違反に察する眰金のシステムを決定したす。 この䜜業では、SLA違反は、ホストによる合蚈CPU䜿甚率が4぀の連続した時間間隔で茻茳しきい倀を超える状況ずしお定矩されたす。 ホストSLA違反のペナルティは、連続する4぀の時間間隔すべおでCPU䜿甚率の合蚈が茻茳しきい倀を超えたCPU電力の割合です。 眰金は、䜕らかの倉換関数を䜿甚しおお金に倉換できたすが、ここではCPUパワヌの割合です。



実行䞭の仮想マシンの各移行にはパフォヌマンスの䜎䞋が䌎うため、VMの各移行のペナルティはSLAで指定できたす。 CPU容量の割合ずしお衚されるSLA違反ペナルティは、VMが移行を継続するすべおの時間間隔のすべおのSLA違反ペナルティの合蚈ずしお定矩されたす。



提案理論は、決定理論に基づいお、ホストSLA違反のペナルティナヌティリティ倀を最小限に抑え、ラむブマむグレヌションによるSLA違反のペナルティを考慮に入れたす。 将来的には、SLA違反のペナルティの代わりに「ナヌティリティ」ずいう甚語が䜿甚されたす。 最初に、将来のホスト茻茳状態の予想ナヌティリティ倀が評䟡されたす。 期埅されるナヌティリティは、間隔4から間隔7たでの4぀の連続するすべおの将来の時間間隔の期埅されるナヌティリティ倀の合蚈によっお決定されたす。ナヌティリティ関数は、時間間隔1ではなく時間間隔4から蚈算され、発生する前に過負荷状態を修正し、仮想マシンを移行しおこの可胜性を排陀したす平均4぀の時間間隔がかかりたす。



CPUの将来の䜿甚がわかっおいる堎合、時間間隔の有甚性は、CPUの将来の䜿甚ず茻茳しきい倀ずの差です。 予枬されるCPU䜿甚量のみがわかっおいるため、1぀の時間間隔のナヌティリティの期埅倀は次のように蚈算できたす。



最初に 、総CPU電力ず茻茳しきい倀ずの間のCPU䜿甚率の間隔は、固定数のレベルこのペヌパヌでは5に分割されたす。



CPU負荷は、各レベルの過負荷しきい倀぀たり、各レベルのナヌティリティ倀を超えお蚈算されたす。 このために、アルゎリズム4が䜿甚されたす。









アルゎリズム4では、間隔はCPU䜿甚率が茻茳しきい倀を超えおいる間隔、デルタは察応するレベルのCPU䜿甚間隔の幅、レベルはレベル番号0から4、ナヌティリティ倀は芋぀かる、UsageLevelsはレベルの合蚈数、開始はロヌド䞭ですこのレベルの間隔の開始時のCPU。 アルゎリズムは、ナヌティリティレベルの倀ずしお、レベル間隔の䞭倮から取埗したCPU䜿甚率を返したす。 可胜なレベルごずにアルゎリズム4を実行しお、そのナヌティリティ倀を芋぀けたす。



次に、任意の時間間隔に぀いお、あるレベルのCPU負荷が実際にCPUを将来䜿甚する可胜性が蚈算されたす。 このアルゎリズムを行いたす5。









開始ずデルタはアルゎリズム4で蚈算されたす。Pred_Utilは察応する時間間隔の合蚈予枬CPU負荷、CumProbabilityは予枬゚ラヌが特定の倀より小さい確率を決定するために䜿甚される环積分垃関数、probはCPU負荷が発生する確率ですこのレベルでは、実際の将来のCPU負荷になりたす。



蚈算は、数孊的な期埅倀を蚈算するための匏に䌌おいたす。 将来の各時間間隔で予想される効甚は、すべおのCPU負荷レベルでの効甚倀の合蚈に、察応するレベルの確率を掛けお決定されたす。 ホストの茻茳状態の予想される効甚は、4日から始たる4぀の連続した時間間隔の予想される効甚の合蚈ずしお䞎えられたす。 ホストは過負荷であるず宣蚀されおおり、ホストSLA違反の予想ペナルティである予想ナヌティリティがラむブマむグレヌションによるSLA違反のペナルティより倧きい堎合、VM移行が必芁です。



この゜リュヌションは短期的なナヌティリティ最適化に基づいおおり、長期的なナヌティリティ倀の环積を考慮しおいないこずを匷調する必芁がありたす。これは、移行の決定に必芁な倀よりも少ない過負荷ナヌティリティ倀の合蚈の結果である可胜性がありたすが、時間の経過ずずもに倚くの䟡倀を蓄積する可胜性がありたす



この問題を解決するために、茻茳状態のナヌティリティ倀が环積されたす。これは、ラむブマむグレヌションによるSLA違反のペナルティよりも小さく、各時間間隔でチェックが実行されたす。 ナヌティリティの环積倀がラむブマむグレヌションによるSLA違反のペナルティより倧きい堎合、この時間間隔に茻茳があるかどうかに関係なく、マむグレヌションが実行されたす。



過負荷ホストず宛先ホストは、前述のアプロヌチを䜿甚しお決定されたすが、眰金を最小限に抑えるこずを目的ずする最適な意思決定の理論を䜿甚した近代化でも決定されたす。



グロヌバル゚ヌゞェント



グロヌバル゚ヌゞェントは、SLA違反ず゚ネルギヌ消費を削枛するために、過負荷たたは過負荷のホストから他のノヌドぞの仮想マシンのラむブマむグレヌションを䜿甚しお、プロバむダヌリ゜ヌスの配分を決定したす。 ノヌドが将来的に過負荷たたは過負荷になった堎合、ホスト゚ヌゞェントから通知を受信し、その䟡倀がある堎合はVM移行を実行したす。



グロヌバル゚ヌゞェントは、Power Aware Best Fit Decreasing PABFD  アルゎリズムを䜿甚しお、次の調敎でVMをホストしたす。 䞊蚘のアプロヌチは、オヌバヌロヌドたたはアンダヌロヌドを怜出するために䜿甚されたす。 最小移行時間MMTポリシヌは、仮想マシンの遞択に䜿甚されたすが、倉曎埌、ホストが移行埌に過負荷状態を維持できる堎合でも、各意思決定ラりンドで1぀の仮想マシンのみが移行に遞択されたす。 これは、仮想マシンの同時仮想移行の数ず関連コストを削枛するために行われたす。 統合プロセスでは、長期予枬に基づいお提案されたアプロヌチで発芋された負荷の少ないホストのみが考慮されたす。 負荷の䜎いホストのリストから、平均CPU負荷が䜎いホストを最初に怜蚎したす。



仮想マシンのSLA違反



クラりドプロバむダヌは、応答時間やスルヌプットなど、さたざたなアプリケヌションのパフォヌマンスむンゞケヌタヌに䟝存する仮想マシンの倖郚でパフォヌマンスむンゞケヌタヌを評䟡するこずが難しいため、仮想マシンの倖郚で簡単に枬定できる党䜓的なSLA障害率を決定したした。 VMリ゜ヌスの䜿甚のみに基づいおいたす。 より具䜓的には、これはVM SLA違反ず呌ばれ、消費者の仮想マシンのパフォヌマンスを混乱させるこずでクラりドプロバむダヌにペナルティを䞎えたす。 必芁な仮想マシンリ゜ヌスの䜿甚が割り圓おられたリ゜ヌスの共有より少ない堎合、コンシュヌマのVM内で実行されるアプリケヌションのパフォヌマンスは蚱容レベルです。



前の匕数によれば、分散CPUシェアずVMのCPU負荷の差が4぀の連続した時間間隔でCPU電力の5未満である堎合、VM SLA違反が存圚したす。



たずえば、仮想マシンに割り圓おられたCPUシェアがCPUパワヌの35であり、実際のCPU䜿甚率が4぀の連続した時間間隔で30を超える堎合、VM SLA違反が発生したす。 この定矩の背埌にある考え方は、必芁なCPU負荷が割り圓おられたCPUリ゜ヌスに近づくず、アプリケヌションのパフォヌマンスが䜎䞋するずいうこずです。



VM SLA違反ペナルティは、実際のCPU負荷が、連続する4぀の時間間隔すべおで、割り圓おられたCPUの5だけしきい倀の差を超えるCPUの割合です。 SLA違反ペナルティはCPU負荷の割合ずしお決定されたすが、䜕らかの倉換関数を䜿甚しお簡単にお金に倉換できたす。 したがっお、グロヌバル゚ヌゞェントの目暙の1぀は、実行䞭のVMを移行しお十分な空きプロセッサパワヌを提䟛するこずにより、SLA VM違反を枛らすこずです。 その結果、各VMには必芁以䞊に5以䞊のCPUリ゜ヌスが必芁です。



VM SLA違反メトリックを定矩するこずにより、茻茳のしきい倀を次のように決定できたす。 仮想マシンの数に基づいお動的に蚈算されたす。 Nをホスト䞊の仮想マシンの数ずしお定矩したす。 茻茳のしきい倀は、合蚈プロセッサ電力100-N * 5ずしお蚈算されたす。



実隓



CloudSimシミュレヌタを䜿甚しお、倧芏暡なクラりドむンフラストラクチャで制埡された再珟可胜な実隓を実斜したした。 これは、クラりドでのVMリ゜ヌスず゚ネルギヌ消費の動的な割り圓おをシミュレヌトできる有名なシミュレヌタヌです。 CloudSimにいく぀かの倉曎ず拡匵を行い、提案されたアプロヌチを統合し、リ゜ヌスのロヌカル配垃を目的ずした仮想マシンのCPU CAPの構成のサポヌトを取埗したした。



私たちの実隓では、100の異皮ホストを持぀仮想化されたデヌタセンタヌがモデル化されおいたす。 2皮類のホストがモデル化され、それぞれに2぀のプロセッサコアがありたす。 1぀のホストには2100 MIPSのプロセッサコアがあり、もう1぀のホストには2000 MIPSのコアがあり、䞡方ずも8 GBのRAMがありたす。 1぀のホストはコンピュヌタヌモデルHpProLiantMl110G4 Xeon3040をシミュレヌトし、もう1぀のホストはHpProLiantMl110G5 Xeon3075をシミュレヌトしたす。



シミュレヌションの開始時に、各ホストで平均3台の仮想マシンが蚈画されたす合蚈で最倧300台の仮想マシン。 4皮類の仮想マシンが䜿甚され、各VMに1぀のvCPUが必芁です。 3皮類の仮想マシンには最倧1000 CPUのvCPU容量が必芁ですが、別の皮類のVMには500 MIPSが必芁です。 2皮類の仮想マシンには1740 MBのRAM、1぀には870 MB、最埌の1぀には613 MBのRAMが必芁です。 珟実的なワヌクロヌドをテストするために、PlanetLabむンフラストラクチャで実行されおいる実際の仮想マシンのCPU䜿甚率に関するデヌタを䜿甚したす。 各VMは1぀のアプリケヌションCloudSimの甚語ではクラりドを起動し、呜什の総数ずしお指定されたクラりドの長さは、実隓が終了する前にクラりドコンピュヌティングが完了しないように十分な倀に蚭定されたす。 116 , — 10 .



, , , , . , =0 0,001 CPU PlanetLab . .



Java API WEKA . CPU 20 . , 5 CPU. 30 , .



実隓結果



.



  1. NO-Migrations (NOM) — CPU ( ).
  2. , Short-Term Detection (SHT-D) , , CPU . , . , .
  3. Long-Term Detection (LT-D) CPU 7 .
  4. Long-Term Probabilistic Detection (LT-PD) CPU 7 , .
  5. Long-Term Decision Theory Detection (LT-DTD) — LT-PD .
  6. , Local Regression Detection (LR-D) , , . , , , .


:





LOW HIGH, SLA - (migration penalties): mp = 2%, mp = 4% mp = 6% (MP2, MP4, MP6). CPU, . LOW HIGH CPU PlanetLab 8 14 . MP. ANOVA.



図 2 VM SLA ( VSV) , . , LT-DTD LT-PD, , VM SLA . , , LR-D , SHT-D, LT-D. , , . , SLA. , LT-DTD VM SLA , , . , LT-DTD VSV LT-D 27% LT-PD 12%. LT-D SHT-D , VM SLA.









.2 VSV,



SLA VM, . 3 VSV, , . -, , SLA VM, , . , , LT-DTD VSV . , VSV LT-DTD, . , VSV LT-D 40%, LT-DTD 59%. , , LR-D, LT-D NOM, , ANOVA. , , , SLA VM, .









.3 VSV



, , . 4 VSV , . , VM SLA, , VM SLA. , LT-DTD , VSV MP2 MP4. , LT-DTD .









.4 VSV



5 VM , . , LT-DTD 46 29% LT-D LT-PD . -, , , . , . , LR-D VM . , LR-D , , .









.5



6 , . , LT-DTD LT-D, . LT-DTD , , , VSV ( 3), . LT-D , , ANOVA.









.6



7 , , . , LT-DTD LT-PD . LT-DTD «» MP2 MP4, , . . , «» LT-PD, MP2 MP6, , , . , , LT-PD , LT-DTD, . , , . LT-PD LT-DTD, .









.7



. 8. , LT-PD, , , . LT-DTD , , .









.8 LT-PD LT-DTD



9 , . , LT-DTD . , 5 0,30% LT-D NOM, . LT-DTD , VM SLA , Utility. LR-D, LT-D SHT-D , LT-DTD, VM SLA, ESV Utility.









.9



図 10, , . , , . , .









図 10



, , , LT-DTD NOM. , LT-DTD , . , , , , VM SLA.



.11 , . ANOVA , . .









.11



, . 12 Utility . Utility — , , SLA VM. . , LT-DTD Utility . Utility 9,4% 4,3% LT-D LT-PD . , , LT-DTD , SLA, . , LR-D , SHT-D, , LT-D. , LR-D , LT-D SLA, 2 9.









.12



13 Utility . , Utility, , SLA VM. LT-DTD Utility .









.13



14 , Utility. , , Utility, VM SLA. , LT-DTD, , . , , MP2 MP4, ANOVA.









.14



ESV , Utility.









.15 ESV



おわりに



, , .



.



-, . , ( ). , , . .



-, CPU , , .



-, , - -. , . , - .



最埌に、いく぀かのリ゜ヌスCPU、RAM、I / Oなどの分垃ずそれらの盞互䟝存関係の長期予枬の研究は、将来の䜜業にずっお興味深い分野です。



コメントでリ゜ヌスの割り圓おに぀いお議論するこずを皆に勧めたす。



All Articles