Xen的网络功能还处在构建阶段,但Xen网桥功能已经近乎完善。虚拟网桥模式工作很稳定,而且提供了许多配置选项供用户使用。如果你的物理服务器有多个网络接口,想要把虚拟机绑定到特定的网络板(network board),使用Xen网桥将非常方便。因此,在本文中你将了解到如何创建Xen网桥。
Xen联网 首先,我们概括地了解一下Xen的联网方式。在特权域(privileged domain)中,你会看到一个默认的xenbr0设备。当与这个虚拟网桥连接后,你会看到vif接口的命名为vifx.y。其中,x是代表域的数值,y代表网桥的接口。
在虚拟机中,使用的是虚拟以太网接口。这些虚拟以太网接口连接……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
Xen的网络功能还处在构建阶段,但Xen网桥功能已经近乎完善。虚拟网桥模式工作很稳定,而且提供了许多配置选项供用户使用。如果你的物理服务器有多个网络接口,想要把虚拟机绑定到特定的网络板(network board),使用Xen网桥将非常方便。因此,在本文中你将了解到如何创建Xen网桥。
Xen联网
首先,我们概括地了解一下Xen的联网方式。在特权域(privileged domain)中,你会看到一个默认的xenbr0设备。当与这个虚拟网桥连接后,你会看到vif接口的命名为vifx.y。其中,x是代表域的数值,y代表网桥的接口。在虚拟机中,使用的是虚拟以太网接口。这些虚拟以太网接口连接到其中一个vif接口。例如,id 1虚拟机的eth0是与特权域中的vif1.0相连接的。brct1 show命令可以查找Xen网桥的配置情况,显示网桥、配置和与之相连的所有接口。
这里,brct1 show命令显示了当前网桥配置:
lin:~ # brctl show
bridge name bridge id STP enabled interfaces
xenbr0 8000.feffffffffff no vif0.0
peth0
vif1.0
Xen网桥配置
首先,我们看看在Xen中用于配置虚拟网桥的一些命令和脚本。第一个脚本是/etc/xen/xend-config.sxp,它可以对虚拟机进行一些普通设置,其中包括了如下两行:
(network-script network-bridge) (vif-script vif-bridge)
第一行确保网桥脚本(network-bridge script)被执行。网桥脚本是用于设置虚拟网桥的脚本,它使用brct1和ip命令设置网桥。执行该脚本时,会有如下几个执行步骤:
- 重命名物理接口eth0为peth0。
- 创建虚拟接口eth0。
- 复制MAC(媒体访问控制)地址和peth0相关配置到eth0。
- 禁用ARP协议。实际上是完全禁用了接口的功能。
- 创建虚拟网桥xenbr0。
- 将接口peth0和vif0.0连接到网桥。
多网桥操作
对于只有一个以太网接口的服务器,一个网桥就足够了。但是如果服务器有多个接口,可能就需要创建网桥以分散接口间通信了。通过这种方法,可以连接xenbr0与peth0、xenbr1与peth1,使某个xenbr只能被特定的虚拟机连接,如,xenbr1只能与dom1连接。network-bridge脚本包含了完成这个操作的所有必要内容。例如,如下命令会创建一个连接到eth1网络板的网桥:
lin:/etc/xen/scripts # ./network-bridge netdev=eth1 bridge=xenbr1 start
这条命令尽管很有用,但需要对/etc/xen/xend-config.sxp脚本进行一些调整才能在启动过程中自动创建网桥。默认情况下,这个脚本会调用network-bridge脚本。不过,这个network-bridge脚本只能被调用一次。要避免这个问题,你需要创建一个network-wrapper脚本,通过配置network-wrapper脚本可以调用network-bridge脚本两次。通过如下步骤配置:
- 创建脚本/etc/xen/scripts/network-wrapper,使用如下命令:/etc/xen/scripts/network-bridge netdev=eth0 bridge=xenbr0 start /etc/xen/scripts/network-bridge netdev=eth1 bridge=xenbr1 start
- 调整/etc/xen/xend-config.sxp脚本,以便调用network-wrapper脚本。在/etc/xen/xend-config.sxp脚本中添加如下内容:# (network-script network-bridge) (network-script network-wrapper_ (vif-script vif-bridge)
- 确保在每个非特权域的配置文件中指定它使用的网桥。这样,vif行会类似如下内容:vif=[ 'bridge=xenbr1', 'mac=00:16:3e:07:d2:0e', ]
总结
现在的服务器通常会有多个物理网络板。在Xen环境下,为了也有同样的效果,可以额外的配置一些网桥,分别让各虚拟机专用,从而提高虚拟网络的性能。
翻译
相关推荐
-
XP安装桌面虚拟化客户端报错
使用恩杰的桌面虚拟化,win7及以上系统无报错,但在XP客户端安装 citrix receiver […]
-
xen上配置npiv问题
请问有人在xenserver上配置成功过npiv吗?虚拟出的vport如何只给某个虚拟机使用?还是只能把存储中 […]
-
虚拟化到底学xen还是kvm?
虚拟化到底学xen还是kvm,网上看了一堆对比,都没说个说法,各大云厂商都是用的xen,但是kvm又是redh […]
-
如何可以用CentOS 6.6 + Xen + Heartbest 3 建立高可用集群系统﹖
因为上司希望在公司内部用三台没有人用的Dell PowerEdge R610服务器上用CentOS 6.6 + […]