with KVM

オープンソースで実現する、
仮想化技術最新情報!!
Red Hat K.K. Solution Architect: Satoshi Naito <[email protected]>
V1.1: 2009.12.11
1
アジェンダ





オープンソースのトレンド
KVMのモデル&バックエンド
KVM & QEMU
Xen vs KVM パフォーマンス比較
Red Hat Enterprise Virtualization Manager for Servers
2
Red Hatの提供するOSSソリューションスタック
3
KVM



Kernel-based Virtual Machine
● 2006 年 10 月から開発がスタート
● 2 ヶ月後にはアップストリームにマージ
● イスラエルの Qumranet が開発
● 2008 年 12 月に Red Hat が買収
CPU の仮想化支援機構を前提に設計
● Intel VT / AMD-V
● その他の CPU にも同等の機能があれば可能
特徴
● 非常に軽量:デバイスのエミュレーションは QEMU
● カーネルモジュール: Linux カーネルの様々な機能を利用可能
● 管理が容易: Linux のパラダイムそのもの
4
KVMのゲストOSサポート


サポート
● RHEL3 x86、RHEL4 x86(x86_64) 、 RHEL5 x86(x86_64)
● Windows Server 2003 R2 32/64 bit
● Windows Server 2008 SP2 32/64 bit
● Windows XP SP2 32 bit
para-virt ドライバの提供
● RHEL4.8 x86(x86_64) 、 RHEL5.4 x86(x86_64)
● Windows Server 2003 R2 32/64 bit
● Windows Server 2008 32/64 bit
● Windows XP 32 bit
● ネットワークドライバのみ
5
Xen模式図
dom0
domU
domU
Frontend driver
Frontend driver
Back End driver
Virtual CPU &
Memory
Device Driver
Hypervisor
Hardware
6
KVM模式図
QEMU
ふつうの
プロセス
QEMU
VM
QEMU
VM
VM
KVM
Linux kernel
Hardware
7
仮想ディスクのモデル
guestからどう見えるかを選択可能
 ide
● IDE接続のディスク 最大4台まで(CD/DVDが有効だと3台まで)
 virtio
● virtioで通信する。専用ドライバで高速化
8
仮想ディスクのバックエンド
host側で対応するものを選択可能
 デバイス(LUN、パーティション、LVM)を直接割り当てる
 rawファイル
● ファイルをデバイスとして見せる
● 最初に全部確保すると速い←フラグメントしない
● sparceファイル(必要に応じて確保)にすると遅い
 qcow2形式のファイル
● スナップショット機能、差分機能を提供
● 差分ファイルの作成はvirt-mangerで未対応なのでqemu-img
で作成
● ディスクサイズ<ファイルサイズになりうる
● qcow-imgによる作り直しで無駄な領域を捨てる
● RHEL5.4ではTechnology Preview
9
仮想ネットワークのモデル


実際にあるデバイスのエミュレーション
● e1000 -- virtioドライバがない場合e1000が最も軽い
● ne2k_pci
● pcnet
● rtl8139 -- デフォルトのNICはRTL8139
低オーバーヘッドでのネットワーク
● virtio -- virtioドライバが必要、最も速い
10
KVM & QEMU
11
KVM






Kernel-based Virtual Machine
● CPUの仮想化支援機能を利用するた
めのカーネルモジュール
● Intel VT / AMD-V
ゲストの制限
● CPUが直接実行できるアーキテク
チャのみ対応
実行を管理するのはLinuxカーネル
制御はユーザプロセスから行う
/dev/kvmを実装(後述)
ゲストモードを追加(後述)
仮想マシン
割り当て用
メモリ
仮想マシン
QEMU
KVM
Linux
ハードウェア
12
QEMU




KVM以前から開発・利用
多種のOSで動作
● 命令を動的に変換することで
多種の環境をエミュレーション
● x86、x86_64、ia64、ARM、
SPARC、PPC、MIPS
各種H/Wのエミュレーションを提供
ユーザプロセスとして動作
仮想マシン
QEMU
Linux / *BSD / Mac / Win etc.
ハードウェア
13
KVMによるQEMUの高速化


