Xen Setup · 5 min read · Dec 07, 2025
Debian Wheezy (7.0.2) に Xen 4.3 をセットアップし、その後 Jessie にアップグレードする方法
Debian Wheezy (7.0.2) に Xen 4.3 をセットアップし、その後 Jessie にアップグレードする方法
バージョン 1.0
著者: Peter Okupski
これは、XEN(dom0ハイパーバイザー)と1つの仮想システム(domUゲスト)の迅速かつ簡単なセットアップです。私は、VMware の次の経験として XEN をテストしたいと思い、多くのウェブページが古く、古いバグやエラーが多いため、XEN を試してみることにしました。
重要な注意:
このチュートリアルから利益を得るのは、XenOrchestra、Cloudstack、Opencloud などの実際のクラウドアプライアンスを使用せずに、シンプルな仮想マシンをテストしたい初心者のみです。これが、ストレージ/メモリ/CPU 割り当てのための少なくとも Web GUI といくつかの機能を持つ実際のクラウドアプライアンスが必要な人々の時間を節約することを願っています。現時点では、シンプルな Xen ハイパーバイザーには適用できません(または、作業が多すぎます:)
対象外: 高可用性や実際のクラウドアプライアンスが必要なユーザー/企業
Xen の初心者の皆さんには、このビデオを見て、Xen の感覚と理解を得ることをお勧めします。
チュートリアルは以下のセクションに分かれます:
- LVM セットアップを伴うシンプルな Debian インストール
- Jessie へのアップグレード、最新の XEN 修正に対応
- XEN 4.3 のインストール
- XEN のいくつかのチューニングのヒント
- XEN のシンプルなブリッジセットアップ
- ホストを作成するためのテンプレートを使用するための XEN セットアップ
- oneliner で最初の domU ゲストシステムを作成する;)
1. LVM セットアップを伴うシンプルな Debian インストール
Broadcom ネットワークカードなどに必要な非自由ファームウェアがすでに含まれている非公式(しかし Debian の)ISO を使用することをお勧めします。これにより、この素晴らしく簡単なプロセスが壊れる可能性があります。
Debian 非公式 ISO
Debian インストーラーの初期セットアップ後、以下のようにカスタムパーティションセットアップを選択してください。私は以下のパーティションを作成しました:
| マウントポイント | サイズ | コメント |
| /boot | 200 MB | (プライマリ) (新しいパーティションの場所: 開始) (ext3) (ブート可能フラグ: on <– 重要、さもなければシステムが起動しません!) |
| swap | 1GB | (論理) (新しいパーティションの場所: 開始) (dom0 メモリは 512M にカットされます) |
| / | 6GB | (論理) (新しいパーティションの場所: 開始) (ext3) |
残りのディスクを LVM として設定できます。変更を受け入れ、ディスクに書き込む必要があります。
インストールが完了し、grub をディスクに書き込む必要があります。その後、インストールが再起動します。
インストール後、パーティションは以下のようになります:
root@xen-dom0:~# df -h
ファイルシステム サイズ 使用済み 利用可能 使用% マウントポイント
/dev/sda6 6.0G 2.0G 2.4G 30% /
udev 10M 0 10M 0% /dev
tmpfs 38M 268K 38M 1% /run
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 266M 0 266M 0% /run/shm
/dev/sda1 180M 28M 140M 17% /boot次に、lvm をインストールし、最初の物理ボリュームを作成します。
apt-get install lvm2pvcreate /dev/sda7| 物理ボリューム "/dev/sda7" が正常に作成されました root@xen-dom0:/etc/xen-tools# pvscan PV /dev/sda7 lvm2 [273.51 GiB] 合計: 1 [273.51 GiB] / 使用中: 0 [0 ] / VG にない: 1 [273.51 GiB] root@xen-dom0:/etc/xen-tools# pvdisplay "/dev/sda7" は "273.51 GiB" の新しい物理ボリュームです --- 新しい物理ボリューム --- PV 名 /dev/sda7 VG 名 PV サイズ 273.51 GiB 割り当て可能 いいえ PE サイズ 0 合計 PE 0 自由 PE 0 割り当てられた PE 0 PV UUID 1vKp2c-KbmM-w8Ql-noOe-U00J-hlr0-FsKwOM |
ボリュームグループ (vg0) を作成する時間です(作成前に p/v の文字の変更に注意してください)
vgcreate vg0 /dev/sda7| ボリュームグループ "vg0" が正常に作成されました |
すべてがうまくいったか確認しましょう。
vgdisplay| --- ボリュームグループ --- VG 名 vg0 システム ID フォーマット lvm2 メタデータエリア 1 メタデータシーケンス番号 1 VG アクセス 読み取り/書き込み VG ステータス リサイズ可能 最大 LV 0 現在の LV 0 オープン LV 0 最大 PV 0 現在の PV 1 アクティブ PV 1 VG サイズ 273.51 GiB PE サイズ 4.00 MiB 合計 PE 70018 割り当て PE / サイズ 0 / 0 自由 PE / サイズ 70018 / 273.51 GiB VG UUID 2a3kn9-DvVA-3Qac-g4Wz-f2Xo-s5hk-Yh5fBc |
LVM を設定した後、不要なパッケージで dom0 をクリーンアップできます:
apt-get remove bsd-mailx exim4 exim4-base exim4-daemon-light nfs-common次に、必要な/必要かもしれないいくつかをインストールできます:
apt-get install mc screen ssh debootstrap python iproute bridge-utils libcurl3-devインストール後、純粋な Debian 7.0.2 は約 760MB かかります。
| rootfs 4.6G 764M 3.7G 18% / |
2. Debian Jessie へのアップグレード
今、私たちはテスト(Jessie)にアップグレードできます。XEN をできるだけ新鮮に保つ必要があります。
このジェネレーターを使用してください - 時間といくつかのエラーを節約できます:) または、/etc/apt/sources.list で “wheezy” を “jessie” に、”stable” を “testing” に変更してください。
/etc/apt/sources.list
| deb http://ftp.pl.debian.org/debian testing main contrib non-free deb-src http://ftp.pl.debian.org/debian testing main contrib non-free deb http://ftp.debian.org/debian/ jessie-updates main contrib non-free deb-src http://ftp.debian.org/debian/ jessie-updates main contrib non-free deb http://security.debian.org/ jessie/updates main contrib non-free deb-src http://security.debian.org/ jessie/updates main contrib non-free |
最初:
apt-get update; apt-get -y upgradeアップデート中にサービスを再起動するように求められます - はいを選択してください。次に、必要なすべての .deb をダウンロードします(安全のため):
apt-get -y --download-only dist-upgrade次に、実際のアップデートに進むことができます。これを行った後、カーネルが 3.2 から 3.11 に変更されるので、再起動するのが最善です。
apt-get -y dist-upgrade整理:
apt-get clean; apt-get autoclean;apt-get autoremove3. XEN 4.3 のインストール
最初に、CPU がハードウェア仮想化をサポートしているかどうかを確認する必要があります。
egrep '(vmx|svm)' --color=always /proc/cpuinfo出力は次のようになります
root@xxxx:~# egrep '(vmx|svm)' --color=always /proc/cpuinfo
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm tpr_shadow vnmi flexpriority
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm tpr_shadow vnmi flexpriority次に、XEN をインストールします: ハイパーバイザー、XEN 対応カーネル、および XEN ツール。これはメタパッケージで行うことができます:
apt-get install xen-linux-system xen-toolsDebian Wheezy は Grub 2 を使用し、デフォルトでは通常のカーネルが最初にリストされ、次に XEN ハイパーバイザーとそのカーネルがリストされます。これを変更して Grub 2 が XEN を優先して起動するようにするには、Grub の XEN 構成スクリプト (20_linux_xen) の優先度を標準の Linux 構成 (10_linux) よりも高くする必要があります。これは dpkg-divert を使用して最も簡単に行えます:
dpkg-divert --divert /etc/grub.d/08_linux_xen --rename /etc/grub.d/20_linux_xenGrub 構成の更新後は、次のコマンドを実行して構成を適用する必要があります:
update-grub4. Xen のチューニング
- Dom0 メモリを 512Mb に設定し、バルーニングを無効にして、DomUs が Dom0 のメモリを使用しないようにします。
- 論理ボリューム上の仮想マシンがブートメニューに表示されないようにします。
- Xendomains の保存と復元を無効にします。
- dom0 に 1 番目の CPU のみを設定します。
1. Dom0 メモリを 512Mb に設定し、バルーニングを無効にする
/etc/xen/xend-config.sxp
| (dom0-min-mem 512) (enable-dom0-ballooning no) |
2. 論理ボリューム上の仮想マシンがブートメニューに表示されないようにする
Grub を修正します:
/etc/default/grub
| #dom0 にメモリを割り当てる GRUB_CMDLINE_XEN="dom0_mem=512M" # OS プローバーを無効にする GRUB_DISABLE_OS_PROBER=true |
update-grub;reboot3. Xendomains の保存と復元を無効にする
/etc/default/xendomains
| #XENDOMAINS_SAVE=/var/lib/xen/save XENDOMAINS_SAVE= #XENDOMAINS_RESTORE=true XENDOMAINS_RESTORE=false |
4. dom0 を 1 番目の CPU のみに制限する
デフォルトでは、すべての CPU が dom0 とすべての domU(ゲスト)で共有されます。ゲストが CPU 時間を消費しすぎると、dom0 の責任が壊れる可能性があります。これを避けるために、dom0 に 1 つ(または複数)のプロセッサコアを付与し、dom0 に固定することができます。
次のオプションを /etc/default/grub に追加して、dom0 に 1 つの CPU コアを割り当てます:
/etc/default/grub
| # Xen ブートパラメータすべての Xen ブート用 GRUB_CMDLINE_XEN="dom0_mem=512M dom0_max_vcpus=1 dom0_vcpus_pin" # OS プローバーを無効にする GRUB_DISABLE_OS_PROBER=true |
これらの後に update-grub を実行することを忘れないでください!
update-grubまた、/etc/xen/xend-config.sxp に次のような変更を加えます:
/etc/xen/xend-config.sxp
| (dom0-cpus 1) |
!! 再起動する前に update-grub を実行したか確認し、その後サーバーを再起動してください !!
5. XEN のシンプルなブリッジセットアップ
ほとんどのセットアップでは BRIDGEed 構成を使用し、シンプルな環境を計画している場合はそれで十分ですが、VLAN や ACL などが必要な場合は OpenVSwitch を使用することを強くお勧めします。
ここでは、シンプルなブリッジの簡単なバージョンを示します:
apt-get install bridge-utils次に、/etc/network/interfaces を編集する必要があります。
/etc/network/interfaces
| ##ループバックネットワークインターフェース auto lo iface lo inet loopback iface eth0 inet manual auto xenbr0 iface xenbr0 inet static address 10.0.9.100 netmask 255.255.255.0 network 10.0.9.0 broadcast 10.0.9.255 gateway 10.0.9.1 # dns-* オプションは、インストールされている場合、resolvconf パッケージによって実装されます dns-nameservers 10.0.9.2 dns-search yourdomain.net bridge_ports eth0 #仮想化環境で役立つ可能性のある他のオプション bridge_stp off # スパニングツリー プロトコルを無効にする bridge_waitport 0 # ポートが利用可能になる前の遅延なし bridge_fd 0 # 転送遅延なし |
その後、次のコマンドでネットワークを再起動する必要があります。
/etc/init.d/networking restartブリッジが立ち上がったかどうかを確認します。
brctl show| ブリッジ名 ブリッジ ID STP 有効 インターフェース xenbr0 8000.001a6479cd8c いいえ eth0 |
6. XEN-Tools を使用して仮想マシン(ゲスト-domU)のテンプレートを使用するためのセットアップ
次に、テンプレートを使用して新しい domU の最初のイメージを作成します。ファイルを編集する必要があります:
/etc/xen-tools/xen-tools.conf
| lvm = vg0 # 前に作成したボリュームグループ install-method = debootstrap # これにより Debian インストーラーが起動します size = 10Gb # ディスクイメージサイズ。 memory = 512Mb # メモリサイズ swap = 2Gb # スワップサイズ noswap = 1 # 新しいシステムにスワップを全く使用しない。 fs = ext4 # ディスクイメージに EXT3 ファイルシステムを使用します。 dist = `xt-guess-suite-and-mirror --suite` # インストールするデフォルトのディストリビューション。 image = sparse # スパースとフルディスクイメージを指定します。 gateway = 10.0.9.1 # ブリッジを使用している dom0 のゲートウェイ netmask = 255.255.255.0 # コメントは必要ありません;) broadcast = 10.0.9.255 # ブロードキャスト bridge = xenbr0 # ここでは、作成したブリッジを使用する必要があります。xen は domU で eth0 にします。 cachedir = /var/cache/xen-tools/archives/ # 今後使用するための *.debs の場所 passwd = 1 # 新しいマシンに作成するためのルートパスワードを要求します kernel = /boot/vmlinuz-`uname -r` # dom0 が使用しているのと同じカーネルを使用します(これは問題を避けるために重要です) initrd = /boot/initrd.img-`uname -r` # initrd についても同様 mirror = `xt-guess-suite-and-mirror --mirror` mirror = ftp://ftp.pl.debian.org/debian/ # Debian のミラーを入力 ext3_options = noatime,nodiratime,errors=remount-ro # 新しいマシンに適用するためのシンプルなオプション ext2_options = noatime,nodiratime,errors=remount-ro xfs_options = defaults reiserfs_options = defaults btrfs_options = defaults boot = 1 # 新しいマシンを作成後にブートしますか。もちろんブートします! |
7. 最初の domU ゲストの作成
今、最初の domU ホストを作成できます:
xen-create-image --hostname domU-test --dist=jessie --vcpus=4 --ip=10.0.9.101これには、接続の速度、CPU、ディスクの速度に応じて約 3-4 分かかります。完了したら、動作しているかどうかを確認できます。
xm list| 名前 ID メモリ VCPUs 状態 時間(s) Domain-0 0 512 1 r----- 93.8 domU-test 1 512 4 -b---- 23.9 |
xen-create-image –help を読むことをお勧めします。これにより、オプションを提供して変更できる内容のアイデアが得られます。例: コマンドを実行した後、必要なすべてのその他のこと。イメージを生成し、すぐに起動可能なシステムテンプレートとして使用するオプションもあります。これにより、毎回 3 分間インストーラーを実行する必要がなくなります。
新しいホストに ssh でログインできます。
以下は、このチュートリアルで使用したリンクです:
- Debian Wiki の Xen
- OpenVSwitch
- Debian Wheezy の Xen 4
- XEN のチューニング - XEN wiki
- Apt ソースジェネレーター
- Xen ベストプラクティス
- LVM の使用方法
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。