Autonomic Resource Provisioning for Cloud-Based Software SEAMS 2014 Autonomic Resource Provisioning for Cloud-Based Software Pooyan Jamshidi / IC4, School of Computing, Dublin City University, Ireland. Aakash Ahmad / Lero, School of Computing, Dublin City University, Ireland. Claus Pahl / IC4, School of Computing, Dublin City University, Ireland
著者 ---- Claus Pahl : Cloud,ソフトウェア工学の専門家、Leroにも所属 Pooyan Jamshidi is a PhD candidate in the School of Computing, Faculty of Engineering and Computing at Dublin City University (DCU) and a research assisstant at the Irish Centre for Cloud Computing & Commerce (IC4). He was previously a doctoral researcher at Lero (LGSSE). He is a member of the Software and Systems Engineering Group and his advisor is Dr. Claus Pahl. ---- Claus Pahl : Cloud,ソフトウェア工学の専門家、Leroにも所属
1.Intro (1/2) クラウドは大きいIT企業のみならずスタートアップ会社でも利用されている。 クラウドのウリは、Elasticity 例) Facebook 3日間で10倍のユーザ数の増加 25,000 → 250,000 100msレスポンスが遅れると、245mil.$がなくなる説。(amazon) 自動的なリソース割り当て(オートスケール)はそれゆえ重要。
1.Intro (2/2) 現状のオートスケールの課題 ① 定量的な指定 :専門的な知識が必要。 ① 定量的な指定 :専門的な知識が必要。 ② しきい値の指定 :一意に指定するけどノイズやスパイクあり。 本論文では、ファジィ理論(Type2-FLS:Fuzzy Logic systems)を利用した、RobusT2Scaleを提案。 Type2-FLSによって、イタリック部分の表記、スケーラビリティのルールを提供する。 評価の結果、ノイズとかがあっても我々のアプローチは有効に動作。
ファジー理論 (直観的な説明)
Type1ファジーとType2ファジー ■Type1ファジー グレードを確定値で定義 ■Type2ファジー グレード自体を,0-1区間上の ファジィ数として定義したもの ■TypeNファジー タイプ2ファジィ集合のメンバシップ関数のグレードのメンバシップ関数のグレードをさらにファジィ化するとタイプ3ファジィ集合 これを繰り返していくとTypeNファジィ。実用上はType2まで。
2.Challenge And Approach 2.1 Motivating Example SAASのサーベイサイト (Yahooのおしえてみたいなものか) スケーラビリティのためクラウド化 (典型的な三層モデルを提示)
2.Challenge And Approach 2.2 Research Challenge しきい値ベースのルールは一般的だけど、課題あり。 RC1: パラメータの予測 - VMの取得とかリリースも即刻できるわけでなくて、10分程度のずれ RC2: しきい値の定性的な指定 - 上下のしきい値の設定には専門的な知識が必要 RC3: 不確かさのコントロール - 応答時間もクラウドでは一定しないはず
2.Challenge And Approach 2.3Solution Overview オートスケーラー(RobusT2Scale)の提案
3.BACKGROUND (IT2FS) Type1の拡張 (式は割愛) 0,1でない値の取り扱い、灰色部分 メンバ関数(MF)
4.Elasticity Reasoning Using T2FLS 4. 1/4 4.Elasticity Reasoning Using T2FLS 4.1/4.2 Autonomous Control of Elasticity コントロールはMAPEを使う。 Monitorは、クラウドプラットフォームから。たとえばCloudWatch ExecuteはAPI リーズニング P: プロセス S: situation EA: elasticity action
4.Elasticity Reasoning Using T2FLS 4.3Extracting Elasticity Knowledge ナレッジは、「Expert 10人に聞きました」
4.Elasticity Reasoning Using T2FLS 4.4Defining Membership Functions メンバ関数
4.Elasticity Reasoning Using T2FLS 4. 5/4 4.Elasticity Reasoning Using T2FLS 4.5/4.6 Basics of the Fuzzy Elasticity Controller X1 = 40,X2 =50のとき 6つのルールが発火!(F:ワークロード、G:応答時間) 重心法によって脱ファジー化。1.0553個のVMを追加。
補足 脱ファジー
IT2FLSのアウトプット インプット(x1,x2)に対して出力Yを決定
5. Realizing the Auto-Scaler 5. 1 Parameter Prediction and Smoothing/5 ■5.1 Paramenter prediction WorkLoadの予測に、double exponential smoothing ResponseTimeの予測に、single exponential smoothing ■5.2 Resource Allocation Resource Allocator がVM数を制御 EC2/ Azure 向けのTermination Policy クールダウンピリオド(何もできない時間)
5. Realizing the Auto-Scaler 5.3Imple. ・ Predictor,Reasoner : Matlab ・ Resource Allocator : C# ・ Azure
6. Experimental Evaluation ■ RQs RQ1: 予測技術の正確性は? RQ2: SLAは保証できるか?その時のコストは? RQ3: ノイズに対してロバスト? ■ Settings BL(アプリケーション)サーバが増減。
6. Experimental Evaluation 6.2 Workload Estimation Accuracy(RQ1) 縦軸ヒット数、横軸時間 青線が調子良い 縦軸 RRSE、横軸:パターン 3つのパターンではエラーが少 ない
6. Experimental Evaluation 6.3 Effectiveness of RobustT2Sclale(RQ2) 600msがSLA BigSpikeを除いて達成している
6. Experimental Evaluation 6.4 Robustness(RQ3) 10%のWhiteNoseを入れた RMSE(平均二乗誤差)は10%以下。
7. Discussion RT2Scaleは独立 パラメータ数少ない オフライン学習なし ルール爆発なし Limitations 6つのワークロードパターン 3層アプリのみ マルチクラウドプロバイダ BL層のみ
8. Related Work ① 定性的な指定 ② ノイズとロバストなリソース調整 ③ コンフリクトルールの制御 ① 定性的な指定 ② ノイズとロバストなリソース調整 ③ コンフリクトルールの制御 Reactive Auto Scaling 閾値の設定、コスト増加、知識要 Proactive Auto Scaling 予測はデータ要、学習も学習時間要等 Hybrid Auto Scaling 本研究はここに位置づく スケールアップも可能 ファジー理論でもT1のみ、T2での不確かさは本研究のみ
Conclusion クラウドでの動的なリソース配置 ワークロードの増加とSLAを満たしつつ、調整 ハイブリッドなオートスケーラーを提案 ファジー理論により①定性的な指定、②コンフリクトルールの制御を可能とした。 将来研究 複数プラットフォームでの適用 他のオートスケーラーとの比較