QEMUの戦略
● 従来のQEMUでは、実行前に命令をチェック
● 特権命令 or センシティブ命令か?
● →対応するルーチンで処理
● 通常の命令か?
● →直接実行
● 「対応するルーチン」?
● I/O操作 → 対応するデバイスのエミュレータに渡す
● 一部のレジスタ操作など → CPUをエミュレートする
KVMの戦略
● Intel VT-x/AMD-Vでセンシティブ命令をフックする
● 事前の命令チェックが不要 → 高速化
● VT-x/AMD-Vで発見したセンシティブ命令はKVMとQEMUで処理
14
VT-x / AMD-Vとリングプロテクション

従来のリングプロテクションとVMXによる保護は直交する
VMX rootオペレーションモード
プロセス プロセス プロセス
VMX non-rootオペレーションモード
リング3
リング3
プロセス プロセス プロセス
リング2
リング2
リング1
リング1
システム・コール
システム・コール
リング0
リング0
センシティブ命令
の実行
Linuxカーネル
Linuxカーネル
ゲストOS
15
KVMのメモリ・イメージ

ユーザプロセスで確保したメモリを仮想マシンのメモリとして利用
QEMUプロセス
ユーザアドレス空間
仮想マシン
確保したメモリ
ゲストの物理アドレス空間
カーネル
ゲストに割り当てられたメモリ
16
Xen vs KVM パフォーマンス比較
17
KVM Performance EPT/NPT vs Xen
RHEL5.4 KVM Oracle OLTP Perf
Intel Nehalem 8-cpu, 24 GB mem, 2FC
140000.00
120000.00
Base 8 CPU
RHEL54 KVM
RHEL54 XenPV
RHEL5.4 Xen FV-PV
100000.00
tpm
80000.00
60000.00
40000.00
20000.00
0.00
10U
7
20U
40U
60U
80U
Red Hat Summit 2009 | D. John Shakshober / Vijay Trehan
100U
18
KVM Performance – CPU/Disk Effects
RHEL5.4 KVM Oralce OLTP Comparison
Intel Nehalem 8cpu, 24GB mem, 2 FC
80.00
60.0%
56.3%
70.00
50.0%
60.00
40.0%
38.3%
OLT P (k)
50.00
40.00
30.0%
Oracle OLTP
%diff vs Bare Metal
30.00
20.0%
20.00
12.9%
9.0%
10.0%
10.00
0.00
0.0%
B
8
ar e
Me
ta l
KV
tu
M(
n
ed)
No
a
De
ne
d li
No
EP
T
V
No
irtI
O
Red Hat Summit 2009 | D. John Shakshober / Vijay Trehan
19
Virtualization Efficiency: Consolidation
Virtualization Efficiency: Consolidation
Oracle OLTP Load - 160 Users
T r a n s a c ti o n / M i n u te
250,000
200,000
150,000
100,000
50,000
0
Bare Metal
2x8-vCPU
4x4-vCPU
8x2-vCPU
Configuration
30
Red Hat Summit 2009 | D. John Shakshober / Vijay Trehan
20
C u m u l a ti v e M e m o r y T h r o u g h p u t / S e c ( L a r g e r i s b e tt e r )
Virtualization Efficiency: Consolidation
41
Virtualiztionation Efficiency: Consolidation
SAP SLCS Workload
180,000
160,000
140,000
120,000
100,000
80,000
60,000
40,000
20,000
0
Bare Metal
8 x 2-vCPUs
4 x 4-vCPUs
2 x 8-vCPUs
Configuration
Red Hat Summit 2009 | D. John Shakshober / Vijay Trehan
21
企業アプリケーションにおけるパフォーマンス
22
Red Hat Enterprise Virtualization
Manager for Servers
23
信頼性と柔軟性の高いクラウド基盤

