1、xen虛擬化環境安裝

環境爲 vm11

OracleLinux-R5-U8-Server-x86_64-dvd.iso

下載地址爲:http://mirror.aarnet.edu.au/pub/oraclelinux/

 

在VM11上安裝OracleLinux-R5-U8,步驟省略。。。。

選擇英文版本的安裝

不然後面會報錯的

還要安裝桌面應用~

 

確保虛擬機可以上網

 

開啓虛擬機的CPU虛擬化

 

內核爲

uname -a

Linux localhost.localdomain 2.6.32-300.10.1.el5uek #1 SMP Wed Feb 22 17:37:40 EST 2012 x86_64 x86_64 x86_64 GNU/Linux

 

 

使用root用戶登錄

wKioL1drVcmhVLYfAAAVaaLFc0o849.png-wh_50

 

fdisk -l

給新的硬盤添加一個分區

fdisk /dev/sdb

n

p

1

w

 

df -l 查看是否分區成功

 

格式化新的分區

mkfs -t ext3 -c /dev/sdb1

 

創建新的目錄

mkdir /data

 

掛載

mount /dev/sdb1 /data

 

編輯分區配置文件vi /etc/fstab,根據需求添加掛載信息,配置完成後“:wq”保存退出

/dev/sdb1         /data         ext3        defaults        0      0



wKioL1drVgqwiPOkAAB2vmgqc5w042.png-wh_50

命令解釋:

wKiom1drVefTpQOcAAAijVpEVCY309.png-wh_50

<dump> dump 工具通過它決定何時作備份. dump 會檢查其內容,並用數字來決定是否對這個文件系統進行備份。 允許的數字是 0 和 1 。0 表示忽略, 1 則進行備份。大部分的用戶是沒有安裝 dump 的 ,對他們而言 <dump> 應設爲 0。
<pass> fsck 讀取 <pass> 的數值來決定需要檢查的文件系統的檢查順序。允許的數字是0, 1, 和2。 根目錄應當獲得最高的優先權 1, 其它所有需要被檢查的設備設置爲 2,0 表示設備不會被 fsck 所檢查。


使用命令“mount -a”重新掛載分區配置文件裏的分區,然後使用“df -h”命令查看是否掛載成功,出現以下信息證明掛載成功。
注:如果執行“mount -a”出錯,請檢查是否配置文件出現了問題,相關的路徑要填寫正確,使用絕對路徑,需自行創建要掛載的路徑

wKioL1drVlrRj2d9AABOeKDqEAo610.png-wh_50

 

 

安裝XEN環境

 

配置yum源 

說明:通過安裝源進行安裝是最簡單的。 

# cd /etc/yum.repos.d  

 

 

oracle 5.8版本的配置源

 wget http://public-yum.oracle.com/public-yum-el5.repo

 

/*

oracle 6版本以後的配置源     好像已經有內置源了

wget http://public-yum.oracle.com/public-yum-ol6.repo 

 

wget  http://public-yum.oracle.com/public-yum-ol7.repo  不管他 已經包含有yum的源了、可能會產生一個public-yum-ol7.repo.1的文件

 

cp public-yum-ol7.repo.1 public-yum-ol7.repo  複製public-yum-ol7.repo.1到public-yum-ol7.repo

cp:是否覆蓋"public-yum-ol7.repo"? y       覆蓋原來的源配置文件

*/

 

 

vi public-yum-el5.repo     進入源配置文件,進行修改  按i進入編輯、修改後按esc、:wq!保存退出

 

因爲我的是OracleLinux-R5-U8版本的、所以找到[ol5_u8_base]  那個版本的鏡像就找相對應的   

將enabled=0 修改爲enabled=1

 

 

 yum安裝xen 

# yum install kernel-xen xen-libs xen virt-viewer      可能會提示有進程被佔用了、沒關係、可以 等一會再安裝

根據提示按y

 

如果提示yum被另一個進程佔用了

可以使用kill -s 9 進程號

 

安裝結束後

 

修改啓動列表,使用運行xen的內核啓動系統 

 cat /boot/grub/grub.conf 

 vi /boot/grub/grub.conf 

確認  default = 0

 

重啓系統

 reboot

 

 

查看xen啓動情況 

默認xen服務開機自啓動   
# chkconfig --list |grep xend    
xend            0:off   1:off   2:on    3:on    4:on    5:on    6:off    
xendomains      0:off   1:off   2:off   3:on    4:on    5:on    6:off 

 

