2013年1月31日木曜日

Xen(Domain0)のインストール

社内に余っているPCにCentOSを入れて、Xenをインストールしてみました(`・ω・´)シャキーン
このPCにXenを入れて、MySQLのフェイルオーバーなどを実験しちゃうぞm9( ゚Д゚) ドーン!

■Xenとは
オープンソースで提供されている仮想化ソフトウェア。
仮想化記述には、VMware、OpenVZ、KVM、などがあるそうです。
その中でもXenは、
・仮想領域ごとにカーネル空間を複数持つ
・「準仮想化」と「完全仮想化」の2種類のモードがある。
・実体データの保存形式を「パーティションベース」のものと「ファイルベース」のものから選択することができる。
・Domain0(管理OS)とゲストOS(DomainU)で仮想領域が管理される

詳細はこちらのサイトの方に詳しく書かれています!φ(`д´)メモメモ...
実践! Xenで実現するサーバ統合(1)
2009-02-18 [仮想化][Xen]Xenでサーバ環境構築その1~xenについて知ろう~

それではインストールを行って行きたいと思います。

■手順1)仮想化が行えるか確認する。

Xenの仮想化に対応するためには、PAE 拡張のある CPU が必要となります。
何か表示されればOK!
# grep pae /proc/cpuinfo
flags           : fpu tsc msr pae cx8 apic mtrr cmov pat clflush mmx fxsr sse sse2 ss nx constant_tsc pni est ssse3
flags           : fpu tsc msr pae cx8 apic mtrr cmov pat clflush mmx fxsr sse sse2 ss nx constant_tsc up pni est ssse3

次に完全仮想化もできるか一応確認してみる
#何も帰ってこない場合には、完全仮想化に対応していない
# egrep -e 'vmx|svm' /proc/cpuinfo
何も表示されなかったので、このPCでは完全無効は無理みたいですガ━━(;゚Д゚)━━ン!!
#xen-3.0-x86_32pと出ると無効になっているらしい
# cat /sys/hypervisor/properties/capabilities
xen-3.0-x86_32p

■手順2)xen(Domain0)のインストール
# yum install xen kernel-xen virt-manager
Loaded plugins: fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * elrepo: elrepo.org
 * epel: mirrors.ustc.edu.cn
 * extras: www.ftp.ne.jp
 * rpmforge: mirror-fpt-telecom.fpt.net
 * updates: www.ftp.ne.jp
Setting up Install Process
Resolving Dependencies
:
:
省略
:
:
Dependencies Resolved

=====================================================================================================================================================================================
 Package                                            Arch                           Version                                                     Repository                       Size
=====================================================================================================================================================================================
Installing:
 kernel-xen                                         i686                           2.6.18-348.1.1.el5                                          updates                          21 M
 virt-manager                                       i386                           0.6.1-16.el5                                                base                            1.6 M
 xen                                                i386                           3.0.3-142.el5                                               base                            1.9 M
Installing for dependencies:
 bridge-utils                                       i386                           1.1-3.el5                                                   base                             29 k
 e4fsprogs-libs                                     i386                           1.41.12-3.el5                                               base                            109 k
 gnome-python2-gnomekeyring                         i386                           2.16.0-3.el5                                                base                             16 k
 gtk-vnc                                            i386                           0.3.8-3.el5                                                 base                             80 k
 gtk-vnc-python                                     i386                           0.3.8-3.el5                                                 base                             12 k
 libvirt                                            i386                           0.8.2-29.el5                                                base                            3.0 M
 libvirt-python                                     i386                           0.8.2-29.el5                                                base                            237 k
 python-virtinst                                    noarch                         0.400.3-13.el5                                              base                            384 k
 xen-libs                                           i386                           3.0.3-142.el5                                               base                            176 k
 xz-libs                                            i386                           4.999.9-0.3.beta.20091007git.el5                            base                            100 k

Transaction Summary
=====================================================================================================================================================================================
Install      13 Package(s)
Upgrade       0 Package(s)