クラウドをワンストップで提供
24
仮想化製品ポートフォリオ
Red Hat Enterprise Virtualization for Servers
Red Hat Enterprise Virtualization
Manager for Servers(管理ソフトウェア)
NEW!
Red Hat Enterprise Virtualization
Hypervisor(スタンドアローンハイパーバイザ)
Red Hat Enterprise Linux 5.4 (with KVM)
9月発表
Red Hat Enterprise Virtualization
Manager for Desktops(仮想デスクトップ基盤)
2010年
25
Red Hat Enterprise Virtualization Hypervisor



スケーラビリティ
● 高いコンソリデーション率
● ホスト: 96コア、1TBメモリ
● ゲスト: 16VCPU、64GBメモリ
業界標準
● 信頼性の高いRHELのカーネルと
KVMの組み合わせ
● 高性能なvirtioドライバ
● libvirt / CIM管理インターフェース
● カーネルとKVMはRHEL5.4と同一
小さいフットプリント(128MB)と
容易な導入/構成と高度な機能
● メモリページ共有
● SELinuxによるセキュリティ
26
Red Hat Enterprise Virtualization
Manager for Servers



仮想化環境の全てのオブジェクトを集中管理
サーチ指向のインターフェースによる高いスケーラビリティ
高度な管理機能
● イメージ管理
● 高可用性
● ライブマイグレーション
● システムスケジューラ
● パワーセイバー
● アップデート/
ブートマネージャ
● システムモニタリング
● 監査
27
高可用性


エンタープライズの高可用なインフラを構築
● ホストと仮想マシンを継続的にモニタ
● 問題発生時に自動再起動
● クラスタの他のノードで仮想マシン
を再起動
● 優先度付きポリシーによる再起動
ユーザの介入は不要
● 復旧時に仮想マシンを元のノードに戻
すためにライブ・マイグレーションを利用
28
ライブ・マイグレーション


ホスト間で動的に仮想マシンを移動
● サービス中断は非常に短い
アプリケーションは継続実行
● データベースのようなI/Oの重た
い処理ですら移動可能
● サービスを中断せずにハードウェ
アをメンテナンス
● ホストシステム間で動的に負荷
分散
29
システム・スケジューラ

データセンタの負荷を自動的に平均化
● リソースに基づいて仮想マシンを自動的にマイグレーション
● 仮想マシンの配置ポリシーをカスタマイズ
30
パワー・セイバー


非ピーク時に少ないサーバで負荷を最適化するポリシーを定義
非ピーク時にデータセンタ全体の消費電力を節約するするため、
自動的にサーバの電源をオフ
31
Red Hat Enterprise Virtualization
32
購入ガイドライン


管理対象とするCPUソケット単位での購入
仮想化基盤は以下より選択
● RHEL 5.4
● ゲストOSの利用ポリシーは従来通り
● RHEV Hypervisor(RHEV-Sに付属)
● 別途ゲストOSのサブスクリプションを必要数購入
RHEV for
RHEV for
RHEV for
RHEV for
製品
Servers, standard
Servers, Premium
Servers, standard
Servers, Premium
期間 価格(税別)
1 year
68,000
1 year
98,000
3 year
198,000
3 year
278,000
33
サブスクリプション
数
単価
計
RHEV for Servers, Standard
6
68,000
408,000
RHEL AP, Standard
3
195,000
585,000
RHEL ゲスト無制限
サブスクリプション
RHEV for Servers, Standard
ゲスト OSのサブスクリプション別途購入
数
6
単価
計
68,000
408,000
34
NTTコミュニケーションズ様 クラウドコンピューティングサービス
Bizホスティング ベーシック
クラウド型サービスとして、お客さまはロケーションを意識することなく、
サーバーリソースをネットワーク経由で利用可能
■オンデマンド
・必要な時に必要な量の
サーバーリソースを利用可
・柔軟なリソース変更も可能
■複数ロケーションによるクラウド型サービス提供
・NWバックボーンに直結したクラウド基盤
■ディザスターリカバリー
(オプションサービス)
・災害時のBCP対策も可能
Internet
Internet
VPN
VPN
KVM
社内LAN
KVM
KVM
リソース補完
収容変更
35
OPEN SOURCE
36