查看xen內核   
[root@node1 ~]# uname -a    
Linux node1 2.6.18-348.16.1.0.1.el5xen #1 SMP Tue Aug 20 13:57:31 PDT 2013 x86_64 x86_64 x86_64 GNU/Linux 

 

查看xen情況   
[root@node1 ~]# xm list    
Name                                      ID Mem(MiB) VCPUs State   Time(s)    
Domain-0                                   0     1744     1 r-----     32.8 

 

由於虛擬機運行在宿主機之上,虛擬機運行的網絡環境需要由宿主機提供,需要先配置好網橋,以便虛擬機與宿主機之間通信:

 

# chkconfig NetworkManager off #在使用網橋的網絡環境中需要關閉NetWorkManager服務,否則網橋的功能不能正常啓用。

 

# chkconfig network on

 

 

開啓網橋的stp(避免環路)的功能:

# brctl stp virbr0 on

 


 

通過ifconfig查看虛擬機的網卡信息

發現多了幾個網卡

peth0

vif0.0

virbr0

xenbr0

 

xenbr0是xen開的,xen的橋
virbr0是libvirt開的,也是橋
vif0.0應該是xen guest 的tap網卡
peth0是xen kernel下的物理網卡

 


在安裝了xen的主機中,當使用ifconfig命令時,除了熟悉的eth0以外還會出現許多平常沒有見到過的網絡接口,這些接口的出現的原因是因爲xen會自動爲虛擬機創建一些虛擬的網絡接口,裝有xen的主機在啓動時網絡的配置過程爲: 

1.執行在/etc/xen/xend-config.sxp中指定的/etc/xen/scripts/network-bridge腳本  2.network-bridge腳本創建一個新網橋,名字爲xenbr0  3.複製物理網卡接口eth0的MAC地址和IP地址  4.停止物理網卡接口eth0  

5.創建一對相連的虛擬網卡接口,veth0和vif0.0  

6.將之前複製的物理網卡接口的MAC,IP分配給虛擬接口veth0  7.重命名物理網卡接口,從eth0改名爲peth0  8.重名名虛擬網卡接口,從veth0改名爲eth0  

9.將物理網卡接口peth0,虛擬網卡接口vif0.0加入到網橋xenbr0中  10.啓動網橋xenbr0,啓動其他網絡接口peth0,eth0,vif0.0  

 

對於每一個新的domU,Xen會創建“一對相連的虛擬網卡”,其中一塊在新建的domU上,另一塊在dom0上。對於Linux的domU來說,其虛擬網卡名字是eth0,而在dom0這端的這一塊的網卡名字是vif<id#>.0。當一臺domU關機的時候,相關的虛擬網卡會被刪除。 所以在裝有xen的主機中網絡端口的狀態如下圖所示:

wKioL1drVo6wGKJzAAGOXABq-dI741.png

                                                 圖2-11 裝有xen的主機中網絡端口的狀態

 

 

數據包到達物理網卡之後的處理流程爲:數據包到達硬件物理網卡接口peth0,dom0上的網卡驅動會進行處理。因爲peth0綁定在網橋上,所以數據包被髮送到網橋上。觀察ifconfig的輸出,你會發現peth0,xenbr0,vif0.0和vif1.0都共享一個相同的MAC地址FE:FF:FF:FF:FF:FF,該地址是以太網廣播地址。這表明物理網卡接口,dom0的loopback接口,所有guest domain的後端接口都廣播到網橋接口xenbr0。當物理網卡接口peth0接收到一個數據包,它會將數據包直接發送到網橋接口xenbr0上。然後網橋會分發數據包,像交換機一樣(話說交換機也是網橋的一種)。網橋會根據數據包接收者的MAC地址將其轉發到正確的網絡接口上。所以peth0這個接口不需要配置ip地址,只有MAC地址就夠了。然後vif接口會將數據包發送給domU上相連的接口,然後domU中返回的數據包也通過vif發送回來。dom0也是一樣的操作模式,通過vif0.0->eth0這一對相連的網卡。

vif0.1:表示ID爲0的第二個網絡接口,vif6.0:表示ID爲6的第一個網絡接口 virbr0:是虛擬系統和真實系統進行連接的接口,實現NAT功能 xenbr1:是虛擬系統和真實系統進行連接的接口,橋接功

wKioL1drVrPjeHfaAAGrxFdQ7ps865.png-wh_50

     圖2-11 裝有xen的主機中網橋的轉發原理

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章