Linux下为KVM 配置桥接设备

在安装一个拥有虚拟化功能的Linux操作系统(此处以CentOS为例),一般我们有两种方法:

1.在光盘安装的时候安装好虚拟化包或者PXE服务器上配置好虚拟化包
2.手动在没有安装虚拟化组件的系统中安装虚拟化组件


  如果我们搭建的环境是必须使用虚拟化的,或者说虚拟化是我们搭建这套环境的主要目的之一,那么我们在进行系统安装的时候将所有的虚拟化组件全部安装上,避免后期出现安装不全或者某些服务依赖关系没有解决好,这样排错的时间远远高于安装时候多装几个包的时间。
  在我们安装好虚拟化组件(RHEL6.0之后,系统自带的均是KVM,已经没有XEN虚拟化的支持了),会自动生成一个virbr0这样的桥接设备

[root@clovemzone ~]# brctl  show
bridge name    bridge id        STP enabled    interfaces
virbr0      8000.5254007543ce    yes          virbr0-nic

按照这篇文中所说: ,virbr0默认使用的是NAT方式跟虚拟机网卡进行通讯,在实际生产环境中我们多数情况下面使用桥接Bridge的方式进行物理机跟虚拟机的通讯,删除这个virbr0的方法在上面给出的链接中已经说明,这篇文章主要讲述Bridge的简单实现原理以及实际配置方法。 

相关阅读:

RHEL6 KVM虚拟化创建桥接网卡-网桥

RedHat Linux KVM虚拟机桥接

CentOS 5.6下KVM的安装/桥接设置/虚拟机创建及运行  

假设我们的物理机上有一块有线网卡,在系统中显示为eth0,我们搭建将其配置成桥接设备br0

我们经常所说的Bridge设备其实就是网桥设备,也就相当于想在的二层交换机,用于连接同一网段内的所有机器,所以我们的目的就是将网络设备eth0配置成br0,此时br0就成为了所谓的交换机设备,我们物理机的eth0也是连接在上面的。

[root@clovemzone ~]# brctl  show
bridge name      bridge id    STP enabled  interfaces
br0          8000.0025903afe42    no      eth0


我们创建两个虚拟机之后,所有的虚拟机网卡均连接br0,此时查看br0上面连接的设备
[root@clovemzone ~]# brctl  show
bridge name      bridge id    STP enabled  interfaces
br0          8000.0025903afe42    no      eth0
                                            vnet0
                                            vnet1

为了让大家了解的更加透彻,可以通过下图并结合实际操作进行简单分析

Linux下为KVM 配置桥接设备

1. 查看物理机网卡设备信息 图1所示
[root@master ~]# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
      valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 52:54:00:a7:b7:56 brd ff:ff:ff:ff:ff:ff
    inet 192.168.3.176/24 brd 192.168.3.255 scope global eth0
    inet6 fe80::5054:ff:fea7:b756/64 scope link
      valid_lft forever preferred_lft forever

2.配置桥接设备br0

[root@master ~]# rpm -q bridge-utils    //查看桥接软件是否安装
bridge-utils-1.2-9.el6.x86_64
[root@master ~]# brctl  show
bridge name    bridge id    STP enabled    interfaces
[root@master ~]#

此时无任何桥接设备,我们可以手动添加也可以在 文件中进行添加生效。
(1) 手动添加
[root@master ~]# brctl  addbr br0
[root@master ~]# brctl  show
bridge name    bridge id    STP enabled    interfaces
br0            8000.000000000000        no
[root@master ~]# brctl  addif br0 eth0
[root@master ~]# brctl  show
bridge name  bridge id        STP enabled  interfaces
br0        8000.000000000000        no        eth0

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/19381.html