VMMのソフトウェア若化を考慮した クラスタ性能の比較 光来健一(九州工業大学/CREST)
ソフトウェア若化 時々ソフトウェアを停止させ、内部状態を 正常に戻してから再開 ソフトウェア老化への対策 ソフトウェアの状態は時間とともに劣化 例:メモリリークにより性能が低下 予防保守 仮想マシンモニタ(VMM)について考える
VMMのソフトウェア若化の障害 VMMの再起動が最も簡単な手法だが... すべてのOSの再起動も必要 ハードウェアの初期化も シャットダウン・起動 OS内キャッシュの喪失 ハードウェアの初期化も リセット メモリやSCSIのチェック 仮想マシン(VM) VM VM ... OS OS VMM ハードウェア
Warm-VM Reboot [Kourai et al. '07] VMMの高速なソフトウェア若化手法 VMMだけを効率よく再起動 OS再起動を必要としない キャッシュミスによる 性能低下もない ハードウェアを初期化せずに 済ませる VM VM ... OS OS VMM ハードウェア
高速化の原理 オンメモリ・サスペンド クイックリロード VMのメモリイメージをメインメモリ上に残し たままサスペンド そのイメージをそのまま使って レジュームできる クイックリロード ソフトウェア的に再スタート VMをメモリイメージを保持 VM VM ... OS OS VMM
本日の発表 クラスタ環境での性能について考える
クラスタ環境と ソフトウェア若化 ソフトウェア若化はクラスタとの親和性が 高い ソフトウェア若化中もサービスを提供できる 複数ホストで同じサービスを提供している場合 クラスタ
トータルスループットへのソフトウェア若化の影響 クラスタ全体でのスループットは低下する ソフトウェア若化により個々のホスト・VMは 停止する VMMのソフトウェア若化 OSのソフトウェア若化 一定時間ごとにソフト ウェア若化を行うと仮定 OSの若化 VMMの若化
トータルスループットの 見積もり 各ホストの稼働率・性能低下率とサービス 提供台数で決まる VM VM VM VMMの若化 OSの若化 P = (稼働率 – 性能低下率) × ホスト性能 × 台数
Warm-VM Reboot を用いる場合 二種類のソフトウェア若化を独立に行える OSのソフトウェア若化を 一定間隔で行える ダウンタイム 性能低下 レジューム中のVMとの リソース競合 OSの若化 VMMの若化 OSの若化 VMMの若化
Cold-VM Reboot を用いる場合 OS再起動を必要とする通常のVMM再起動 OSのソフトウェア若化の タイミングに影響 ダウンタイム VMMの再起動時間 OSの再起動時間を含む 性能低下 OS再起動後のキャッシュミス OSの若化 VMMの若化 OSの若化 VMMの若化
OSのソフトウェア若化 ダウンタイム OSの再起動時間 性能低下 再起動中のVMとのリソース競合 再起動後のキャッシュミス
実験条件 サーバホストの構成 11 VM 各VMのメモリは1GB Apacheウェブサーバが動作 128KBファイルを5000個提供 ファイルキャッシュに載る 毎秒50リクエストを処理 CPU dual-core Opteron 2.4GHz 2基 メモリ 12GB NIC ギガビットイーサ VMM Xen 3.0.0 OS Linux 2.6.12
Warm-VM Rebootの影響 平均ダウンタイムは59秒 VMMとドメイン0の再起動に時間がかかる 59秒 25秒(性能が61%低下)
Cold-VM Rebootの影響 ソフトウェア若化後の性能が長い間低下 OSのファイルキャッシュが失われたせい 219秒 397秒(性能が72%低下)
VMMのソフトウェア若化の影響の比較
OSのソフトウェア若化の 影響 ソフトウェア若化中は他の10 VMの性能も 大幅に低下 OSの再起動は負荷が大きい 41秒(性能低下は35%)
VM移送 VMMの再起動前にVMを別のホストに移 送する手法も考えられる VMは移送先で再開 VMがなくなったらVMMを再起動 OSの再起動が不要 VM VM ... 移送 VMM VMM 移送元 移送先
通常のVM移送を用いる 場合 VMを停止させてから移送 ダウンタイム 性能低下 同時にサービスを提供できる台数 移送時間 (ホスト数-1)台 1台は移送先として予約
ライブマイグレーションを用いる場合 VMを停止させずに移送 移送中のメモリへの変更は 次のフェーズで転送 ダウンタイム 性能低下 ほぼ0 移送中のメモリへの変更は 次のフェーズで転送 ダウンタイム ほぼ0 性能低下 VMの移送によるリソース競合 自分自身の移送も含む 移送元 移送先 移送1 移送2 移送3
実験条件 11 VMを移送 移送 CPU dual-core Opteron 2.4GHz 2基 メモリ 12GB NIC ギガビットイーサ VMM Xen 3.1.0 OS Linux 2.6.18 CPU dual-core Xeon 3.0GHz 2基 メモリ 12GB NIC ギガビットイーサ VMM Xen 3.1.0 OS Linux 2.6.18
通常のVM移送の影響 VMが移送されるにつれて性能は低下 移送先の負荷が高くなるためと考えられる 平均ダウンタイムは15秒 165秒(性能低下は60%)
ライブマイグレーションの影響 通常のVM移送とほぼ同じ結果 総移送時間が少しだけ増加 ライブマイグレーションのオーバヘッド 181秒(性能低下は57%)
転送レート制御を行った場合の影響 転送レートを100〜500Mbpsの間で制御 総移送時間が非常に長くなる 性能低下は抑えられている 950秒(性能低下は23%)
i番目のVMを移送中の性能の詳細 移送元 移送中 移送先 移送時間 通常の 移送 ライブ マイグ レーション 転送レート 制御
トータルスループットの 比較 ホスト数を変えて 比較 Warm-VM Reboot が常に最もよい VM移送は11000ホ スト以下では悪い 予稿集のグラフは間違い VMMの若化:28日毎 OSの若化:7日毎
関連研究 クラスタのためのソフトウェア若化 理論モデルを構築 ソフトウェア若化により可用性が向上 一定数のホストが故障するまでは利用可能な システム [Vaidyanathan et al. '01] ケーブルモデムシステム [Liu et al. '02] ソフトウェア若化により可用性が向上 時間に基づくソフトウェア若化 予測に基づくソフトウェア若化
まとめ クラスタ環境におけるトータルスループッ トを考察 今後の課題 ソフトウェア若化を考慮 VM移送専用ネットワークがあるとどうか? Warm-VM Reboot、Cold-VM Reboot、VM移送 今後の課題 VM移送専用ネットワークがあるとどうか? 移送先を遊ばせないようにしたら?