Version 27 (modified by jazz, 15 years ago) (diff) |
---|
【建立 Xen Machine】
0.相關套件安裝
sudo aptitude install build-essential libncurses5-dev kernel-package iproute bridge-utils python-twisted gcc binutils \ make zlib1g-dev python-dev transfig bzip2 screen ssh debootstrap libncurses5-dev x-dev libsdl1.2-dev bin86 bcc \ python-pam patch latex-make qemu qemu-launcher qemuctl graphviz graphviz-dev lvm2 libvncserver-dev libjpeg62-dev libjpeg62 \ gettext python-xml gawk tetex-extra tetex-base openssl libssl-dev mercurial libc6-dev-i386 libcurl4-openssl-dev \ bzip2 debhelper dpatch libsnmp-dev module-assistant quilt libxml2 python-xml libconfig-inifiles-perl libtext-template-perl
1.安裝 Xen-patched Kernel
- 1.1 下載 Xen-patched Kernel
$ sudo dpkg -i linux-xen0-2.6.22.9-rock_r01_amd64.deb $ sudo mv /boot/xen0-linux-2.6.22.9-rock /boot/vmlinuz-2.6.22.9-rock $ sudo mkinitramfs -o /boot/initrd.img-2.6.22.9-rock 2.6.22.9-rock
2.安裝 Xen
- 2.1 下載 Xen Source
$ cd /usr/src $ sudo wget http://bits.xensource.com/oss-xen/release/3.3.1/xen-3.3.1.tar.gz $ sudo tar zxvf xen-3.3.1.tar.gz $ cd xen-3.3.1 $ sudo make -j 4 xen $ sudo make -j 4 tools $ sudo make install-xen $ sudo make install-tools
- 2.2 編輯 Grub Menu
$ sudo vim /boot/grub/menu.lst title Xen 3.3.1 , kernel 2.6.22.9-rock root (hd0,0) kernel /boot/xen-3.3.1.gz module /boot/vmlinuz-2.6.22.9-rock root=/dev/sda1 ro nosplash module /boot/initrd.img-2.6.22.9-rock $ sudo vim /etc/
- 2.3 重新開機,選擇 Xen patch 過的核心來開機
### 將 gdm 關掉 ### $ sudo rcconf ### 將 loop 數目修改為 255 (預設為7) ### $ sudo vim /etc/modules loop max_loop=255 ### 重新開機 ### $ sync ; sudo reboot
3.配置 Xen 環境
### 修改 xend 配置檔 (前面數字為修改的行數) ### $ sudo vim /etc/xen/xend-config.sxp 61 (xend-relocation-server yes) 84 (xend-relocation-port 8002) 121 (xend-relocation-hosts-allow '') 122 #(xend-relocation-hosts-allow '^localhost$ ^localhost\\.localdomain$') 152 (network-script 'network-bridge netdev=eth0') 167 (vif-script vif-bridge) 207 (vnc-listen '0.0.0.0')
4.啟動 Xen
$ sudo xend start $ sudo xm list $ sudo xentop $ sudo xm help
5. 製作 VM Image
5.1 自行使用工具製作
- 5.1.1 安裝 xen-tools (此工具可協助您安裝 VM Image)
$ cd $ wget http://www.xen-tools.org/software/xen-tools/xen-tools-4.1.tar.gz $ tar zxvf xen-tools-4.1.tar.gz $ cd xen-tools-4.1 $ sudo make install ### 修改 xen-tools 的相關設定 (前面數字為行數) ### $ sudo vim /etc/xen-tools/xen-tools.conf 45 dir = /home 169 dhcp = 1 214 mirror = http://free.nchc.org.tw/debian/
- 5.1.2 產生 VM Image
$ sudo xen-create-image --hostname xen01
- 5.1.3 啟動剛產生的 VM
$ cd /etc/xen ### 修改 xen01 設定檔 ( mac 請將最後4碼修改成 0~9 或 A~F 之間的字母) ### $ sudo vim xen01.cfg 38 #dhcp = 'dhcp' 39 vif = [ 'mac=00:16:3E:3A:XX:XX' ] $ sudo xm create -c xen01.cfg $ sudo xm list $ sudo xentop $ sudo xm destroy xen01
5.2 使用其他團隊已做好的 Image
- 5.2.1 可從以下網站下載 VM Image (這些網站將其稱為 virtual appliance,最底下兩個是需付費)
- 5.2.2 練習使用已作好的 Image 檔來啟動 VM
$ wget http://virtualappliances.net/download/archive/VirtualAppliancesLAMP-xen-1.0.113.tar.bz2 $ tar jxvf VirtualAppliancesLAMP-xen-1.0.113.tar.bz2 $ cd VirtualAppliancesLAMP $ vim VirtualAppliancesLAMP.cfg $ sudo xm create -c VirtualAppliancesLAMP.cfg
6. 啟動 VM Cluster
此範例是安裝已做好的 Cluster image,1台 Master 和 4台 Slave,裡面已安裝了叢集工具 (C3 command suite,Torque/Maui? queue management 和 MPICH 等)來運行簡單的平行運算。
$ cd /home/virc $ sudo tar zxvf virtualcluster-1.0.tar.gz $ sudo ./prepare-cluster.sh ### 修改參數 (再依續修改 slave1.cfg slave2.cfg slave3.cfg slave4.cfg) ### $ cd config_files $ vim master.cfg kernel = '/boot/vmlinuz-2.6.22.9-rock' ramdisk = '/boot/initrd.img-2.6.22.9-rock' $ cd .. $ sudo ./start-cluster.sh $ sudo xm list