配置网络桥接
警告
本章节非常重要,请务必彻底理解。
注解
本章节详细介绍了如何使用Linux自带的软件配置桥接网络。如果要使用OpenVswitch,请看下一章节。
为了转发流量到实例,至少需要两个桥接网络: public 和 private。
By default these bridges are called cloudbr0 and cloudbr1, but you do have to make sure they are available on each hypervisor.
最重要的因素是所有hypervisors上的配置要保持一致。
网络示例
配置网络有很多方法。在基本网络模式中你应该拥有2个 (V)LAN,一个用于管理网络,一个用于公共网络。
假设hypervisor中的网卡(eth0)有3个VLAN标签:
VLAN 100 作为hypervisor的管理网络
VLAN 200 for public network of the instances (cloudbr0)
- VLAN 300 作为实例的专用网络 (cloudbr1)
在VLAN 100 中,配置Hypervisor的IP为 192.168.42.11/24,网关为192.168.42.1
注解
Hypervisor与管理服务器不需要在同一个子网!
配置网络桥接
配置方式取决于发行版类型,下面给出RHEL/CentOS和Ubuntu的配置示例。
注解
本章节的目标是配置两个名为 ‘cloudbr0’和’cloudbr1’的桥接网络。这仅仅是指导性的,实际情况还要取决于你的网络布局。
在RHEL或CentOS中配置:
网络桥接所需的软件在安装libvirt时就已被安装,继续配置网络。
首先配置eth0:
- vi /etc/sysconfig/network-scripts/ifcfg-eth0
确保内容如下所示:
- DEVICE=eth0
- HWADDR=00:04:xx:xx:xx:xx
- ONBOOT=yes
- HOTPLUG=no
- BOOTPROTO=none
- TYPE=Ethernet
现在配置3个VLAN接口:
- vi /etc/sysconfig/network-scripts/ifcfg-eth0.100
- DEVICE=eth0.100
- HWADDR=00:04:xx:xx:xx:xx
- ONBOOT=yes
- HOTPLUG=no
- BOOTPROTO=none
- TYPE=Ethernet
- VLAN=yes
- IPADDR=192.168.42.11
- GATEWAY=192.168.42.1
- NETMASK=255.255.255.0
- vi /etc/sysconfig/network-scripts/ifcfg-eth0.200
- DEVICE=eth0.200
- HWADDR=00:04:xx:xx:xx:xx
- ONBOOT=yes
- HOTPLUG=no
- BOOTPROTO=none
- TYPE=Ethernet
- VLAN=yes
- BRIDGE=cloudbr0
- vi /etc/sysconfig/network-scripts/ifcfg-eth0.300
- DEVICE=eth0.300
- HWADDR=00:04:xx:xx:xx:xx
- ONBOOT=yes
- HOTPLUG=no
- BOOTPROTO=none
- TYPE=Ethernet
- VLAN=yes
- BRIDGE=cloudbr1
配置VLAN接口以便能够附加桥接网络。
- vi /etc/sysconfig/network-scripts/ifcfg-cloudbr0
现在只配置一个没有IP的桥接。
- DEVICE=cloudbr0
- TYPE=Bridge
- ONBOOT=yes
- BOOTPROTO=none
- IPV6INIT=no
- IPV6_AUTOCONF=no
- DELAY=5
- STP=yes
同样建立cloudbr1
- vi /etc/sysconfig/network-scripts/ifcfg-cloudbr1
- DEVICE=cloudbr1
- TYPE=Bridge
- ONBOOT=yes
- BOOTPROTO=none
- IPV6INIT=no
- IPV6_AUTOCONF=no
- DELAY=5
- STP=yes
配置完成之后重启网络,通过重启检查一切是否正常。
警告
在发生配置错误和网络故障的时,请确保可以能通过其他方式例如IPMI或ILO连接到服务器。
在Ubuntu中配置:
在安装libvirt时所需的其他软件也会被安装,所以只需配置网络即可。
- vi /etc/network/interfaces
如下所示修改接口文件:
- auto lo
- iface lo inet loopback
- # The primary network interface
- auto eth0.100
- iface eth0.100 inet static
- address 192.168.42.11
- netmask 255.255.255.240
- gateway 192.168.42.1
- dns-nameservers 8.8.8.8 8.8.4.4
- dns-domain lab.example.org
- # Public network
- auto cloudbr0
- iface cloudbr0 inet manual
- bridge_ports eth0.200
- bridge_fd 5
- bridge_stp off
- bridge_maxwait 1
- # Private network
- auto cloudbr1
- iface cloudbr1 inet manual
- bridge_ports eth0.300
- bridge_fd 5
- bridge_stp off
- bridge_maxwait 1
配置完成之后重启网络,通过重启检查一切是否正常。
警告
在发生配置错误和网络故障的时,请确保可以能通过其他方式例如IPMI或ILO连接到服务器。