Citrix XenServer参考資料

シトリックス・システムズ・ジャパン株式会社

2009年5月29日© 2009 Citrix Systems, Inc. — All rights reserved1アーキテクチャと関連コンポーネント© 2009 Citrix Systems, Inc. — All rights reserved2

Xen• ポリシーとメカニズムの分離• Xenハイパーバイザーがメカニズムを実装• ポリシーはDomain0に委ねる• Xenハイパーバイザー• ゲストから物理デバイスへの直接アクセスが可能となるメカニズムを提供• 信頼性のため機能を絞り込みコードを小さくしている• Domain0• デバイスの処理とユーザインターフェースの提供• XenServerは実績あるCent OSとLinuxデバイスドライバーを使用• 信頼性の向上と広範囲に及ぶハードウェアの互換性© 2009 Citrix Systems, Inc. — All rights reserved

3

XenServer アーキテクチャー• 小さく効率的なハイパーバイザー
はハードウェアの仮想化に適している• ゲストはリソース管理とI/0のため協調して実行される• デバイスドライバーはハイパーバイザーの外に実装• 飛躍的なパフォーマンス向上• Xen‐Hypervisor – オープンソース© 2009 Citrix Systems, Inc. — All rights reserved4仮想メモリの仮想化: シャドウページテーブル
VM 1
プロセス1

VM 2
プロセス2

プロセス1

プロセス2

仮想メモリ

VA

物理
メモリ

PAマシン
メモリ

MA

• VMMは「シャドウページテーブル」を使い割り当てを高速化• シャドウはVA ‐> MAへ直接割り当て• アクセスのたびに起きるふたつのレベルの変換を回避• このVA ‐> MA割り当て用にTLBハードウェアを使用• ゲストOSがVA ‐> PAを変更した場合、VMMはシャドウページテーブルを更新© 2009 Citrix Systems, Inc. — All rights reserved

5

シャドウページテーブル
3つのパフォーマンストレードオフ
1. トレースのコスト• VMMはゲストによるプライマリページテーブルへの書き込みをインターセプトしなければならない• 変更をシャドウページテーブルに伝える(または無効にする)

2. ページフォルトのコスト• VMMはページフォルトをインターセプトしなければならない• シャドウページテーブルエントリ (ヒドゥンページフォルト)を有効にするか、フォルトをゲスト(実際のページフォルト)にフォワードする

3. コンテキストスイッチのコスト• VMMはゲストのコンテキストスイッチをインターセプトしなければならない• シャドウページテーブルの新たなセットをアクティベートする
パフォーマンスの実現には、良いトレードオフの発見が欠かせない© 2009 Citrix Systems, Inc. — All rights reserved

6シャードー ページ テーブルの多重化
XenApp (Presentation Server)のテスト

物理マシン• 物理サーバ(Proliant DL360 G5)(3～4年前の古いサーバとして設定)• 2 CPU (2.0 Ghz)
• 4 GB メモリ• EdgeSightのロードバランサーを使用して75ユーザをシミュレート• ユーザスクリプト実行時間 – 4:33

仮想マシン

• 1サーバに4仮想マシン (Proliant DL380 G5)• 8 プロセッサ コア(VMに2 vCPU, 3.0 Ghz)
• 16 GB メモリ(VMあたり3.5 GB)• EdgeSightのロードバランサーを使用してシミュレート（VMごとに）• XenServer, “Brand X”と “Brand Y” でテスト

物理サーバのメモリが90セッション以下で使いつくされた© 2009 Citrix Systems, Inc. — All rights reserved

7ハードウェアサポート : EPT/RVI(NPT)
LA→PAマッピング

ゲスト PT ptr

...

TLB
VA MA

ゲスト
VMM

TLB fill
ハードウェア

ネストされた PT ptr

PA→MAマッピング
RVI ( Rapid Virtualization Indexing): AMD Barcelona CPUからサポート
EPT (Extended Page Table): Intel Nehalem CPUからサポート© 2009 Citrix Systems, Inc. — All rights reserved

8

