Upload
takahiro-shinagawa
View
1.726
Download
1
Embed Size (px)
Citation preview
品川高廣
筑波大学 講師
ディペンダブルな クラウド環境を支える クライアント仮想化技術
発表概要
•クラウド時代のクライアントの役割
•クライアント向け仮想化ソフトウェア「BitVisor」
•「BitVisor」に基づくディペンダビリティ向上
2010/11/2 2
第1部
クラウド時代の クライアントの役割
2010/11/2 3
2010/11/2 4
クラウド時代のクライアント
クラウドへアクセスするための入り口(フロントエンド)
クラウド
クライアント
ユーザー
2010/11/2 5
高性能なクライアントは不要?
ブラウザさえ動けば何でもよい?
世界に必要なコンピュータは5つだけ?
クラウド クライアント
2010/11/2 6
The NIST Definition of Cloud Computing
Essential Characteristics:
…
Broad network access. Capabilities are
available over the network and accessed
through standard mechanisms that promote
use by heterogeneous thin or thick client
platforms (e.g., mobile phones, laptops, and
PDAs).
2010/11/2 7
クライアントとサーバの性能バランス
サーバ 高性能
サーバ 低性能 (なし)
クライアント高性能
クライアント低性能
メインフレーム ダム端末
クライアント・ サーバ
Web (テキスト+画像)
PC (スタンドアロン)
リッチクライアント Ajax, Flash, HTML5
シンクライアント X端末
iPhoneアプリ
Google検索
クラウド コンピューティング
2010/11/2 8
集中処理 ⇒ 集中管理
集中処理することで集中管理を実現している
サーバ集中管理のメリット
•セキュリティ管理が容易
•情報漏洩防止,情報破壊防止,…
•運用管理が容易
•インストール,バックアップ,…
サーバ集中処理のデメリット
•性能・効率の低下
•レスポンス(応答性),デバイスの活用
•機能の分断,電力消費増加
2010/11/2 9
集中管理 ≠ 集中処理
「集中管理 & 分散処理」は実現可能
セキュリティ管理
•データのセキュリティ
•暗号化,バックアップ
•プログラムのセキュリティ
•サンドボックス(ブラウザ,iPhone App)
運用管理
•安全なアプリケーション配信
• HTTP+HTML&JavaScript
• iTunes ストア
プログラム データ
サーバ
クライアント
2010/11/2 10
クライアントとクラウドの連携
クライアントに出来ることはクライアントに
• クライアントの膨大な計算パワーを有効活用
• ネットワークに余分な負荷をかけない
• 物理的に避けられないネットワークレイテンシを回避
クラウドにしか出来ないことはクラウドで
• 管理(セキュリティ,運用)
• 超高速計算
• 超大容量ストレージ
2010/11/2 11
クライアント(PC)は
クラウド環境においても
依然として重要である
本研究の目指すクライアント
高機能のまま「安全」「簡単」にする 既存のクライアント(PC)をディペンダブルに
2010/11/2 12
セキュリティ管理(安全)
•情報漏洩を防止する
•ウィルスに感染しない
運用管理(容易)
•複雑な設定が不要
•確実に利用可能
第2部
クライアント向け 仮想化ソフトウェア 「BitVisor」
2010/11/2 13
仮想マシン (VM: Virtual Machine)
仮想マシン (VM: Virtual Machine)
仮想化ソフトウェア(仮想マシンモニタ)とは 仮想的な実行環境=仮想マシンを生み出すソフトウェア
ハードウェア
仮想マシン (VM: Virtual Machine)
仮想マシンモニタ (VMM: Virtual Machine Monitor)
ゲストOS
ハードウェア
物理マシン
OS
2010/11/2 14
2010/11/2 15
クライアント仮想化の形態
•サーバ実行型
• 画面転送型シンクライアント
• 仮想PC型
• サーバーベース型
• ブレードPC型
•ローカル実行型
• OS配信型クライアント
• ネットワークブート型
• ローカルVM型
2010/11/2 16
仮想マシンモニタを使う利点
OSに依存しないディペンダビリティの向上
• セキュリティ管理
• 強力
• OSが乗っ取られても大丈夫
• 強制的
• ユーザが勝手に無効にできない
• 運用管理
• 互換性
• OSを変更しなくてよい ハードウェア
仮想マシン
仮想マシンモニタ
ゲストOS
仮想マシンモニタの構造
2009/3/13 17
ホストOS
仮想マシンモニタ
ゲストOS ゲストOS
仮想マシンモニタ
ゲストOS ゲストOS
デバイスドライバ デバイスドライバ
デバイスモデル
仮想マシンモニタ
Domain 0
ゲストOS
デバイスドライバ
リソース管理
抽象化層
デバイスモデル
ハードウェア ハードウェア ハードウェア
リソース管理
リソース管理
デバイスモデル
ホスト型 (Type-II VMM)
ハイパーバイザ型 (Type-I VMM)
ハイブリッド型
20万行 (VMWare ESX Server)
10万行+Domain 0 (Xen)
従来の仮想マシンモニタの問題点
•仮想マシンモニタ自身のセキュリティ
• OSを丸ごと含むくらいの巨大・複雑なシステム
• E.g. ホストOSに定期的にパッチを当てる必要がある
•ハードウェア資源の有効活用を阻害
• 仮想化されたデバイスしか使えない
• VM切り替えのオーバーヘッド
2010/11/2 18
ホストOS
仮想マシンモニタ
ゲストOS ゲストOS
デバイスドライバ
デバイスモデル
リソース管理
抽象化層
ハードウェア
仮想マシンモニタ
ハードウェア
仮想化ソフトウェア「BitVisor」
クライアントに特化した軽量な仮想マシンモニタ
2010/11/2 19
ゲストOS デバイスドライバ
デバイス メディエータ
ATA VGA HID USB NIC
拡張機能
拡張機能1
拡張機能2 ATA USB NIC
BitVisorの利点
•VMMのセキュリティ向上 • VMMのサイズ削減・シンプル化
• VMM自身のセキュリティ・アップデートが不要
•既存環境との互換性 • クライアント側の多様なデバイスをフル活用できる
• 既存の環境への適用可能
• 仮想化によるオーバーヘッドを削減
2010/11/2 20
BitVisorの制限
•同時に動作するゲストOSは1つだけ • デスクトップ用途では必須ではない
• セキュリティ管理,運用管理が目的
•デバイスごとに対応が必要 • 全てのデバイスに対応する必要はない
• 主要デバイスは対応済み
2010/11/2 21
2010/11/2 22
ハードウェア対応状況 •基本ハードウェア • Intel VT, AMD-V (32bit/64bit)
• ストレージ • HDD (ATA/AHCI)
• CD/DVD/Blu-ray (ATAPI)
• USBメモリ (UHCI (USB1.1)/EHCI (USB2.0))
•ネットワーク • Intel PRO 100/1000 シリーズ
• 82566MM, 82566DC, 82567LM, 82572EI, 82562V-2 10/100
• Realtek RTL 8169 (Experimental)
• RTL8111/8168B
第3部
「BitVisor」に基づく クライアントの ディペンダビリティ向上
2010/11/2 23
「BitVisor」の応用例
•セキュアVM
•システムファイル保護 セキュリティ
•透過的ネットワークブート
•透過的VPN切り替え 運用
2010/11/2 24
2010/11/2 25
セキュアVM
• PCからの情報漏洩を防止する
• ストレージ経由での情報漏洩防止
• HDDやUSBメモリ等を強制的に暗号化
• ネットワーク経由での情報漏洩防止
• ネットワーク通信を強制的に暗号化
• 接続先サーバを強制
• ICカードでの鍵管理
• 暗号化の鍵の安全な保存
• 接続先・ユーザ認証
ICカード
ネットワーク
ストレージ
ゲストOS
デバイス
デバイスドライバ
拡張機能
2010/11/2 26
セキュアVM (実現手法) • VMMで3種類のデバイスを管理
• ストレージ・アクセスを捕捉・暗号化 • ATA/ATAPI 及び USB1.1/2.0を捕捉
• AES-XTS(IEEE 1619)方式で暗号化
• ネットワーク・アクセスを捕捉・暗号化 • NIC(Intel PRO 100/1000)を捕捉
• IPSecでVPN接続
• IPv4/IPv6,パスワード認証,証明書認証
• ICカードで鍵管理・認証 • USB接続のカードリーダにアクセス
• Type B の ICカードにアクセス
• PC/SC, CCIDプロトコル
ATA NIC USB
ストレージ管理
ネットワーク管理
ID管理
デバイス メディエータ
ATA NIC USB
ATA NIC USB セキュアVM
VMM
ハードウェア
2010/11/2 27
システムファイル保護
• PCの乗っ取りを防止する
• システムファイルを完全に保護する
• OSの重要なファイル
• カーネル・イメージ,デバイスドライバ,…
• セキュリティソフトウェア
• アンチウィルス,…
• カーネル・ルートキットからも保護する
• 直接デバイスI/Oでも書き込めない
• 再起動すれば元に戻る
• 最終ラインでのディフェンス
システムファイル保護 (実現手法)
• VMMでストレージアクセスを監視
• システムファイルへの書き換えを検出
• ファイルのデータ領域
• メタデータ領域
• ディレクトリ構造
• ファイルとセクタのマッピングを管理
• セマンティックギャップを克服
• 低オーバーヘッドで実現
2010/11/2 28
ゲストOS
デバイス
デバイスドライバ
拡張機能
ATA NIC USB
保護モジュール デバイス メディエータ
ATA
ATA NIC USB VM
VMM
ハードウェア
保護ポリシー
透過的ネットワークブート
•任意のOSをネットワークからブート可能にする
• OS・設定に依存しない
• Windowsをそのままブート可能
• Linuxも一切設定なしでブート可能
• ローカルのハードウェア資源をフル活用
• 内蔵機器・周辺機器をOSが完全管理
• Blu-ray,USB3.0,各種USB機器,各種PCIデバイス,…
• 省電力(デバイスの電源制御),最適化(デフラグなど),…
2010/11/2 29
クライアント
サーバ (クラウド)
透過的ネットワークブート (実現手法) • VMMでディスクアクセスを ネットワーク転送
• OSにATAのインターフェイスを提供
• ローカルディスクと同じアクセス方法
• MS-DOSでも起動する
• ATAへのアクセスをパケットに変換
• ATA over Ethernetプロトコルを使用
• 最小限の変換処理で実現可能
• パケットをネットワークへ転送
• ディスクイメージをサーバで集中管理
• 任意のAoEサーバを使用可能
2010/11/2 30
ゲストOS
デバイス
デバイスドライバ
拡張機能
ATA NIC USB
ATA監視
NICアクセス
ATA-AoE変換
デバイス メディエータ
ATA NIC
NIC USB VM
VMM
ハードウェア
ATA
透過的VPN切り替え
•クラウドへの接続の可用性を確保する
• ネットワーク~サーバでの障害に対応
• インターネット層での経路障害
• VPNサーバ故障
• OSやユーザは切り替えを意識しない
• あたかも基盤として高可用性を実現
• ユーザ・管理者に負担をかけない
2010/11/2 31
クライアント
データセンター (クラウド)
専用線
VPN ルータ2
VPN ルータ1
Internet
× ×
透過的VPN切り替え (実現手法)
• VMMでVPN接続を切り替え
• 定期的にネットワーク到達性をチェック
• VMMからサーバにPingを送る
• VMMでVPN切断・再接続を実施
• 利用可能なサーバの選択
• IPsecでのコネクションを確立
• IPアドレスの不整合などを吸収
• TCP接続が切れない
• 切り替え時間は3秒程度
2010/11/2 32
ゲストOS
デバイス
デバイスドライバ
拡張機能
ATA NIC USB
VPNクライアント
ID管理
デバイス メディエータ
NIC
ATA NIC USB セキュアVM
VMM
ハードウェア
「BitVisor」の応用例一覧
•セキュアVM
•システムファイル保護 セキュリティ
•透過的ネットワークブート
•透過的VPN切り替え 運用
2010/11/2 33
まとめ
•クラウド時代のクライアント
• 高機能クライアントも必要
• セキュリティ管理,運用管理
•クライアント向け仮想化ソフトウェア「BitVisor」
• 準パススルー型アーキテクチャ
• VMM自身のセキュリティ,透過性向上
• 「BitVisor」に基づくディペンダビリティ向上
• セキュリティ管理: セキュアVM,システムファイル保護
• 運用管理: 透過的VPN切り替え,透過的ネットワークブート
2010/11/2 34
BitVisorの入手・サポート
http://www.bitvisor.org/
セキュアVMの販売・サポート
株式会社イーゲル
2010/11/2 35