2010年12月8日 星期三

XEN 架設

2.4.1.1.1 XEN 虛擬機器建置

*

環境:


測試環境主機
           
主機OS: CenOS 5.5
            分割區配置: 20G 的配置如下
                sda1 = 100MB        /boot
sdb2 = 20300MB    mainvg
                lv_root        /    8000(8G)
                lv_swap    /swap    992(1G)   SWAP
                lv_tmp        /tmp    2976(3G)
                lv_var        /var    4992(5G)
                lv_home    /home    2976 (3G)
帳號/密碼:
root / student
student / student   
       
        網卡設定: (請自行修改)
eth0
IP: 192.168.1.1
                Submask: 255.255.255.0
                gateway:192.168.1.254
                DNS:168.95.1.1, 8.8.8.8
               
安裝需求:


主要以LAMP環境為前提建立本次專題基礎架構所必需的環境,由於linux 2.6版本核心內建了xen這套優質的虛擬套件,因此本次所實習的環境都是以XEN為主。
※考量到未來儲存空間的彈性運用或主機發生故障,必須遷移虛擬機器時,所以在規劃xen時虛擬機器的磁碟空間已儲存在網路獨立的空間中
  • Linux,作業系統 : 主要作業系統安裝server並啟動xen虛擬化服務套件,並安裝以下xen虛擬主機
  • Apache,網頁伺服器 : 本次實做Apache伺服器2台
  • mailerver : 郵件伺服器2台
  • MySQL,資料庫管理系統(或者資料庫伺服器)1台
  • 主控台server  1台
  • firewall server  1台



安裝過程:


檢查套件
kernel-xen-2.6.18-194.26.1.el5  具備xen核心的kernel版本
xen-libs-3.0.3-105.el5_5.5     xen的函式庫套件
xen-3.0.3-105.el5_5.5        主要的 xen 套件,包括設定檔、啟動腳本、所需的基本函式庫等
python-virtinst:提供終端機安裝的軟體
virt-manager:為一個圖形使用者介面軟體
xen-tools :
libvirt-0.6.3-33.el5
啟動virtual machin manager圖形化管理介面,xen允許對每一個domain-u,進行下面動作
執行:啟動虛擬機器
暫停:暫停虛擬機器(暫停後可以隨時啟動)
關機:
儲存:儲存目前機器狀態,可供日後隨時回復狀態,儲存時就像時間暫停一樣讓機器永遠        停留在之前最後的狀態
擷取畫面:將虛擬機器目前的畫面擷取下來

[root@xen0 ~]# uname -r         確認目前運行的kernel版本
2.6.18-194.26.1.el5xen

檢查本機可運作的環境
  • 半虛擬化 (Para-virtualization) 硬體需求:

        一般PC都能夠支援實體位址延伸技術 (PAE)
         確認方法檢查 CPU 的參數即可:cat /proc/cpuinfo | grep flags
因為是雙核的關係因此有2個 flags,有顯示pae的話就表示有支援實體位置延伸技術
  • 全虛擬化 (Fully-virtualization) 硬體需求:

目前在 x86 的主機當中, Intel 提供 VT 技術, AMD 則提供 SVM 技術。這兩種技    術在 CPU 的旗標分別是: Intel (vmx) 與 AMD (svm)
        確認方法檢查 CPU 的參數即可:cat /proc/cpuinfo | grep flags

都確認好了以後,利用 xm list 指令看看Domain-0是否啟動,這是虛擬機器主控台的角色,所有虛擬主機都架構在這之下~所以呢...這邊確定有啟動之後 我們就可以開始安裝所需要虛擬主機了。

※安裝步驟 
啟動圖形化介面
    應用程式 > 系統工具 > 虛擬機器管理員 > 新增一台虛擬機器

由於半虛擬模式只能夠使用 ftp nfs http的來源檔,所以我們要先在本機製作nfs server來分享安裝檔案
[root@xen0 ~]# mount /dev/cdrom /tmp
mount: block device /dev/cdrom is write-protected, mounting read-only
[root@xen0 ~]# mkdir /xen        建立一個 /xen目錄,要儲存光碟內容的
[root@xen0 ~]# cp -Rf /tmp/* /xen    拷貝光碟內容到/xen這個目錄
[root@xen0 ~]# vi /etc/exports
    /xen *(ro,sync)    建立分享路徑
[root@xen0 ~]# service nfs restart        啟動必需的服務
[root@xen0 ~]# service portmap restart
[root@xen0 ~]# exportfs
[root@xen0 ~]# showmount -e localhost        檢查是否正確分享出來了
Export list for localhost:
/xen *     並未限制讀取IP網段
做好nfs server之後繼續剛剛安裝步驟~


選擇安裝位置

選擇網路:這邊先用預設就好了 到時候再新增第2張網卡,連接內網使用


以上完成虛擬環境設定,接下來安裝centos作業系統於此







從新開機 進入設定畫面~~~~關閉防火牆及selinux

開機後順利登入操作模式~
重複步驟依序建立其他虛擬主機


接下來建立我們的網路環境






依序變更其餘主機的網卡名稱為 vmnet1~並指定他們的IP位置,如此便建立好我們需要時做的網路環境。

各設定檔資訊:


service xend start/stop/restart/static

文字模式執行工具安裝語法
virt-install [option]  
-n NAME    指定虛擬機器名稱
-r MENORY    指定虛擬記憶體容量
-u UUID    指定虛擬機器唯一識別碼,省略這ㄍ參數系統會自動指定
--vcpus=?     指定虛擬cpu數量
-f DISKFILE     指定虛擬機器的檔案路徑名稱
-s DISKSIZE     用來指定虛擬磁碟的大小,這個參數須配合 –f使用,DISKSIZE為虛擬磁                          碟的大小,單位是GB
-m MAC     網路卡實體位置,可省略
-P         以半虛擬化方式建立虛擬機器
-l LOCATION    指定安裝來源
※如果沒有指定系統會以提問方式取得所需資訊

文字模式管理工具 xm command [args]
常用的指令
       Console    連接至虛擬機器主控台
       Create        建立一個domain-u
       Destroy    刪掉一個domain-u
       List        列出domain
       Mem-set     重新設定記憶體大小
       Pause           暫停虛擬機器執行
       Reboot         重新啟動
       Restore    還原虛擬機器
       Save             儲存虛擬機器狀態
       Shutdown    關閉虛擬機器
       Unpause     取消暫停
       Uptime        顯示區你機器的uptime
       Vcpu-set      變更虛擬機器cup數量
例如  xm console xen1 連接xen1這部虛擬機器終端機畫面
xm list 中state狀態說明
   r(running)  b(block)  p(pause)  s(shutdown)  c(crash)  d(dying)


驗證:


對外主機 firewall    eth0 : 對外bridge連線...IP  112.104.61.166
               eth1 : 對內 vmnet1   IP  192.168.1.0/24          

沒有留言:

張貼留言