RVI/EPTの分析• ハードウェアMMUは、オンザフライでLA‐>PAとPA‐>MAマッピン
グを生成• メリット• 「exit頻度」の激減 – パフォーマンスへの寄与• トレースフォルトがない(ネイティブと同じ速度のプライマリページテーブル変更)• ページフォルトがexitを必要としない• コンテキストスイッチがexitを必要としない• シャドウページテーブルのメモリオーバーヘッドがない• パフォーマンス• MMUオーバーヘッドによるワークロードの劇的な改善• さらに多くのワークロードが仮想化の候補に© 2009 Citrix Systems, Inc. — All rights reserved

9EPTパフォーマンス結果

テスト環境© 2009 Citrix Systems, Inc. — All rights reserved

10

XenServer仮想マシン
仮想マシンのデバイスは仮想化されておりハードウェアの依存性がない
Para Virtualization ドライバーによるI/Oの高速化

XenServer Toolsのインストール© 2009 Citrix Systems, Inc. — All rights reserved

Para Virtualized Drive→ I/O処理の高速化

11

I/O処理の効率化• メモリコピーを行う必要なく、XenのバスがDomain0にポイントする
ゲストOS

Domain 0アプリケーション

TCP/IPスタック(ルーティング/ブリッジング

Linux デバイスドライバー

Xen

バックエンドドライバー

TCP/IPスタック

フロントエンド スタブ
デバイスドライバー

共有メモリセグメント

物理デバイス© 2009 Citrix Systems, Inc. — All rights reserved

12仮想化ソフトウェアの一元管理 – XenCenter• XenServerの管理はXenCenterから実施• XenServer プールのマスタサーバーに接続

メンバー

メンバー

マスター
日本語版XenCenter
XenServerのプール© 2009 Citrix Systems, Inc. — All rights reserved

13

XenServer管理の仕組み• プール内の全てのXenServerはネットワーク、共有ストレージは同じ設定となる• 設定変更は即座に他のXenServerに通知され設定される• 全てのXenServerが同じ設定内容を保存する• SPOFにならない設計を採用
マスター

メンバー

メンバー

設定情報のコピー

設定情報のコピー

VMメタデータ
XenServer設定情報

VMメタデータ
XenServer設定情報

VMメタデータ
XenServer設定情報

設定情報の保存(60分に1回またはシャットダウン時）© 2009 Citrix Systems, Inc. — All rights reserved

14

XenとXenServerのリレーションシップ
• Xen コミュニティーはCitrixによってリードされている• 新しいハードウェアと機能を敏速にマーケットに投入• メジャーなアクティブ貢献者:
IBM, Intel, valinux, HP, AMD,Red Hat, Novell© 2009 Citrix Systems, Inc. — All rights reserved# checkins
Citrix.com
ibm.com
intel.com
valinux.co.jp
novell.com
hp.comfujitsu.com
bull.net
sgi.comredhat.com
amd.comsun.com15

オープンソースXenとXenServerの比較
9Xen ハイパーバイザーはオープンソースとXenServer製品両方のためのコア仮想化エンジン

9ハイパーバイザーはベアメタルで動く次世代の仮想化で、準仮想化とハードウェア仮想化支援機能をサポートする
オープンソースXenとXenServerとの違い• オープンソースXenコードは不安定な、またはテストされていないコンポーネントを含んでいる• Citrix XenServerは厳しくテストされてミッションクリティカルな本番での使用のために洗練された機能を含んでいる• CitrixはXenハイパーバイザーにエンタープライズレベルの独自機能を追加している© 2009 Citrix Systems, Inc. — All rights reserved

16

Xenプラットフォーム比較
XenServer• Citrix XenServer 5.0 は64‐bitハイパ

Xen Open Source• Xenは以下のハイパーバイザーバー
ジョンをサポート:• 32‐bit• 32‐bit‐PAE• 64‐bitーバイザーを使用する• Citrix XenServerは以下のCPUとメモリの制限がある:• 32 CPU コア• 128 GB メモリ• Xenは理論的に以下のCPUとメモリの制限を持つ:• 128 CPU コア• テラバイトのメモリ• 75%のコードはXenServerを容易に利用するために独自に開発されている。インストールは通常10分以内で終了する• XenはインストールにLinuxの知識を必要とする。インストールは通常1日かかる© 2009 Citrix Systems, Inc. — All rights reserved

17

vs. XenServer
CitrixXen Community

手動回帰テスト

自動回帰テスト

最適化

安定、テスト済

安定、テスト済

未テスト

安定、テスト済、独自ソフトウェア

不安定

アルファ/ベータテスト

品質保証(QA)とエンタープライズレベ
ルのテスト

修正
修正

© 2009 Citrix Systems, Inc. — All rights reserved18物理リソースの有効活用© 2009 Citrix Systems, Inc. — All rights reserved

19マルチプロセッサー オーバーヘッド• SPECwebによるベンチマークを実施• 仮想マシンの割当仮想CPU数を変更• それぞれ1仮想CPU、2仮想CPU、4仮想CPU• 物理マシン、XenServer、何か？を比較• ピーク値性能で比較• ピーク値での同時接続数はそれぞれ異なるが、処理成功リクエスト数と相関関係にあるので考慮しない© 2009 Citrix Systems, Inc. — All rights reserved20ストレージ アーキテクチャ
Control Domain

Virtual Machine

論理ボリューム

LV1

LV2

LV3

LVn
Disk 1

Disk 2

LV1

LV2

物理ボリューム/dev/sda/dev/sdb

Xen• XenServerはストレージ管理にLinuxの論理ボリュームマネージャ(LVM)を使用• 論理ボリューム、仮想ディスクの拡張が容易• 論理ボリューム（パーティション）はプールから作成され仮想マシンに個別の仮想ディスクドライブとしてエクスポートされる• 論理ボリュームは仮想マシンのOSによってフォーマットすることにより仮想マシンからのI/Oを高速する• 仮想マシンのフロントエンド スタブ デバイスドライバーはOSのためのデバイスドライバーに似ている• フロントエンドドライバーはコントロールドメインのバックエンドドライバーのディスクリソースにXenを経由して接続される© 2009 Citrix Systems, Inc. — All rights reserved

21

StorageLink
StorageLink Gateway：仮想コンソールからストレージの機能を直接制御

StorageLink Converter：
ファイバーチャネルとiSCSI間で自動的にコンバージョン

StorageLink Resource Manager：
既存のアレイを利用した仮想化管理

StorageLink Image Manager：
集中化されたイメージライブラリから仮想マシンを敏速にデリバリ

StorageLink HyperPass：
XenServerとHyper‐V間で仮想マシンをシームレスに移動
StorageLink Connect 容易にあらゆるサードパーティのバックアップまたは管理フレームワークにリンク© 2009 Citrix Systems, Inc. — All rights reserved

22

Storage Link/ オーバービュー
XenServer
NetappEqualLogic

DOM0

Hyper-V
VSM
BridgeParentPartition

XenServer

VDS

Hyper-V

データパス

データパス
Virtual Storage Manager

コントロールパス

SAN/NAS© 2009 Citrix Systems, Inc. — All rights reserved23単純化されたストレージ管理
既存のストレージシステムとネイティブのストレージサービスを利用することによって、コストと複雑さを削減

どんなストレージとも機能する（シンプル）
様々なストレージハードウェアプラットフォーム
でシームレスな互換性を提供すために全てのストレージアーキテクチャーと共に動作する

Citrix Essentials
SMI‐S, iSCSI, SAN, NAS, DAS
Storage API

ネイティブのストレージサービスにワンクリッ
クでアクセス管理を単純化し既存のストレージアレイベースのサービスとテクノロジーを利用

既存のWindows ストレージ管理のプロ
ダクトと動作する

エンタープライズストレージシステムの機能を利用

時間の節約 – 強力なストレージ機能へのアクセスに対し複雑さの排除を可能にする
SMI‐S storage: EMC Clariion, EMC Symmetrix, HP EVA, IBM ESS DS6000/DS8000, LSI / IBM DS4000, Fujitsu© 2009 Citrix Systems, Inc. — All rights reserved

24Citrix StorageLink• StorageLink, XenServer, Hyper‐Vからストレージを管理• 仮想ディスクのアレイベースのスナップショット• 管理者が異なる時間の仮想ディスクのスナップショットを取得できる• アレイベースのためスナップショットによるI/Oパフォーマンスの影響はない• 仮想ディスクのプロビジョニングと高速クローンが分から秒に• 仮想ディスクのクローンを作成はアレイによって高速におこなわれる• アレイはクローンを作成するための機能を持っており、StorageLinkはその機能を使用する
ため、サーバのCPUに負荷をかけない• シンプロビジョニングによるディスクスペースの有効利用• 仮想ディスク容量のオーバーアロケート防ぎ、必要な分だけの容量を確保• データの重複排除• ONTAPによって仮想ディスク間の同一データ排除機能(A‐SIS 重複排除機能)によりデータ容量を70%以上削減© 2009 Citrix Systems, Inc. — All rights reserved25

StorageLinkの考え方
従来のストレージ管理

StorageLinkを使ったストレージ管理
Snapshots
Replication
Thin provisioning

アレイベースのストレージ

ホストベースのストレージ
Cluster File System

Snapshots
Replication
Thin provisioning

SMS‐S / Plug‐in• ホストCPUとストレージバスを使用• インテリジェントストレージは単なる• ストレージCPUを使用• ストレージが持っている本来の機

JBOD• 仮想化ソフトウェアに最適化

能を使用• ストレージシステムに最適化© 2009 Citrix Systems, Inc. — All rights reserved

26

StorageLink機能(NetAppの場合)
VM
VirtualDisk

LUN(Logical Unit Number)

仮想マシン作成時に自動的にLUNが作成される

FlexVol（フレキシブルボリューム）

ストレージ接続後自動的に作成される

アグリゲート(抽象化レイヤ）

XenServerからiSCSI/SANス
トレージとして接続
RAID‐DPとアグリゲートはストレージ側で設定

RAIDグループ© 2009 Citrix Systems, Inc. — All rights reserved

27

XenServer ストレージ リポジトリー
SR タイプ

説明

共有

スパース
(Thin provisioning)

仮想ディスクリサイズ

高速クローン

スナップショット

〇〇LVM

ローカルディスク上のLVM

EXT3

ローカルディスク上のVHD〇

LVHD (5.5)

LVM上のVHD〇〇〇〇

NetApp

NetApp上のLUN〇〇〇〇〇

Dell EqualLogic

Dell EqualLogic上のLUN〇〇〇〇〇

SMI‐S Storage(5.5)

StorageLinkによるLUN〇〇〇〇〇

LVMoFCFC LUN上のLVHD

〇〇〇〇

〇

LVMoiSCSIiSCSI上のLVHD

〇〇〇〇

〇

NFS

Network ファイルシステ
ム上のVHD〇〇〇〇〇© 2009 Citrix Systems, Inc. — All rights reserved28

仮想環境の高度な機能© 2009 Citrix Systems, Inc. — All rights reserved

29

ライブマイグレーション
XenMotionはサービスのダウンタイムなしで仮想マシンを移動させることができる
計画停止をゼロダウンタイムで異なるサーバ間でのロードバランシング

Remote VM
Guest Storage© 2009 Citrix Systems, Inc. — All rights reserved30

XenMotionのロジック
1.

VM稼働中のXenServerが移動先XenServerに対してXenMotionのリクエストを送信

2.

移動先XenServerはそのリクエストに対して十分なリソースがあるか確認を行う（リザベーションステージ）3.

移動先XenServerに十分なリソースがあれば、すべてのメモリページをTCPソケットを使用してコピーを行う（反復事前コピー）

4.

コピー中にいくつかのメモリページは更新されてダーティーページとなったページは再度コピーを行う

5.

ダーティページが数ページになったところで、稼働中VMを停止させ、残りのページのコピーを行う（停止とコピー）

6.
•

このステージが終了した時点で移動先XenServerのVMを稼働する•クライアントとのネットワーク遮断はスイッチのMACアドレステーブル再作
成による遅延のみ

仮想マシン停止時間は、わずか150ms ～ 2000msのためアプリケーションへの影響はない© 2009 Citrix Systems, Inc. — All rights reserved

31

XenServer HAControl Domain

Control Domain

Control Domain

xhadxhadxhad

Xen Hypervisor

Xen Hypervisor

Xen Hypervisor

HardwareHardwareHardwareHeartbeat用ネットワーク(5秒/回)‐ 2重化を推奨

Heartbeat用ディスク – 356MB以上‐Statefile for HA (4MB)‐ Metadata for HA (256MB)(iSCSI or FC‐SAN)© 2009 Citrix Systems, Inc. — All rights reserved

32リスタートの保護レベル• XenCenter• Protect (保護する）• 選択した仮想マシンの高可用性による保護を保証する• Restart if Possible• 仮想マシンの自動的な再起動が不可欠ではない場合に設定• Do Not Restart• 仮想マシンを自動的に再起動しない• コマンド (xe vm‐param‐set uuid=<vm_uuid> ha‐restart‐priority=<1> ha‐always‐run=true)• 1|2|3
プールがオーバーコミット状態になると、高可用性機能により再起動優先度の高いVMから再起動が試行される（1が最高優先度）• best‐effort
この優先度を設定したVMは、システムがVMの再起動を試行した場合のみ再起動する• ha‐always‐run=false
このパラメータを設定したVMは再起動しない• アジャイル• アジャイルでない仮想マシンに設定できる保護レベルは［可能なら再起動またはbest‐effort］のみである。アジャイルでない仮想マシンとは、ローカルストレージを持つ、ローカルDVDドライブへの接続が設定されている、またはローカル仮想ネットワークインターフェイスを持つ仮想マシンのこと。
© 2009 Citrix Systems, Inc. — All rights reserved33

フォルト トレラント (FT) システム
• 複数台の物理サーバで動く2台の仮想マシンが同期を取って実行• ロックステップ方式• 仕組みが複雑: everRun VM (Marathon Technology)• チェックポイント方式• デバイスへの出力が遅延: kemari (Xen)• 完全な冗長化による連続可用性

1台のVMとして見える• ゼロダウンタイム• 特殊なハードウェアが不要• 顧客ニーズに合ったハードウエアを選択可能© 2009 Citrix Systems, Inc. — All rights reserved

34

運用

© 2009 Citrix Systems, Inc. — All rights reserved

35

容易な利用• XenServer/XenCenterは誰でも容易に使用可能• 仮想化運用に必要な機能だけを厳選してXenCenter GUIに追加• より高度な機能はCUIで提供• 容易なスクリプトの作成• Linuxエキスパートはよりコマンドを好む• XenServerトレーニングコースはわずか2日間• 通常共有ディスクを使用しない構成であればトレーニングコースは不要• 日本語管理ツールXenCenter• XenCenterから直接XenServerを管理（管理サーバは不要）© 2009 Citrix Systems, Inc. — All rights reserved

36Essentials for XenServer Edition
機能ネイティブ 64‐bit Xen ハイパーバイザー
Windows とLinux ゲスト
無制限の仮想マシン、メモリ、CPU
Active Directory との統合(5.5)
Consolidated backup (5.5)
XenMotion ライブマイグレーション
XenCenter 管理コンソール
複数サーバーの管理
XenCenter サーチ, パフォーマンスの保存とモニタリング

XenServer

Essentials for XenServer,Enterprise Edition

Essentials for XenServer,
Platinum Edition

D
D
D
D
D
D
D
D
D

D
D
D
D
D
D
D
D
D
D
D
D
D
D

D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D

無償

¥467,500

簡素化されたストーレジ管理 (Storage Link)
ハイ アベイラビリティ (HA)
ワークロード バランシング (5.5)
Workflow Studio オーケストレーション *1
Provisioning services (仮想マシンのみ)
Provisioning services (物理マシンと仮想マシン)
ライフサイクル管理(ラボとステージング) *1*1 日本語環境未サポート© 2009 Citrix Systems, Inc. — All rights reserved37© 2009 Citrix Systems, Inc. — All rights reserved

38