Xen/Docs/ユーザーズマニュアル日本語版2.0
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[Xen]]
http://www.cl.cam.ac.uk/Research/SRG/netos/xen/readmes/us...
Xen User's manual
Xen v2.0 for x86
免責条項:このドキュメントは現在作成途中の段階にあるもの...
* 1. 導入とチュートリアル [#n7341298]
Xen は x86 プロセッサ互換アーキテクチャに対する並行仮想...
- ハードウェアの性能低下を招かない仮想マシン
- 物理的に隔てられたホスト間での、仮想マシンが動作したま...
- 優れたハードウェア・サポート技術(主にサポートされるの...
- 閉鎖環境(sandboxed)、修復可能なデバイス・ドライバ群
並行仮想化(paravirtualising)により伝統的に仮想化が非常...
Xen は多数のオペレーティング・システムをサポートしてい...
Xen は以下のような利用方法を想定しています:
:カーネル開発|テストマシンを何台も用意しなくとも、閉鎖環...
:複数 OS の調整|Q&A 対策の為に複数のオペレーティング・シ...
:サーバーの整理統合|1つの高性能な物理ホスト内に、複数の...
:クラスタリング技術|とりわけ負荷分散環境を動的に運用する...
:カスタム OS に対するハードウェアのサポート|Linux といっ...
** 1.1 Xen 基礎システムの構造 [#jd01aba7]
Xen システムは複数の層(layers) から構築されており、最下...
システムの起動時に、特権管理機能を持つ domain 0 という...
domain 0 には xend と呼ばれるシステム管理プロセスが動作...
** 1.2 ハードウェアのサポート [#fd31f257]
現時点で Xen でサポートしているのは x86 アーキテクチャ...
Xen は現在 4GB のメモリを扱うことが可能です。x86 マシン...
Xen は Domain 0 として動作しているゲスト OS に対して、...
** 1.3 歴史 [#yd4035c6]
Xen は元来、英国の EPSRC(The Engineering and Physical S...
Xen は元来、 CPU・メモリ・ディスク・ネットワークといっ...
当初 Xen は 2003 年の SOSP (Symposium on Operating Syst...
Xen 2.0 の大きな特徴は、ハードウェアのサポートし、設定...
* 2. インストール [#wdc987f6]
Xen は主に3つのディストリビューションに組み込まれてま...
** 2.1 必要条件 [#y4299a48]
以下に必要となる条件を述べます。項目の中で'†'と印が付い...
† ブートローダーに GRUB を用いる Linux ディストリビュー...
† iproute2 パッケージ
† Linux bridge-utils(( http://bridge.sourceforge.net よ...
† Twisted バージョン 1.3(( http://www.twistedmatrix.com ...
- ビルドのための開発パッケージ(gcc バージョン 3.2.x か 3...
- libcrul のインストールされた開発環境(例:libcurl-deve...
- zlib のインストールされた開発環境(例:zlib-dev) [#oc...
- Python バージョン 2.2 移行のインストールされた開発環境...
- ドキュメントを構築するときは LATEX と transfig が必要...
以上のような適切な必要条件を満たすことが出来れば、Xen ...
** 2.2 バイナリの Tar 形式(Tarball)からのインストール [#n...
ビルドされて構築済みの tar 形式の圧縮ファイルは、以下の...
> http://xen.sf.net
tar 形式の圧縮ファイルを取得後は、単純に展開してインス...
# tar zxvf xen-2.0-install.tgz
# cd xen-2.0-install
# sh ./install.sh
あとはセクション 2.4 で記述されているように、インストー...
** 2.3 ソースからのインストール [#w812c1ad]
当セクションではどのように Xen のソースを取得・構築し、...
*** 2.3.1 ソースの入手 [#k1a74383]
Xen のソースコードは tar 圧縮形式、もしくは私たちの運営...
''tar 形式で圧縮されたソースの入手''
>Xen 安定版(stable)やスナップショット(最新バージョン)のソ...
>>http://xen.sf.net
''BitKeeper の使用''
> 最新の BitKeeper レポジトリを通じて取得した Xen のイン...
>> http://www.bitmover.com/cgi-bin/download.cgi
> バージョン 2.0 系のための公開マスター BK レポジトリはこ...
>> bk://xen.bkbits.net/xen-2.0.bk
> BitKeeper を使う場合はダウンロード後に最新機能や修正を...
> ソースコードを展開したいディレクトリで、次のように実行...
> # bk clone bk://xen.bkbits.net/xen-2.0.bk
> 現在のディレクトリ配下に新しく xen-2.0.bk というディレ...
> # cd xen-2.0.bk # ローカルのレポジトリ内に移動
> # bk pull # レポジトリ事情法の更新
*** 2.3.2 ソースからの構築 [#m5b2e7fd]
カーネルのソースコードに対して Xen をトップレベルで読み...
-- Xen の構築
-- xned を含む管理ツールの構築
-- Linux 2.6 のソースコードを(必要に応じて) ダウンロード...
-- Linux カーネルで仮想マシンを用いるのに、必要最低限の権...
ビルドが完了すると dist/ をトップレベルとするディレクト...
NetBSD への移植は以下のようにして構築できます:
# make netbsd20
NetBSD への移植は netbsd-2-0 csv ブランチで提供している...
構築されるカーネルに対して調整したい事項がある場合、ト...
KERNELS ?= mk.linux-2.6-xen0 mk.linux-2.6-xenU
必要に応じて buildconfig/ ディレクトリのトップレベルに...
*** 2.3.3 XenLinux 構築のカスタマイズ [#x95b3216]
カスタムされた XenLinux カーネルを構築したい場合(例え...
# cd linux-2.6.11-xen0
# make ARCH=xen xconfig
# cd ..
# make
あるいは既存の Linux に対する設定情報(.config ファイル...
# make ARCH=xen oldconfig
必要に応じて Xen に関連したオプションを指定しなくてはい...
構築される2種類の Linux カーネルにおける唯一の違いは、...
*** 2.3.4 バイナリのインストール [#bf923b8f]
構築プロセスによって作成されたファイル群は dist/install...
# make install
あるいは、ユーザによっては特殊なインストール方法をした...
dist/install/boot ディレクトリには XenLinux カーネルを...
** 2.4 設定 [#h5ee6a0f]
一旦 Xen を構築してインストールさえしてしまえば、マシン...
*** 2.4.1 GRUB の設定 [#bc0b0549]
Xen/XenLinux が起動できるよう grub.conf (通常は /boot/...
title Xen 2.0 / XenLinux 2.6
kernel /boot/xen-2.0.gz dom0_mem=131072
module /boot/vmlinuz-2.6-xen0 root=/dev/sda4 ro consol...
kernel 行では GRUB に対して Xen 自身がどこにあるか、そ...
module 行では XenLinux カーネルがどこに位置しているかを...
もし initrd を使いたい場合は、通常通り設定ファイルに mo...
module /boot/my_initrd.gz
*** 2.4.2 シリアル・コンソール(オプション) [#z08f8d84]
Xen をシリアル・コンソール上へ出力したい場合には GRUB ...
kernel /boot/xen.gz dom0_mem=131072 com1=115200,8n1
この設定により Xen は COM1 に出力され、通信速度は 115,2...
XenLinux に対してシリアル・コンソールを共有させることも...
もし XenLinux へシリアル・コンソール上からのログインを...
c:2345:respawn:/sbin/mingetty ttyS0
これでログインできるようになります。root ユーザとしてログ...
*** 2.4.3 TLS ライブラリについて [#w7099a72]
XenLinux 2.6 カーネルを使うユーザはローカル・ストレージ...
TLS が無効でなければ(有効な場合)、Xen はエミュレーシ...
** 2.5 Xen の起動 [#s5ee5f0a]
あとはシステムの再起動をおこなうことで Xen が利用可能と...
その後の動作については通常の Linux 起動と全く変わらない...
XenLinux のブート中には若干のエラーが表示される場合もあ...
起動が完了すると、通常通りシステムにログインすることが...
* 3. ドメインの追加をはじめましょう [#hd4e5b77]
新しいドメイン(Xen では仮想マシン環境の事を"ドメイン"...
xend を起動するには、次のようにコマンドを実行します。
> # xend start
xend デーモンを自動的に起動させたい場合は、セクション 6...
** 3.1 ドメイン設定ファイルの作成 [#veb61c43]
ドメインの追加作業を行う前に、まずは設定ファイルの作成...
-- /etc/xen/xmexample1 は仮想マシンを1つだけ動作するよう...
-- /etc/xen/xmexample2 は複数の仮想マシンを動作するために...
これらのファイルをコピーして、適切に編集してください。...
:kernel|Xen 対応にコンパイルされたカーネルのパスを指定(...
:memory|ドメインのために割り当てるメモリ容量をメガバイト...
:disk|はじめに domain ID の基盤となるイメージファイルと、...
:dhcp|dhcp 変数をコメントしない場合、自動的に DHCP サーバ...
必要に応じて ''vif'' 変数を用い、自分自身の仮想イーサネ...
> vif = ['mac=00:06:AA:F6:BB:B3']
vif 変数を設定しない場合、xend が使用されていない MAC ...
** 3.2 ドメインの起動 [#h15b1aff]
ツール xm はドメインを管理するための様々なコマンドを備...
# xm create -c myvmconf vmid=1
オプション -c は xm を実行後に、コンソールをその作成し...
コマンドが正常に実行されると、コンソール上で新しいドメ...
** 3.3 設定ファイル例:ttylinux [#q5beb7fc]
ttylinux は極めて少ないリソースしか必要としないように設...
1. ttyplinux のディスクイメージを SourceForge サイト)(h...
2. 次のような内容の設定ファイルを作成してください。
kernel = "/boot/vmlinuz-2.6-xenU"
memory = 64
name = "ttylinux"
nics = 1
ip = "1.2.3.4"
disk = ['file:/path/to/ttylinux/rootfs,sda1,w']
root = "/dev/sda1 ro"
3. コンソール上から新規ドメインを作成します:
xm create configfile -c
4. root として root パスワードを入力して下さい。
** 3.4 ドメインの自動起動・停止 [#e454aa7a]
マシンの dom0 ドメイン起動時に自動的に各ドメインが開始...
起動時に特定のドメインを開始したい場合、/etc/xen/auto/ ...
Sys-V 形式の init スクリプトを用いている RedHat や LSB ...
例えば、Red Hat の場合は次のようにします:
> # chkconfig --add xendomains
標準では、起動時のドメインのランタイムは 3・4・5 のいず...
また、service コマンドを使って手動でスクリプトを実行さ...
> # service xendomains start
>/etc/xen/auto/ 配下に置かれている全てのドメインを起動し...
> # service xendomains stop
>Xen の全ドメインを停止します。
* 4. ドメイン管理ツール [#la0a4fd1]
前の章ではドメインの設置と、簡単な開始方法の例について...
** 4.1 コマンドラインからの管理 [#b041fd3b]
コマンドライン上での管理は xm ツールを使って行います。...
> # xm help
あるいは xm help <コマンド名> としてコマンドに関する詳...
*** 4.1.1 基本管理コマンド [#j6e4c941]
最も重要なコマンド群は以下のものです。
> # xm list : 稼働中の全ドメインの表示
> # xm consoles : ドメインのコンソールに関する情報を表示
> # xm console : ドメインのコンソールを開く(例:xm conso...
*** 4.1.2 xm list [#o8e5959f]
xm list による出力は次のようなフォーマット形式です。
name domid memory cpu state cputime console
:name |仮想マシン名(ドメイン名)
:domid |稼働中の仮想マシンに与えられるドメイン ID
:memory |メモリ量。単位はメガバイト(MB)。
:cpu |動作中の CPU 番号
:state |ドメインの稼働状況を5つの項目で表示します。
> :r | running = 動作中
> :b | blocked = ブロック中
> :p | paused = 一時停止中
> :s | shutdown = 停止
> :c | crashed = クラッシュによる停止中
:cputime|どれだけ CPU 時間(毎秒)ドメインが動作したのか
:console|ドメインのコンソールへ接続するための TCP 待ち受...
xm list コマンドでは -l オプションを使うことで、より詳...
例えば、上記の例で用いた ttylinux ドメインを動作させる...
# xm list
Name Id Mem(MB) CPU State Time(s) Cons...
Domain-0 0 251 0 r---- 172.2
ttylinux 5 63 0 -b--- 3.0 9605
このように ttylinux に加えて domain 0 に対しても(もち...
# xm console ttylinux
# xm console 5
# xencons localhost 9605
** 4.2 ドメインの保存と復帰 [#wb15e51a]
Xen システムの管理者の中には、仮想マシンの状態を一時的...
上記の例で用いた ttylinux ドメインを一時停止させディス...
# xm save ttylinux ttylinux.xen
このコマンドにより 'ttylinux' という名前のドメインは停...
ドメインの状況を復帰させるには xm restore コマンドを用...
# xm restore ttylinux.xen
コマンドを実行することにより、ドメインを元通りの状況に...
** 4.3 live migration (生データの移行) [#h0f2f310]
ドメインが稼働し続けている状態のまま、物理的なホスト間...
live migration 機能を用いるためには、両ホスト間で Xen ...
現時点では、ドメインの移行を行うにあたり、ローカルのデ...
ドメインの移行は、MAC アドレスと IP アドレスの移行も伴...
ドメインの移行は xm migrate コマンドを用います。現状の...
# xm migrate --live mydomain destination.ournetwork.com
--live フラグがない場合には、xend は単純にドメインを停...
作業が終わったあとは、新しい仮想マシン上で正しくデータ...
** 4.4 ドメインのメモリ管理 [#q3aed80e]
XenLinux ドメイン上では、管理者や利用者の必要に応じて仮...
*** 4.4.1 dom0 上におけるメモリ配置の設定 [#r128a999]
マシンの管理者は必要があれば、ドメインに対して xm set-m...
# xm set-mem ttylinux 32
このコマンドの結果は xm list の出力より確認できます:
# xm list
Name Id Mem(MB) CPU State Time(s) Cons...
Domain-0 0 251 0 r---- 172.2
ttylinux 5 31 0 -b--- 4.3 9605
ドメインは set-mem の命令に応じるため、Xen にメインメモ...
# xm set-mem ttylinux 64
*** 4.4.2 ドメイン内でのメモリ配置の設定 [#nb892975]
仮想ファイル /proc/xen/balloon を用いることで、ドメイン...
*** 4.4.3 メモリ設定の制限 [#v83b595b]
Xen は各ドメインに対して利用可能なメモリ容量の上限を設...
* 5. ドメインが保存されるファイルシステムについて [#sdb56...
dom0 から他のドメインを作成する際には、仮想マシンの / ...
** 5.1 物理デバイスを VBD として用いる [#h6137e09]
単純な設定を行うことにより、domain 0 から外部の独立した...
> disk = ['phy:hda3,sda1,w']
この記述によって、パーティション /dev/hda3 にある domai...
ローカルなディスクやパーティションだけでなく、Linux が ...
> disk = ['phy:vg/lvm1,sda2,w']
|Warning: Block device sharing|h
ブロック・デバイスをドメイン間で純粋に共有するために使...
** 5.2 ファイル基盤の VBD を用いる [#m13a648f]
domain 0 のメイン記憶領域内に、仮想マシンの情報をファイ...
例えば、2GB が割り当てられたファイル基盤の仮想デバイス...
> # dd if=/dev/zero of=vm1disk bs=1k seek=2048k count=1
このディスク用のファイルに対してファイルシステムを構築...
> # mkfs -t ext3 vm1disk
(途中で確認メッセージが表示されますので、'y'を入力してく...
現在メインで使っている領域からファイルをコピーして、フ...
# mount -o loop vm1disk /mnt
# cp -ax /{root,dev,var,etc,usr,bin,sbin,lib} /mnt
# mkdir /mnt/{proc,sys,home,tmp}
ファイルシステムでは /etc/fstab や /etc/hostname など設...
あとは fstab に /dev/sda1 が / となるように記述してくださ...
その後、アンマウントします(非常に大事です!):
> # umount /mnt
設定ファイルには次のような記述を行います:
> disk = ['file:/full/path/to/vm1disk,sda1,w']
これで先のファイルが仮想マシンでは'ディスク'として認識...
''デバイスに対する I/O が頻繁に行われるドメインでは、フ...
標準の設定では Linux 環境上で最大8つのファイルを基礎と...
** 5.3 LVM 基礎の VBD を用いる [#q49f580b]
ドメインを管理するファイルシステムとして理想的なのが LV...
LVM ボリュームをサポートするパーティションを初期化する...
# pvcreate /dev/sda10
物理パーティション上に 'vg' という名前のボリューム・グ...
# vgcreate vg /dev/sda10
'myvmdisk1'という 4GB の論理ボリュームを作成するには:
# lvcreate -L4096M -n myvmdisk1 vg
これで /dev/vg/myvmdisk1 というファイルシステムが作成さ...
# mkfs -t ext3 /dev/vg/myvmdisk1
# mount /dev/vg/myvmdisk1 /mnt
# cp -ax / /mnt
# umount /mnt
仮想マシンのディスクの項目は以下のように設定できます:
disk = [ 'phy:vg/myvmdisk1,sda1,w' ]
LVM を用いれば論理ボリュームを増やすことが可能ですが、...
補足しておきますと、LVM ボリュームのクローンを作成する...
上記の例で用いたファイルシステムをコピーした2つのクロ...
# lvcreate -s -L1024M -n myclonedisk1 /dev/vg/myvmdisk1
# lvcreate -s -L1024M -n myclonedisk2 /dev/vg/myvmdisk1
それぞれがマスター領域から作成されている 1GB づつの領域...
# lvextend +100M /dev/vg/myclonedisk1
LVM によって領域を確保する事とボリュームを増やす事は、...
原則として、複製されたボリューム(変更を加えてもクロー...
** 5.4 NFS 階層を用いる [#a1b754cb]
まずはじめに、NFS を用いることによって、現在のファイル...
たとえば今、ネットワーク越しにあるファイルシステムから...
/export/vm1root 1.2.3.4/24 (rw,sync,no_root_squash)
最終的にはドメインが NFS のルートを用いるように設定して...
root = '/dev/nfs'
nfs_server = '2.3.4.5' # NFS サーバの IP アドレス
nfs_root = '/path/to/root' # サーバーのファイルシステ...
ドメインによっては起動時にネットワークの亜kせすが必要に...
Linux 上で NFS をルート・ファイルシステムとして用いるこ...
───────────────────────────────────────
2 ユーザ参照ドキュメント
* 6. ソフトウェアの制御 [#md2f32de]
Xen の制御ソフトには xend ノード管理デーモン(必ず動作...
** 6.1 Xend (ノード管理デーモン) [#y9c47c71]
Xen デーモン(Xend) は仮想マシンに関連するシステム管理機...
Xend は仮想マシンの開始や維持のために、常に動作していな...
# xend start start xend が起動していなければ起動する
# xend stop stop xend が起動していれば停止する
# xend restart xend が起動していれば再起動し、停止して...
# xend status xend の状態をリターンコードで表示する
xend という SysV 系起動スクリプトを用いることで、マシン...
xend さえ稼働してしまえば、より洗練された管理ツールであ...
また、xend に稼働中には各種のイベントが /var/log/xend.l...
** 6.2 Xm (コマンドライン・インターフェース) [#b519420a]
コンソール上から Xen を間記すための重要なツールが xm で...
# xm コマンド [スイッチ] [引数] [変数]
利用可能なスイッチや引数については使用するコマンドに依...
使用可能なコマンドは以下の通りです:
:set-mem |ドメインに対してメモリ設定を行います
:create |新規ドメインを作成します
:destory |ドメインを直ちに停止します
:list |稼働中のドメイン一覧を表示します
:shutdown |ドメインを停止するか尋ねます
:dmesg |Xen 起動時のメッセージを出力します(Linux のもの...
:console |利用可能なコンソール一覧を表示します
:help |xm コマンドに関するヘルプを表示します
:save |ドメインを一時停止し、情報をディスクへ待避させます
:restore |ディスクへ待避させていたドメインを復帰させます
:pause |ドメインの稼働を一時停止します
:unpause |ドメインの一時停止を解除します
:pincpu |ドメインが使用している CPU 番号を表示します
:bvt |ドメインに対して BVT スケジューラ変数を設定します
:bvt_ctxallow |BVT コンテキスト切り替えがシステムで許可さ...
:atropos |ドメインのアトロポス変数を設定します
:rrobin |システムからリソースが割り当てられるラウンド・...
:info |Xen ホストに関する情報を表示します
:call |xend HTTP API 機能を直接コールします
スイッチ・引数・変数についての詳細を確認するには、help ...
# xm help command
** 6.3 Xensv (ウェブ管理インターフェース) [#t6251e02]
Xensv は Xen 仮想マシン群を管理するための実験的なウェブ...
開始するには次のようにコマンドを実行します:
> # xensv start
停止するには次のようにします:
> # xensv stop
標準設定では、ウェブ・インターフェース用にポート 8080 ...
Xensv が稼働中はウェブ・インターフェースを通してドメイ...
* 7. ドメインの設定 [#w96b9746]
以下のセクションではドメイン設定ファイルに関わる構文や...
** 7.1 設定ファイル [#c431a45f]
Xen 設定ファイルでは以下の標準的な変数が指定できます。...
:kernel |カーネル・イメージのパスを記述します。例:"/boo...
:ramdisk |RAM ディスクに用いるイメージのパスを記述します...
:memory |ドメインに割り当てるメモリサイズをメガバイト単...
:cpu |どの CPU でドメインを稼働させるか指定します。-1 は...
:console |ドメインのコンソールに接続するためのポート番号...
:nics |仮想ネットワーク・インターフェース番号
:vif |MAC アドレス一覧とドメイン毎のネットワーク・インタ...
> vif = [ 'mac=aa:00:00:00:00:11, bridge=xen-br0',
> 'bridge=xen-br1' ]
>
> 複数のブリッジの記述がありますが、これは xend が MAC ア...
<
:disk |ドメインの為に割り当てるブロック・デバイスの一覧...
> disk = [ 'phy:hda1,sda1,r' ]
> 物理デバイスの /dev/hda1 から /dev/sda1 をドメイン用に ...
<
:dhcp |ネットワーク設定に DHCP を使いたい場合 'dhcp' と...
:netmask |直接 IP ネットマスクを指定します
:gateway |直接 IP ゲートウェイ・アドレスを指定します
:hostname |仮想マシンに対するホスト名を指定します
:root |kernel コマンド行でルートとなるデバイスのパラメー...
:nfs_server |NFS サーバの IP アドレスを指定します(必要が...
:nfs_root |NFS サーバのルートとなるファイルシステムのパス...
:extra |kernel コマンド行で追加の指定を記述します(必要...
:restart |3つのオプションが使えます
> : always |どんな exit コードがあってもドメインを再起動...
> : never |決してドメインを再起動しません
> : onreboot |再起動のリクエストがあればドメインを再起動...
機能に柔軟性を持たせる為に、設定ファイル上で Python 言...
** 7.2 ネットワーク設定 [#kd014bd9]
多くのユーザの為に、標準のインストールでは'難しい設定を...
このセクションでは Xen の仮想ネットワークに柔軟性を与え...
*** 7.2.1 Xen 仮想ネットワーク技術 [#e75b98d6]
dom0 の仮想ネットワーク・インターフェースには各ドメイン...
これらの仮想インターフェースのトラフィックは domain 0 ...
*** 7.2.2 Xen ネットワーク用スクリプト [#i4f61a4a]
Xen の仮想ネットワークの設定は2つのシェルスクリプトに...
:network:|こちらのスクリプトは xend の起動・停止時や Xen ...
:vif-birdge:|このスクリプトは全ての仮想インターフェースの...
より複雑なネットワーク構成を実現するために(例:eth0 で...
** 7.3 ドライバによるドメイン設定 [#b6ac6c73]
ドメインが直接 PCI デバイスにアクセスさせたい場合、 I/O...
バックエンド側での特権を設定できるのは、現時点では SXP ...
現時点では他のドメインから仮想ブロック・デバイスをブロ...
PCI デバイスへのアクセスですが、デバイス毎に設定ファイ...
-- SXP 形式: フォームからデバイスのエレメントを読み込みます
>> (device (pci (bus x) (dev y) (func z)))
> 仮想エレメントの最上位に位置します。それぞれがドメイン...
-- Flat 形式: PCI デバイスのアドレス一覧を読み込みます
>> pci = ['x,y,z', ...]
> リスト内のそれぞれの要素は , 記号で分割して記述し、PCI ...
** 7.4 スケジューラ設定 [#e4c78269]
Xen は起動時に複数のスケジューラを選ぶことが出来ます。...
システムの管理者は自分のシステムに最も適切だと思うスケ...
*** 7.4.1 仮想時間の借用 [#uca3e2d2]
sched=bvt(標準設定)
BVT はCPU 時間を公平に釣り合って共有するようになってい...
**** 7.4.1.1 グローバル・パラメータ [#h3bdee66]
:ctx_allow |伝統的なスケジューラである 'quantum' のように...
**** 7.4.1.2 ドメイン毎のパラメータ [#eba59e53]
:mcuadv |MCU(Minimum Charging Unit) は共有されている CPU ...
:warp |ドメインに対して割り当てられた'仮想時間'の割り当て...
:warpl |ドメインがバックワードに移行するときに使用するこ...
:warpu |バックワードから復帰する際、ドメインの為に予め割...
*** 7.4.2 アトロポス(atrpos) [#s22bd5f0]
sched=atropos
アトロポスはソフトなリアルタイム・スケジューラです。共...
全てのドメインに対して期限(period)と期間(slice)が割り当...
メモ:アトロポスを用いる場合は CPU に対して過度の負担を与...
**** 7.4.2.1 ドメイン毎のパラメータ [#g87f18a4]
:period |ドメインが稼働中は、ほぼ通常通りの CPU 時間割り...
:slice | ドメインの(自発的に CPU を作動させる事がないな...
:latency|latency ではドメインが復帰したら(CPU が割り当て...
:xtratime|システムに余裕があるときにシステム時間がドメイ...
*** 7.4.3 ラウンド・ロビン(Round Robin) [#m51d74d4]
sched=rrobin
ラウンド・ロビン・スケジューラは Xen 内部のスケジューラ...
**** 7.3.1 グローバル・パラメータ [#q5ff4c40]
:rr_slice |それぞれのドメインが稼働している時間上限に達す...
* 8. 構築(Build)・起動(Boot)とデバッグ(Debug)オプション [...
この章では Xen システムの構築時(Build)・起動時(Boot)に...
** 8.1 Xen 構築オプション [#e8993730]
Xen の構築時のオプションは環境変数やコマンドラインでの ...
:verbose=y |Xen が想定外の現象を検出したときデバッグ用の...
:debug=y |デバッグ機能を有効にします。''verbose=y'' より...
:debugger=y |Xen デバッガを作動させます。これにより、Xen...
:perfic=y |
----
以下翻訳作業中(含む Developer's guide)
時間があれば Fedora Core 4 で「実際にどうよ?」というのも...
終了行:
[[Xen]]
http://www.cl.cam.ac.uk/Research/SRG/netos/xen/readmes/us...
Xen User's manual
Xen v2.0 for x86
免責条項:このドキュメントは現在作成途中の段階にあるもの...
* 1. 導入とチュートリアル [#n7341298]
Xen は x86 プロセッサ互換アーキテクチャに対する並行仮想...
- ハードウェアの性能低下を招かない仮想マシン
- 物理的に隔てられたホスト間での、仮想マシンが動作したま...
- 優れたハードウェア・サポート技術(主にサポートされるの...
- 閉鎖環境(sandboxed)、修復可能なデバイス・ドライバ群
並行仮想化(paravirtualising)により伝統的に仮想化が非常...
Xen は多数のオペレーティング・システムをサポートしてい...
Xen は以下のような利用方法を想定しています:
:カーネル開発|テストマシンを何台も用意しなくとも、閉鎖環...
:複数 OS の調整|Q&A 対策の為に複数のオペレーティング・シ...
:サーバーの整理統合|1つの高性能な物理ホスト内に、複数の...
:クラスタリング技術|とりわけ負荷分散環境を動的に運用する...
:カスタム OS に対するハードウェアのサポート|Linux といっ...
** 1.1 Xen 基礎システムの構造 [#jd01aba7]
Xen システムは複数の層(layers) から構築されており、最下...
システムの起動時に、特権管理機能を持つ domain 0 という...
domain 0 には xend と呼ばれるシステム管理プロセスが動作...
** 1.2 ハードウェアのサポート [#fd31f257]
現時点で Xen でサポートしているのは x86 アーキテクチャ...
Xen は現在 4GB のメモリを扱うことが可能です。x86 マシン...
Xen は Domain 0 として動作しているゲスト OS に対して、...
** 1.3 歴史 [#yd4035c6]
Xen は元来、英国の EPSRC(The Engineering and Physical S...
Xen は元来、 CPU・メモリ・ディスク・ネットワークといっ...
当初 Xen は 2003 年の SOSP (Symposium on Operating Syst...
Xen 2.0 の大きな特徴は、ハードウェアのサポートし、設定...
* 2. インストール [#wdc987f6]
Xen は主に3つのディストリビューションに組み込まれてま...
** 2.1 必要条件 [#y4299a48]
以下に必要となる条件を述べます。項目の中で'†'と印が付い...
† ブートローダーに GRUB を用いる Linux ディストリビュー...
† iproute2 パッケージ
† Linux bridge-utils(( http://bridge.sourceforge.net よ...
† Twisted バージョン 1.3(( http://www.twistedmatrix.com ...
- ビルドのための開発パッケージ(gcc バージョン 3.2.x か 3...
- libcrul のインストールされた開発環境(例:libcurl-deve...
- zlib のインストールされた開発環境(例:zlib-dev) [#oc...
- Python バージョン 2.2 移行のインストールされた開発環境...
- ドキュメントを構築するときは LATEX と transfig が必要...
以上のような適切な必要条件を満たすことが出来れば、Xen ...
** 2.2 バイナリの Tar 形式(Tarball)からのインストール [#n...
ビルドされて構築済みの tar 形式の圧縮ファイルは、以下の...
> http://xen.sf.net
tar 形式の圧縮ファイルを取得後は、単純に展開してインス...
# tar zxvf xen-2.0-install.tgz
# cd xen-2.0-install
# sh ./install.sh
あとはセクション 2.4 で記述されているように、インストー...
** 2.3 ソースからのインストール [#w812c1ad]
当セクションではどのように Xen のソースを取得・構築し、...
*** 2.3.1 ソースの入手 [#k1a74383]
Xen のソースコードは tar 圧縮形式、もしくは私たちの運営...
''tar 形式で圧縮されたソースの入手''
>Xen 安定版(stable)やスナップショット(最新バージョン)のソ...
>>http://xen.sf.net
''BitKeeper の使用''
> 最新の BitKeeper レポジトリを通じて取得した Xen のイン...
>> http://www.bitmover.com/cgi-bin/download.cgi
> バージョン 2.0 系のための公開マスター BK レポジトリはこ...
>> bk://xen.bkbits.net/xen-2.0.bk
> BitKeeper を使う場合はダウンロード後に最新機能や修正を...
> ソースコードを展開したいディレクトリで、次のように実行...
> # bk clone bk://xen.bkbits.net/xen-2.0.bk
> 現在のディレクトリ配下に新しく xen-2.0.bk というディレ...
> # cd xen-2.0.bk # ローカルのレポジトリ内に移動
> # bk pull # レポジトリ事情法の更新
*** 2.3.2 ソースからの構築 [#m5b2e7fd]
カーネルのソースコードに対して Xen をトップレベルで読み...
-- Xen の構築
-- xned を含む管理ツールの構築
-- Linux 2.6 のソースコードを(必要に応じて) ダウンロード...
-- Linux カーネルで仮想マシンを用いるのに、必要最低限の権...
ビルドが完了すると dist/ をトップレベルとするディレクト...
NetBSD への移植は以下のようにして構築できます:
# make netbsd20
NetBSD への移植は netbsd-2-0 csv ブランチで提供している...
構築されるカーネルに対して調整したい事項がある場合、ト...
KERNELS ?= mk.linux-2.6-xen0 mk.linux-2.6-xenU
必要に応じて buildconfig/ ディレクトリのトップレベルに...
*** 2.3.3 XenLinux 構築のカスタマイズ [#x95b3216]
カスタムされた XenLinux カーネルを構築したい場合(例え...
# cd linux-2.6.11-xen0
# make ARCH=xen xconfig
# cd ..
# make
あるいは既存の Linux に対する設定情報(.config ファイル...
# make ARCH=xen oldconfig
必要に応じて Xen に関連したオプションを指定しなくてはい...
構築される2種類の Linux カーネルにおける唯一の違いは、...
*** 2.3.4 バイナリのインストール [#bf923b8f]
構築プロセスによって作成されたファイル群は dist/install...
# make install
あるいは、ユーザによっては特殊なインストール方法をした...
dist/install/boot ディレクトリには XenLinux カーネルを...
** 2.4 設定 [#h5ee6a0f]
一旦 Xen を構築してインストールさえしてしまえば、マシン...
*** 2.4.1 GRUB の設定 [#bc0b0549]
Xen/XenLinux が起動できるよう grub.conf (通常は /boot/...
title Xen 2.0 / XenLinux 2.6
kernel /boot/xen-2.0.gz dom0_mem=131072
module /boot/vmlinuz-2.6-xen0 root=/dev/sda4 ro consol...
kernel 行では GRUB に対して Xen 自身がどこにあるか、そ...
module 行では XenLinux カーネルがどこに位置しているかを...
もし initrd を使いたい場合は、通常通り設定ファイルに mo...
module /boot/my_initrd.gz
*** 2.4.2 シリアル・コンソール(オプション) [#z08f8d84]
Xen をシリアル・コンソール上へ出力したい場合には GRUB ...
kernel /boot/xen.gz dom0_mem=131072 com1=115200,8n1
この設定により Xen は COM1 に出力され、通信速度は 115,2...
XenLinux に対してシリアル・コンソールを共有させることも...
もし XenLinux へシリアル・コンソール上からのログインを...
c:2345:respawn:/sbin/mingetty ttyS0
これでログインできるようになります。root ユーザとしてログ...
*** 2.4.3 TLS ライブラリについて [#w7099a72]
XenLinux 2.6 カーネルを使うユーザはローカル・ストレージ...
TLS が無効でなければ(有効な場合)、Xen はエミュレーシ...
** 2.5 Xen の起動 [#s5ee5f0a]
あとはシステムの再起動をおこなうことで Xen が利用可能と...
その後の動作については通常の Linux 起動と全く変わらない...
XenLinux のブート中には若干のエラーが表示される場合もあ...
起動が完了すると、通常通りシステムにログインすることが...
* 3. ドメインの追加をはじめましょう [#hd4e5b77]
新しいドメイン(Xen では仮想マシン環境の事を"ドメイン"...
xend を起動するには、次のようにコマンドを実行します。
> # xend start
xend デーモンを自動的に起動させたい場合は、セクション 6...
** 3.1 ドメイン設定ファイルの作成 [#veb61c43]
ドメインの追加作業を行う前に、まずは設定ファイルの作成...
-- /etc/xen/xmexample1 は仮想マシンを1つだけ動作するよう...
-- /etc/xen/xmexample2 は複数の仮想マシンを動作するために...
これらのファイルをコピーして、適切に編集してください。...
:kernel|Xen 対応にコンパイルされたカーネルのパスを指定(...
:memory|ドメインのために割り当てるメモリ容量をメガバイト...
:disk|はじめに domain ID の基盤となるイメージファイルと、...
:dhcp|dhcp 変数をコメントしない場合、自動的に DHCP サーバ...
必要に応じて ''vif'' 変数を用い、自分自身の仮想イーサネ...
> vif = ['mac=00:06:AA:F6:BB:B3']
vif 変数を設定しない場合、xend が使用されていない MAC ...
** 3.2 ドメインの起動 [#h15b1aff]
ツール xm はドメインを管理するための様々なコマンドを備...
# xm create -c myvmconf vmid=1
オプション -c は xm を実行後に、コンソールをその作成し...
コマンドが正常に実行されると、コンソール上で新しいドメ...
** 3.3 設定ファイル例:ttylinux [#q5beb7fc]
ttylinux は極めて少ないリソースしか必要としないように設...
1. ttyplinux のディスクイメージを SourceForge サイト)(h...
2. 次のような内容の設定ファイルを作成してください。
kernel = "/boot/vmlinuz-2.6-xenU"
memory = 64
name = "ttylinux"
nics = 1
ip = "1.2.3.4"
disk = ['file:/path/to/ttylinux/rootfs,sda1,w']
root = "/dev/sda1 ro"
3. コンソール上から新規ドメインを作成します:
xm create configfile -c
4. root として root パスワードを入力して下さい。
** 3.4 ドメインの自動起動・停止 [#e454aa7a]
マシンの dom0 ドメイン起動時に自動的に各ドメインが開始...
起動時に特定のドメインを開始したい場合、/etc/xen/auto/ ...
Sys-V 形式の init スクリプトを用いている RedHat や LSB ...
例えば、Red Hat の場合は次のようにします:
> # chkconfig --add xendomains
標準では、起動時のドメインのランタイムは 3・4・5 のいず...
また、service コマンドを使って手動でスクリプトを実行さ...
> # service xendomains start
>/etc/xen/auto/ 配下に置かれている全てのドメインを起動し...
> # service xendomains stop
>Xen の全ドメインを停止します。
* 4. ドメイン管理ツール [#la0a4fd1]
前の章ではドメインの設置と、簡単な開始方法の例について...
** 4.1 コマンドラインからの管理 [#b041fd3b]
コマンドライン上での管理は xm ツールを使って行います。...
> # xm help
あるいは xm help <コマンド名> としてコマンドに関する詳...
*** 4.1.1 基本管理コマンド [#j6e4c941]
最も重要なコマンド群は以下のものです。
> # xm list : 稼働中の全ドメインの表示
> # xm consoles : ドメインのコンソールに関する情報を表示
> # xm console : ドメインのコンソールを開く(例:xm conso...
*** 4.1.2 xm list [#o8e5959f]
xm list による出力は次のようなフォーマット形式です。
name domid memory cpu state cputime console
:name |仮想マシン名(ドメイン名)
:domid |稼働中の仮想マシンに与えられるドメイン ID
:memory |メモリ量。単位はメガバイト(MB)。
:cpu |動作中の CPU 番号
:state |ドメインの稼働状況を5つの項目で表示します。
> :r | running = 動作中
> :b | blocked = ブロック中
> :p | paused = 一時停止中
> :s | shutdown = 停止
> :c | crashed = クラッシュによる停止中
:cputime|どれだけ CPU 時間(毎秒)ドメインが動作したのか
:console|ドメインのコンソールへ接続するための TCP 待ち受...
xm list コマンドでは -l オプションを使うことで、より詳...
例えば、上記の例で用いた ttylinux ドメインを動作させる...
# xm list
Name Id Mem(MB) CPU State Time(s) Cons...
Domain-0 0 251 0 r---- 172.2
ttylinux 5 63 0 -b--- 3.0 9605
このように ttylinux に加えて domain 0 に対しても(もち...
# xm console ttylinux
# xm console 5
# xencons localhost 9605
** 4.2 ドメインの保存と復帰 [#wb15e51a]
Xen システムの管理者の中には、仮想マシンの状態を一時的...
上記の例で用いた ttylinux ドメインを一時停止させディス...
# xm save ttylinux ttylinux.xen
このコマンドにより 'ttylinux' という名前のドメインは停...
ドメインの状況を復帰させるには xm restore コマンドを用...
# xm restore ttylinux.xen
コマンドを実行することにより、ドメインを元通りの状況に...
** 4.3 live migration (生データの移行) [#h0f2f310]
ドメインが稼働し続けている状態のまま、物理的なホスト間...
live migration 機能を用いるためには、両ホスト間で Xen ...
現時点では、ドメインの移行を行うにあたり、ローカルのデ...
ドメインの移行は、MAC アドレスと IP アドレスの移行も伴...
ドメインの移行は xm migrate コマンドを用います。現状の...
# xm migrate --live mydomain destination.ournetwork.com
--live フラグがない場合には、xend は単純にドメインを停...
作業が終わったあとは、新しい仮想マシン上で正しくデータ...
** 4.4 ドメインのメモリ管理 [#q3aed80e]
XenLinux ドメイン上では、管理者や利用者の必要に応じて仮...
*** 4.4.1 dom0 上におけるメモリ配置の設定 [#r128a999]
マシンの管理者は必要があれば、ドメインに対して xm set-m...
# xm set-mem ttylinux 32
このコマンドの結果は xm list の出力より確認できます:
# xm list
Name Id Mem(MB) CPU State Time(s) Cons...
Domain-0 0 251 0 r---- 172.2
ttylinux 5 31 0 -b--- 4.3 9605
ドメインは set-mem の命令に応じるため、Xen にメインメモ...
# xm set-mem ttylinux 64
*** 4.4.2 ドメイン内でのメモリ配置の設定 [#nb892975]
仮想ファイル /proc/xen/balloon を用いることで、ドメイン...
*** 4.4.3 メモリ設定の制限 [#v83b595b]
Xen は各ドメインに対して利用可能なメモリ容量の上限を設...
* 5. ドメインが保存されるファイルシステムについて [#sdb56...
dom0 から他のドメインを作成する際には、仮想マシンの / ...
** 5.1 物理デバイスを VBD として用いる [#h6137e09]
単純な設定を行うことにより、domain 0 から外部の独立した...
> disk = ['phy:hda3,sda1,w']
この記述によって、パーティション /dev/hda3 にある domai...
ローカルなディスクやパーティションだけでなく、Linux が ...
> disk = ['phy:vg/lvm1,sda2,w']
|Warning: Block device sharing|h
ブロック・デバイスをドメイン間で純粋に共有するために使...
** 5.2 ファイル基盤の VBD を用いる [#m13a648f]
domain 0 のメイン記憶領域内に、仮想マシンの情報をファイ...
例えば、2GB が割り当てられたファイル基盤の仮想デバイス...
> # dd if=/dev/zero of=vm1disk bs=1k seek=2048k count=1
このディスク用のファイルに対してファイルシステムを構築...
> # mkfs -t ext3 vm1disk
(途中で確認メッセージが表示されますので、'y'を入力してく...
現在メインで使っている領域からファイルをコピーして、フ...
# mount -o loop vm1disk /mnt
# cp -ax /{root,dev,var,etc,usr,bin,sbin,lib} /mnt
# mkdir /mnt/{proc,sys,home,tmp}
ファイルシステムでは /etc/fstab や /etc/hostname など設...
あとは fstab に /dev/sda1 が / となるように記述してくださ...
その後、アンマウントします(非常に大事です!):
> # umount /mnt
設定ファイルには次のような記述を行います:
> disk = ['file:/full/path/to/vm1disk,sda1,w']
これで先のファイルが仮想マシンでは'ディスク'として認識...
''デバイスに対する I/O が頻繁に行われるドメインでは、フ...
標準の設定では Linux 環境上で最大8つのファイルを基礎と...
** 5.3 LVM 基礎の VBD を用いる [#q49f580b]
ドメインを管理するファイルシステムとして理想的なのが LV...
LVM ボリュームをサポートするパーティションを初期化する...
# pvcreate /dev/sda10
物理パーティション上に 'vg' という名前のボリューム・グ...
# vgcreate vg /dev/sda10
'myvmdisk1'という 4GB の論理ボリュームを作成するには:
# lvcreate -L4096M -n myvmdisk1 vg
これで /dev/vg/myvmdisk1 というファイルシステムが作成さ...
# mkfs -t ext3 /dev/vg/myvmdisk1
# mount /dev/vg/myvmdisk1 /mnt
# cp -ax / /mnt
# umount /mnt
仮想マシンのディスクの項目は以下のように設定できます:
disk = [ 'phy:vg/myvmdisk1,sda1,w' ]
LVM を用いれば論理ボリュームを増やすことが可能ですが、...
補足しておきますと、LVM ボリュームのクローンを作成する...
上記の例で用いたファイルシステムをコピーした2つのクロ...
# lvcreate -s -L1024M -n myclonedisk1 /dev/vg/myvmdisk1
# lvcreate -s -L1024M -n myclonedisk2 /dev/vg/myvmdisk1
それぞれがマスター領域から作成されている 1GB づつの領域...
# lvextend +100M /dev/vg/myclonedisk1
LVM によって領域を確保する事とボリュームを増やす事は、...
原則として、複製されたボリューム(変更を加えてもクロー...
** 5.4 NFS 階層を用いる [#a1b754cb]
まずはじめに、NFS を用いることによって、現在のファイル...
たとえば今、ネットワーク越しにあるファイルシステムから...
/export/vm1root 1.2.3.4/24 (rw,sync,no_root_squash)
最終的にはドメインが NFS のルートを用いるように設定して...
root = '/dev/nfs'
nfs_server = '2.3.4.5' # NFS サーバの IP アドレス
nfs_root = '/path/to/root' # サーバーのファイルシステ...
ドメインによっては起動時にネットワークの亜kせすが必要に...
Linux 上で NFS をルート・ファイルシステムとして用いるこ...
───────────────────────────────────────
2 ユーザ参照ドキュメント
* 6. ソフトウェアの制御 [#md2f32de]
Xen の制御ソフトには xend ノード管理デーモン(必ず動作...
** 6.1 Xend (ノード管理デーモン) [#y9c47c71]
Xen デーモン(Xend) は仮想マシンに関連するシステム管理機...
Xend は仮想マシンの開始や維持のために、常に動作していな...
# xend start start xend が起動していなければ起動する
# xend stop stop xend が起動していれば停止する
# xend restart xend が起動していれば再起動し、停止して...
# xend status xend の状態をリターンコードで表示する
xend という SysV 系起動スクリプトを用いることで、マシン...
xend さえ稼働してしまえば、より洗練された管理ツールであ...
また、xend に稼働中には各種のイベントが /var/log/xend.l...
** 6.2 Xm (コマンドライン・インターフェース) [#b519420a]
コンソール上から Xen を間記すための重要なツールが xm で...
# xm コマンド [スイッチ] [引数] [変数]
利用可能なスイッチや引数については使用するコマンドに依...
使用可能なコマンドは以下の通りです:
:set-mem |ドメインに対してメモリ設定を行います
:create |新規ドメインを作成します
:destory |ドメインを直ちに停止します
:list |稼働中のドメイン一覧を表示します
:shutdown |ドメインを停止するか尋ねます
:dmesg |Xen 起動時のメッセージを出力します(Linux のもの...
:console |利用可能なコンソール一覧を表示します
:help |xm コマンドに関するヘルプを表示します
:save |ドメインを一時停止し、情報をディスクへ待避させます
:restore |ディスクへ待避させていたドメインを復帰させます
:pause |ドメインの稼働を一時停止します
:unpause |ドメインの一時停止を解除します
:pincpu |ドメインが使用している CPU 番号を表示します
:bvt |ドメインに対して BVT スケジューラ変数を設定します
:bvt_ctxallow |BVT コンテキスト切り替えがシステムで許可さ...
:atropos |ドメインのアトロポス変数を設定します
:rrobin |システムからリソースが割り当てられるラウンド・...
:info |Xen ホストに関する情報を表示します
:call |xend HTTP API 機能を直接コールします
スイッチ・引数・変数についての詳細を確認するには、help ...
# xm help command
** 6.3 Xensv (ウェブ管理インターフェース) [#t6251e02]
Xensv は Xen 仮想マシン群を管理するための実験的なウェブ...
開始するには次のようにコマンドを実行します:
> # xensv start
停止するには次のようにします:
> # xensv stop
標準設定では、ウェブ・インターフェース用にポート 8080 ...
Xensv が稼働中はウェブ・インターフェースを通してドメイ...
* 7. ドメインの設定 [#w96b9746]
以下のセクションではドメイン設定ファイルに関わる構文や...
** 7.1 設定ファイル [#c431a45f]
Xen 設定ファイルでは以下の標準的な変数が指定できます。...
:kernel |カーネル・イメージのパスを記述します。例:"/boo...
:ramdisk |RAM ディスクに用いるイメージのパスを記述します...
:memory |ドメインに割り当てるメモリサイズをメガバイト単...
:cpu |どの CPU でドメインを稼働させるか指定します。-1 は...
:console |ドメインのコンソールに接続するためのポート番号...
:nics |仮想ネットワーク・インターフェース番号
:vif |MAC アドレス一覧とドメイン毎のネットワーク・インタ...
> vif = [ 'mac=aa:00:00:00:00:11, bridge=xen-br0',
> 'bridge=xen-br1' ]
>
> 複数のブリッジの記述がありますが、これは xend が MAC ア...
<
:disk |ドメインの為に割り当てるブロック・デバイスの一覧...
> disk = [ 'phy:hda1,sda1,r' ]
> 物理デバイスの /dev/hda1 から /dev/sda1 をドメイン用に ...
<
:dhcp |ネットワーク設定に DHCP を使いたい場合 'dhcp' と...
:netmask |直接 IP ネットマスクを指定します
:gateway |直接 IP ゲートウェイ・アドレスを指定します
:hostname |仮想マシンに対するホスト名を指定します
:root |kernel コマンド行でルートとなるデバイスのパラメー...
:nfs_server |NFS サーバの IP アドレスを指定します(必要が...
:nfs_root |NFS サーバのルートとなるファイルシステムのパス...
:extra |kernel コマンド行で追加の指定を記述します(必要...
:restart |3つのオプションが使えます
> : always |どんな exit コードがあってもドメインを再起動...
> : never |決してドメインを再起動しません
> : onreboot |再起動のリクエストがあればドメインを再起動...
機能に柔軟性を持たせる為に、設定ファイル上で Python 言...
** 7.2 ネットワーク設定 [#kd014bd9]
多くのユーザの為に、標準のインストールでは'難しい設定を...
このセクションでは Xen の仮想ネットワークに柔軟性を与え...
*** 7.2.1 Xen 仮想ネットワーク技術 [#e75b98d6]
dom0 の仮想ネットワーク・インターフェースには各ドメイン...
これらの仮想インターフェースのトラフィックは domain 0 ...
*** 7.2.2 Xen ネットワーク用スクリプト [#i4f61a4a]
Xen の仮想ネットワークの設定は2つのシェルスクリプトに...
:network:|こちらのスクリプトは xend の起動・停止時や Xen ...
:vif-birdge:|このスクリプトは全ての仮想インターフェースの...
より複雑なネットワーク構成を実現するために(例:eth0 で...
** 7.3 ドライバによるドメイン設定 [#b6ac6c73]
ドメインが直接 PCI デバイスにアクセスさせたい場合、 I/O...
バックエンド側での特権を設定できるのは、現時点では SXP ...
現時点では他のドメインから仮想ブロック・デバイスをブロ...
PCI デバイスへのアクセスですが、デバイス毎に設定ファイ...
-- SXP 形式: フォームからデバイスのエレメントを読み込みます
>> (device (pci (bus x) (dev y) (func z)))
> 仮想エレメントの最上位に位置します。それぞれがドメイン...
-- Flat 形式: PCI デバイスのアドレス一覧を読み込みます
>> pci = ['x,y,z', ...]
> リスト内のそれぞれの要素は , 記号で分割して記述し、PCI ...
** 7.4 スケジューラ設定 [#e4c78269]
Xen は起動時に複数のスケジューラを選ぶことが出来ます。...
システムの管理者は自分のシステムに最も適切だと思うスケ...
*** 7.4.1 仮想時間の借用 [#uca3e2d2]
sched=bvt(標準設定)
BVT はCPU 時間を公平に釣り合って共有するようになってい...
**** 7.4.1.1 グローバル・パラメータ [#h3bdee66]
:ctx_allow |伝統的なスケジューラである 'quantum' のように...
**** 7.4.1.2 ドメイン毎のパラメータ [#eba59e53]
:mcuadv |MCU(Minimum Charging Unit) は共有されている CPU ...
:warp |ドメインに対して割り当てられた'仮想時間'の割り当て...
:warpl |ドメインがバックワードに移行するときに使用するこ...
:warpu |バックワードから復帰する際、ドメインの為に予め割...
*** 7.4.2 アトロポス(atrpos) [#s22bd5f0]
sched=atropos
アトロポスはソフトなリアルタイム・スケジューラです。共...
全てのドメインに対して期限(period)と期間(slice)が割り当...
メモ:アトロポスを用いる場合は CPU に対して過度の負担を与...
**** 7.4.2.1 ドメイン毎のパラメータ [#g87f18a4]
:period |ドメインが稼働中は、ほぼ通常通りの CPU 時間割り...
:slice | ドメインの(自発的に CPU を作動させる事がないな...
:latency|latency ではドメインが復帰したら(CPU が割り当て...
:xtratime|システムに余裕があるときにシステム時間がドメイ...
*** 7.4.3 ラウンド・ロビン(Round Robin) [#m51d74d4]
sched=rrobin
ラウンド・ロビン・スケジューラは Xen 内部のスケジューラ...
**** 7.3.1 グローバル・パラメータ [#q5ff4c40]
:rr_slice |それぞれのドメインが稼働している時間上限に達す...
* 8. 構築(Build)・起動(Boot)とデバッグ(Debug)オプション [...
この章では Xen システムの構築時(Build)・起動時(Boot)に...
** 8.1 Xen 構築オプション [#e8993730]
Xen の構築時のオプションは環境変数やコマンドラインでの ...
:verbose=y |Xen が想定外の現象を検出したときデバッグ用の...
:debug=y |デバッグ機能を有効にします。''verbose=y'' より...
:debugger=y |Xen デバッガを作動させます。これにより、Xen...
:perfic=y |
----
以下翻訳作業中(含む Developer's guide)
時間があれば Fedora Core 4 で「実際にどうよ?」というのも...
ページ名: