我們就可以開始安 Linux Guest VM ,按下 New VM 你可以看到目前 XenServer 有支援的 OS的列表.其中的 Debian Eth4.0/Debian Sarge 3.1 是屬於 built-in distribution ,也就是說他們不需要再經過安裝的步驟,直接新增 VM 然後用預設值就可以直接使用了.所以在這裡就不講使用方式.下面為範例的是 Red Hat Enterprise Linux 4.5.
note:如果遇到我們想安裝的作業系統不在列表中那該怎麼辦,此時你可以找出核心版本類似的來安裝,比如你要安裝 Fedora core 6 可以選擇 Red Hat Enterprise Linux 5 來安裝,不過 XenServer 不保證不在列表中的作業系統可以正常安裝使用.如果這樣還不行 XenServer 建議可以使用 P2V(Physical to Virtual Conversion),先將作業系統安裝在一台機器上再使用 P2V 的方式轉換亦可.(目前有支援 P2V 的有 1.RHEL3, 2.RHEL4, 3.SLES9)
我們需要一個名稱來管理我們的 Guest OS.依你的喜好或是用預設的名稱也可以.
很不幸的舊版安裝 Linux 只能透過網路,nfs,http 或是 ftp 都可以.指定方法如下:
- HTTP: http://server/path
- FTP: ftp://server/path
- NFS: nfs://server:/path
如何開啟這些服務請參考 – XenServer – PXE Installation
不過這一點在 XenServer 4.1 就有改善了,有些 OS 可以透過光碟或是 ISO 映像檔來安裝.如下的 OS 都可以. 除了安裝媒體不同外,安裝方式皆相同.通常建議使用 ISO 檔的方式安裝,你可以同時安裝不同的 VMs 只要透過不同的 ISO 即可.如何透過 ISO 安裝可以參考 新增 CIFS/NFS ISO library 建立 ISO images
- Red Hat Enterprise Linux 5.0-5.1, 32-bit
- Red Hat Enterprise Linux 5.0-5.1, 64-bit
- Red Hat Enterprise Linux 4.5-4.6
- CentOS 4.5-4.6
- CentOS 5.0-5.1, 32-bit
- CentOS 5.0-5.1, 64-bit
- Oracle Enterprise Linux 5.0-5.1, 32-bit
- Oracle Enterprise Linux 5.0-5.1, 64-bit
VM 下的 OS 使用的資源,其中CPU 是與主系統共同分享使用的,但是記憶體就是會保留這麼多來給 Guest 使用,如果系統保留的記憶體不足時你將無法繼續安裝新的 Guest OS.
這裡是 Guest 將使用的硬碟大小.你可以透過 "Edit.." 鍵來修改硬碟大小.
按下 "Finish" 鍵後開始安裝你的 Linux Guest OS 吧!!
安裝 Guest 和我們一般安裝 OS 時是一樣的.不過很可惜的是安裝 Linux Guest OS 時只有文字介面.而且預設也沒有 X windows 必須透過 VNC(Virtual Network Computing) 才會有 X window 下面會再介紹如何設定 VNC.
安裝完 Linux Guest OS 後還要安裝一項東西 "Linux guest agent" ,我們可以使用 XenServer 所提供的虛擬 DVD Drive 如下圖所示,選擇 XenServer Tools – xs-tools.iso,這一個 iso 裡面就包括了 "Linux guest agent".
要特別注意的是,這裡的光碟機代號不是像一般我們使用的 /dev/cdrom 而是 /dev/xvdd ,根據 XenServer 的說法是,我們用的這個 DVD/CDROM 並不是"真"的裝置.所以在 XenCenter 或 CLI(Command Line Interface) 退出光碟時整個裝置也會跟著消失不見.但是一般的 /dev/cdrom 卻是聯結到真實的裝置位址,所以在 VM guest 無法沿用 /dev/cdrom 這個光碟裝置.
安裝 "Linux huest agent"方式如下:
[root@benjr ~]# /mnt/Linux/install.sh Detected `Red Hat Enterprise Linux AS release 4 (Nahant Update 6)' (rhel version 4). The following changes will be made to this Virtual Machine: * lvm configuration update. * packages to be installed/upgraded: - kernel-xenU-2.6.9-67.0.4.EL.xs4.1.0.19.i686.rpm - mkinitrd-4.2.1.13-1.i386.rpm - xe-guest-utilities-4.1.0-257.i386.rpm Continue? [y/n] y Preparing… ########################################### [100%] 1:xe-guest-utilities ########################################### [100%] Preparing… ########################################### [100%] 1:mkinitrd ########################################### [100%] Preparing… ########################################### [100%] 1:kernel-xenU ########################################### [100%] Making kernel 2.6.9-67.0.4.EL.xs4.1.0.19xenU the default in grub configuration. You should now reboot this Virtual Machine. [root@benjr ~]# reboot
我們需要重新開機來讓他生效.
安裝 Linux guest agent ,可以使得 Host 可以透過他來得知目前 VM 的資訊.如下所示:
- Linux distribution name and version (major, minor revision).
- Kernel version (uname).
- IP address of each Ethernet interface.
- Total and free memory within the VM.
你可以在 General 看出明顯的差異點.安裝前和安裝 Linux guest agent 之後.
RedHat Enterprise Server 4/5 安裝完之後就可以開始設定 GDM(GNOME Display Manager) 和 VNC(Virtual Network Computing) 這樣才會有圖形介面,廢話不多說下面就是如何設定.
必要的兩個套件
[root@benjr ~]# rpm -q vnc-server gdm vnc-4.0-11.el4 gdm-2.6.0.5-7.rhel4.15
修改一下 gdm 的設定檔
#For RHEL4
[root@benjr ~]# vi /etc/X11/gdm/gdm.conf
#For RHEL5
[root@benjr ~]# cp /etc/gdm/custom.conf /etc/gdm/gdm.conf [root@benjr ~]# vi /etc/gdm/gdm.conf [servers] 0=Standard #<–預設值 #改成下面這個 0=VNC #增加下面設定 [server-VNC] name=VNC Server command=/usr/bin/Xvnc -SecurityTypes None -geometry 1024×768 -depth 16 -BlacklistTimeout 0 #其中的 -geometry 1024×768 就是 VNC 的顯示尺寸大小(VNC screen resolution) flexible=true [server-Standard]
note:防火牆
VNC Display-0 預設使用 port 5900 的 port,VNC Display-1 預設使用 port 5901 的 port 以此類推,不同版本的 RedHat 使用不同的指令,如下所示.
Red Hat Linux 3, use redhat-config-securitylevel-tui.
Red Hat Linux 4 and 5, use system-config-securitylevel-tui. 請自行參考 RHEL5 iptables
[root@benjr ~]# service vncserver restart
重新開啟 vncserver 就可以了
[root@benjr ~]# chkconfig vncserver on
使用 chkconfig 可以讓系統開機時就能把 vncserver 開啟.
[root@benjr ~]# vi /etc/inittab # Default runlevel. The runlevels used by RHS are: # 0 – halt (Do NOT set initdefault to this) # 1 – Single user mode # 2 – Multiuser, without NFS (The same as 3, if you do not have networking) # 3 – Full multiuser mode # 4 – unused # 5 – X11 # 6 – reboot (Do NOT set initdefault to this) # id:5:initdefault: #修改runlevel成為5,這樣下次開機就會進入 X window
如果設定正確,而且進入 run level 5 那你會在右上方會看到一個 "switch to Graphical Console",就可以將會面切換至圖形介面.
如果他還是呈現反灰的樣式,而且啟動 vncserver 時顯示出 Fatal server error ,你可以檢查一下 /var/log/gdm/:.log 看是設定檔還是有哪邊有錯誤.
2 thoughts on “XenServer 安裝 RHEL Guest VM”