1xen虚拟化环境安装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1xen虚拟化环境安装相关的知识,希望对你有一定的参考价值。

环境为 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用户登录

技术分享

 

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



技术分享

命令解释:

技术分享

<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”出错,请检查是否配置文件出现了问题,相关的路径要填写正确,使用绝对路径,需自行创建要挂载的路径

技术分享

 

 

安装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内核   
[[email protected] ~]# 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情况   
[[email protected] ~]# 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的主机中网络端口的状态如下图所示:

技术分享

                                                 图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:是虚拟系统和真实系统进行连接的接口,桥接功

技术分享

     图2-11 装有xen的主机中网桥的转发原理

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


本文出自 “小牛---xmlgrg” 博客,请务必保留此出处http://xmlgrg.blog.51cto.com/10467412/1792096

以上是关于1xen虚拟化环境安装的主要内容,如果未能解决你的问题,请参考以下文章

Flask安装

Windows下Python虚拟环境

ubuntu 下创建python环境

python-django(环境配置)

python虚拟环境安装

python 虚拟环境安装