Total download size: 29 M
Is this ok [y/N]: y
Downloading Packages:
(1/13): gtk-vnc-python-0.3.8-3.el5.i386.rpm                                                                                                                   |  12 kB     00:00
(2/13): gnome-python2-gnomekeyring-2.16.0-3.el5.i386.rpm                                                                                                      |  16 kB     00:00
(3/13): bridge-utils-1.1-3.el5.i386.rpm                                                                                                                       |  29 kB     00:00
(4/13): gtk-vnc-0.3.8-3.el5.i386.rpm                                                                                                                          |  80 kB     00:00
(5/13): xz-libs-4.999.9-0.3.beta.20091007git.el5.i386.rpm                                                                                                     | 100 kB     00:00
(6/13): e4fsprogs-libs-1.41.12-3.el5.i386.rpm                                                                                                                 | 109 kB     00:00
(7/13): xen-libs-3.0.3-142.el5.i386.rpm                                                                                                                       | 176 kB     00:00
(8/13): libvirt-python-0.8.2-29.el5.i386.rpm                                                                                                                  | 237 kB     00:00
(9/13): python-virtinst-0.400.3-13.el5.noarch.rpm                                                                                                             | 384 kB     00:00
(10/13): virt-manager-0.6.1-16.el5.i386.rpm                                                                                                                   | 1.6 MB     00:00
(11/13): xen-3.0.3-142.el5.i386.rpm                                                                                                                           | 1.9 MB     00:00
(12/13): libvirt-0.8.2-29.el5.i386.rpm                                                                                                                        | 3.0 MB     00:00
(13/13): kernel-xen-2.6.18-348.1.1.el5.i686.rpm                                                                                                               |  21 MB     00:05
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                3.9 MB/s |  29 MB     00:07
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : xz-libs                                                                                                                                                      1/13
  Installing     : bridge-utils                                                                                                                                                 2/13
  Installing     : gtk-vnc                                                                                                                                                      3/13
  Installing     : gtk-vnc-python                                                                                                                                               4/13
  Installing     : e4fsprogs-libs                                                                                                                                               5/13
  Installing     : xen-libs                                                                                                                                                     6/13
  Installing     : libvirt                                                                                                                                                      7/13
  Installing     : libvirt-python                                                                                                                                               8/13
  Installing     : gnome-python2-gnomekeyring                                                                                                                                   9/13
  Installing     : python-virtinst                                                                                                                                             10/13
  Installing     : kernel-xen                                                                                                                                                  11/13
  Installing     : virt-manager                                                                                                                                                12/13
  Installing     : xen                                                                                                                                                         13/13

Installed:
  kernel-xen.i686 0:2.6.18-348.1.1.el5                             virt-manager.i386 0:0.6.1-16.el5                             xen.i386 0:3.0.3-142.el5

Dependency Installed:
  bridge-utils.i386 0:1.1-3.el5       e4fsprogs-libs.i386 0:1.41.12-3.el5               gnome-python2-gnomekeyring.i386 0:2.16.0-3.el5   gtk-vnc.i386 0:0.3.8-3.el5
  gtk-vnc-python.i386 0:0.3.8-3.el5   libvirt.i386 0:0.8.2-29.el5                       libvirt-python.i386 0:0.8.2-29.el5               python-virtinst.noarch 0:0.400.3-13.el5
  xen-libs.i386 0:3.0.3-142.el5       xz-libs.i386 0:4.999.9-0.3.beta.20091007git.el5

Complete!
■手順3)xen対応のKernelを利用するため、/etc/sysconfig/kernelを編集する
「/etc/sysconfig/kernel」の「DEFAULTKERNEL=kernel」行を「DEFAULTKERNEL=kernel-xen」に変更します。
vi /etc/sysconfig/kernel

#DEFAULTKERNEL=kernel
DEFAULTKERNEL=kernel-xen

#現在のカーネルの確認
# uname -r
2.6.18-348.el5PAE
■手順4)initrdを利用するため、/etc/modprobe.confを編集する
「/etc/modprobe.conf」の最下行に「alias scsi_hostadapter xenblk」を追加します。
vi /etc/modprobe.conf
alias scsi_hostadapter xenblk
■手順5)xen対応のKernelで起動させるため、/boot/grub/menu.lstを編集する
「/boot/grub/menu.lst」の「default=X」行のXの値をxen対応カーネルの番号に変更します。
kernel-xenをインストールすることでGRUBで0に当たるカーネルイメージが
Xenのカーネルになるなのでデフォルトの起動イメージを0に変更する。
vi /boot/grub/menu.lst

#default=1
default=0

■手順6)Xen管理デーモンの自動起動設定
# chkconfig xend on
■手順7)上記設定を有効にするため、再起動します。
shutdown -r now
■手順7)Domain0の確認
Domain0とは、他の仮想マシン(DomainU)の作成や仮想デバイスの管理を行う管理OSのこと。
# xm list
Name                                      ID Mem(MiB) VCPUs State   Time(s)
Domain-0                                   0     3591     2 r-----     56.6

#xen用kernelで起動出来ているかどうかの確認(xenつきに変わっている)
# uname -r
2.6.18-348.1.1.el5xen
以上(`・ω・´)ゞビシッ!!

次回はゲストOSのインストールを行いたいと思います(ΦωΦ)フフフ…

参考URL

0 件のコメント:

コメントを投稿