Upload
thuyet
View
60
Download
0
Embed Size (px)
DESCRIPTION
帯域外リモート管理の継続が可能な マイグレーション手法. 川原 翔 光来 健一 九州 工業大学. IaaS 型クラウドにおける管理. 利用. VM. VM. VM. VM. VM. VM. VM. VM. VM. VM. VNC. 仮想マシン( VM )をネットワーク経由でユーザに提供 負荷に応じて VM 数や性能を変更できる ユーザ VM 内の VNC サーバ等に接続して管理 VM 内のネットワーク障害時に管理が不可能になる ネットワークの設定ミスや OS のクラッシュ時など. 帯域外リモート管理. 管理 VM. ユーザ VM. - PowerPoint PPT Presentation
Citation preview
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
帯域外リモート管理の継続が可能な
マイグレーション手法川原 翔 光来 健一
九州工業大学
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
仮想マシン( VM )をネットワーク経由でユーザに提供◦ 負荷に応じて VM 数や性能を変更できる
ユーザ VM 内の VNC サーバ等に接続して管理◦ VM 内のネットワーク障害時に管理が不可能になる
ネットワークの設定ミスやOS のクラッシュ時など
IaaS 型クラウドにおける管理
VMVMVMVMVM
VMVMVMVMVM
利用VNC
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
管理 VM 経由でユーザ VM をリモート管理◦ 管理 VM でリモート管理サーバを動作させる◦ ユーザ VM の仮想デバイスを直接参照する◦ ユーザ VM のネットワーク障害の影響を受けない
ネットワークの設定ミス時でも操作が可能
帯域外リモート管理
VNCクライアント
管理 VM
VNC サーバ
仮想デバイス
ユーザ VM
ネットワーク障害
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
VM のマイグレーション時に VNC 接続が切断される◦ ユーザ VM の移動によって移動元の VNC サーバが終了◦ 移動先の VNC サーバにつなぎ直さなければならない
キーボード等の入力情報が失われる可能性がある◦ ネットワーク上の送信中のデータ◦ VNC サーバからユーザ VM に渡されていないデータ
マイグレーション時の管理中断
管理 VM
VNCクライア
ント
VNCサーバ
ユーザ VM
マイグレーション
管理 VM
VNCサーバ
21?
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
VM のマイグレーション時に VNC サーバの IP アドレスとポート番号が変わる◦ 移動先の管理 VM の IP アドレス◦ 管理 VM 上の VNC サーバの数に依存したポート番号
クライアント側のファイアウォールで外向きの通信を広範囲に許可する必要◦ クライアントが踏み台攻撃に使われた時の危険性が増
す
不定な接続先
VNCクライアン
ト
allow ip xxx.xxx.0.0/16 port 5900-5999
VNCサーバ
100
5900VNC
サーバ
101
VNCサーバ
102
VNCサーバ
103
VNCサーバ
104 590 1
VNCサーバ
590 2
VNCサーバ
590 3
VNCサーバ
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
帯域外リモート管理を継続可能なマイグレーションを実現するシステム◦ VNC サーバと仮想入出力デバイスをリモート管理用
VM (ドメイン R )で稼働させる◦ ユーザ VM とともにドメイン R もマイグレーション◦ ドメイン R とユーザ VM 間の接続を維持
提案 : D-MORE
マイグレーション
1 ドメインR
VNCサーバ
仮想デバイス
ユーザVM
2
管理VM
ネットワークレベルで維持される
VNCクライアン
ト本手法により
接続が保たれる
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
VNCクライアン
ト
マイグレーション時にユーザ VM に届いていない入力情報が失われない◦ VNC サーバや仮想デバイスで処理中の入力データ
ドメイン R とともにマイグレーションされる◦ VNC クライアントから送信中のネットワーク上のデー
タ 失われてしまった場合には TCP により再送
データロスの防止
ドメイン R
VNCサーバ
仮想デバイス
ユーザVM
ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD
処理中
ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD
処理中
ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD
送信中
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
マイグレーション時に VNC サーバの IP アドレスとポート番号が変わらない◦ VNC サーバはドメイン R とともにマイグレーションさ
れるため◦ クライアント側のファイアウォールでピンポイントに許
可できる ドメイン R にグローバル IP アドレスを割り当て
ないことも可能◦ ドメイン R にプライベート IP アドレスを割り当てる◦ ユーザ VM の IP アドレスとの間で NAPT を行う
接続先の固定
VNCサーバ
VNCクライアン
ト
ユーザ VMxxx.xxx.xxx.10
0
ドメイン R192.168.0.131
xxx.xxx.xxx.100 :15900
192.168.0.131:5900
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
マイグレーション後にユーザ VM が仮想入出力デバイスを使い続けられるようにする◦ 共有メモリ
入出力情報を格納するためのバッファが置かれる メモリの共有状態を自動的に復元することによって維持
◦ 仮想割り込みチャネル ユーザ VM に入力情報がある
ことを通知 チャネルを自動的に再確立
することで維持
ドメイン R とユーザ VM 間の接続維持
D-MORE仮想デバイス
ドメイン RユーザVM
共有メモリ
仮想割り込みチャネル
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
ユーザ VM とドメイン R の同期を取りながらマイグレーションを行う◦ タイミングによっては入力情報が失われる可能性があ
る ユーザ VM が停止状態になった後で,ドメイン R が共有メ
モリにデータを書き込んだ場合◦ ドメイン R の稼働中はユーザ VM を常に稼働させてお
く ただし,ユーザ VM の稼働中はできるだけドメイン R を止
めない
同時マイグレーション
停止 再開
ドメインR
ユーザVM
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
ドメイン R
Xen 4.1.3 に実装◦ 準仮想化 Linux を動かすユーザ VM を対象
ドメイン R で動作する VNC サーバを開発◦ キーボードとマウスの入力要求に対応◦ RFBProxy を拡張して実装
実装
管理 VM
D-MOREVNCサーバ
ユーザVM
QEMU
既存のVNCサーバ
VNCクライアント
画面更新要求
要求
D-MORE仮想デバイス
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
ドメイン R で動作する仮想入力デバイスを開発◦ 仮想キーボード,仮想マウス
処理の流れ◦ VNC サーバから入力情報を受け取る◦ 入力情報をユーザ VM の
I/O リングに書き込む メモリマップにより共有
◦ イベントチャネルを用いてユーザ VM に入力を通知
仮想入力デバイス
D-MORE仮想デバイス
D-MOREVNC サーバ
ドメイン R ユーザVM
イベントチャネル
I/Oリング
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
ドメイン R
管理対象のユーザ VM のメモリにアクセスする特権を持つ VM を開発◦ ドメイン M
[ 宇都宮ら‘ 11] を拡張して実装
◦ ユーザ VM のメモリページをマップして読み書きできる 本来は管理 VM のみが有する特権である OS と仮想マシンモニタ( VMM )のアクセス制限を変更
◦指定したユーザ VMへのアクセスのみ許可 ドメイン R とユーザ VM の対応づけは管理 VM で行う
ドメイン R (1/2)
ユーザ VMページ
テーブルメモリページ
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
ドメイン Rユーザ VM
マイグレーション時にユーザ VM のメモリマップ状態を維持◦ マイグレーション元
ユーザ VM のメモリがマップされていれば,ページテーブルエントリに監視ビットをセット
ページテーブルと一緒にマイグレーション先に転送◦ マイグレーション先
監視ビットがセットされたメモリページを再マップして復元
ドメイン R (2/2)
監視ビット
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
ユーザ VM との間でイベントチャネルを確立◦ ユーザ VM のデバイスドライバは管理 VM を指定して
バインド◦ VMM を修正し,ドメイン R からでも確立できるように
した マイグレーション時のイベントチャネルの維持
◦ ユーザ VM は新たにイベントチャネルを確立しようとする ドメイン R にはマイグレーションを意識させたくない
◦ VMM 内で自動的に再確立する必要 この機能は現在未実装
イベントチャネルのサポート
D-MORE仮想デバイス
ドメイン R ユーザVM
イベントチャネル
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
ドメイン R とユーザ VM の両方がライブマイグレーションの最終段階に到達するまで待つ◦ ドメイン R ,ユーザ VM の順に停止
ドメイン R とユーザ VM の両方が再開できるようになるまで待つ◦ ユーザ VM ,ドメイン R の順に再開
同時マイグレーションの実現
マイグレーション元ホスト
マイグレーション先ホスト
ドメイン R
ユーザVM
ドメイン R
ユーザVM
マイグレーション
開始
待機
停止 終了
待機
作成 再開
待機
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
キーボード入力1回あたりの応答時間を測定◦ 入力を行ってから画面に文字が表示されるまでの時間
◦従来の帯域外リモート管理と比較
実験 実験環境
CPU Intel Xeon E3-1270 3.40GHz
メモリ
ドメインR
256MB
ユーザVM
256MB
VMM Xen 4.1.3
VNCクライアン
トTigerVNC
OS Linux 3.2.45
キーボード入力画面の更新情報
ドメイン R管理 VM
D-MOREVNC サーバ
ユーザVM
QEMU
既存のVNC サーバ
VNCクライア
ント
画面処理
D-MORE仮想デバイス
デバイスドライバ
App
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
従来より約 1.6ms の応答遅延が発生◦画面更新要求を管理 VM の VNC サーバに転送して処理
しているためと考えられる◦ ドメイン R を用いることによるオーバーヘッドはほと
んど発生しないと考えられる
実験結果
Original D-MORE0
20
40
60
80
100
120
100.40 101.99
Re
sp
on
se
tim
e (
mse
c)
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
VNC プロキシを経由して管理 VM の VNC サーバに接続◦ マイグレーション時に帯域外リモート管理を継続できる
VNC プロキシが自動的に接続先 VNC サーバを切り替える VNC クライアントの接続先 IP アドレス・ポート番号も変わ
らない◦ ユーザ VM に届いていない入力情報は全て失われる
関連研究 : VNC プロキシ
ユーザVM
管理 VM
ホスト ホスト
ユーザVM
管理 VM
ホスト
VNCクライア
ント
VNCプロキシ
VNCサーバ
VNCサーバ
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
KVM 用に開発されているリモート管理ソフトウェア◦ マイグレーション時に帯域外リモート管理を維持でき
る SPICE クライアントがサーバから通知されたマイグレー
ション先に自動的に再接続する SPICE クライアント経由でサーバの状態を転送する
◦ マイグレーション時に接続先 SPICE サーバの IP アドレス・ポート番号が変更される
◦普及率が VNC などに対して大きく劣る
関連研究 : SPICE [Red Hat, Inc. ‘09]
ユーザVM
管理 VM
ホスト
ユーザVM
管理 VM
ホスト
SPICEサーバ
SPICEクライアント
SPICEサーバ
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
従来手法との比較
D-MORE
既存手法 VNCプロキシ SPICE
マイグレーション時のリモート管理の継続
○ × ○ ○
マイグレーション時のIP アドレスとポート番号の維持
○ △NAPT 変換を用いれば可能
○ ×
マイグレーション時のデータの保持
○ × × ○seamless migrationでサポート
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
VMware vSphere Hypervisor [VMware, Inc.]◦VNCサーバを VMM 内で動かす◦ ユーザ VM のマイグレーション時にリモート接続は切断
される
Stub Domain [Nakajima et al. ‘06]Xoar [Colp et al. ’11]◦ VNC サーバを専用 VM に分離◦ マイグレーションはできない
FBCrypt [Egawa et al. ‘12]◦ クラウドにおける帯域外リモート管理のセキュリティ向
上◦ D-MORE との併用を計画
関連研究
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
帯域外リモート管理の継続が可能なマイグレーションを実現するシステム D-MORE を提案◦ ドメイン R で VNC サーバと仮想デバイスを動作させる◦ ドメイン R とユーザ VM を同時にマイグレーション
ドメイン R とユーザ VM 間の接続を維持 マイグレーション中に入力情報が失われない VNC クライアントの接続先が変わらない
◦ D-MORE のオーバーヘッドが現状では十分小さいことを確認
まとめ
© Sho KAWAHARA, KSL, Kyushu Institute of Technology
画面更新処理への対応◦ 現在は,キーボード・マウスの入力処理のみ対応
マイグレーション時のイベントチャネルの維持の実装
同時マイグレーションの実装
完全仮想化への対応◦ 現在は準仮想化のみ対応
今後の課題