为什么要使用vlan?
这不废话嘛,肯定是为了网络的可控嘛,比如业务不同,有的指定单向访问之类的,还有一点,在做私有云时可以更好的规划网络
环境准备
带有三张网卡 的服务器,系统为centos7.3,一台华为S5328交换机(三层交换机)
第一:交换机配置
interface Eth-Trunk3
port link-type trunk
port trunk allow-pass vlan 2 to 4094
load-balance dst-ip
#做端口聚合,允许所有vlan数据通信
interface Vlanif11
ip address 172.16.11.11 255.255.255.0
#
interface Vlanif12
ip address 172.16.12.12 255.255.255.0
#三层vlan转发,需要设置ip作为网关
interface GigabitEthernet0/0/10
port link-type access
port default vlan 200
#管理口配置
interface GigabitEthernet0/0/11
eth-trunk 3
#
interface GigabitEthernet0/0/12
eth-trunk 3
#
interface GigabitEthernet0/0/24
port link-type access
port default vlan 200
#上联接口配置
ip route-static 0.0.0.0 0.0.0.0 223.84.153.65
#默认路由出外网
第二:配置kvm物理机管理网络及做bond0
#配置管理网口
vim /etc/sysconfig/network-scripts/ifcfg-enp3s0
DEVICE=enp3s0
BOOTPROTO=none
ONBOOT="yes"
TYPE="Ethernet"
IPADDR=223.84.153.83
PREFIX=24
GATEWAY=223.84.153.65
DNS1=211.141.90.68
USERCTL=no
#配置bond0
vim /etc/sysconfig/network-scripts/ifcfg-enp3s1
DEVICE="enp3s1"
BOOTPROTO=none
ONBOOT="yes"
MASTER=bond0
SLAVE=yes
USERCTL=no
vim /etc/sysconfig/network-scripts/ifcfg-enp3s2
BOOTPROTO=none
DEVICE="enp3s1"
ONBOOT="yes"
MASTER=bond0
SLAVE=yes
USERCTL=no
vim /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
ONBOOT="yes"
TYPE=bond
USERCTL=no
BONDING_OPTS="mode=0 miimon=100 lacp_rate=fast"
#bond模式为0,平衡负载
第三:通过修改配置文件创建虚拟vlan(这是标准做法,后面会介绍几种其他创建虚拟vlan的方法)
#注意:这个命名bond0.11(一定要安这样的格式,“设备.vlan-id”),后面的11,系统会自动认为是vlan11
vim /etc/sysconfig/network-scripts/ifcfg-bond0.11
BOOTPROTO=none
#DEFROUTE="yes"
DEVICE="bond0"
ONBOOT="yes"
VLAN=yes
BRIDGE="vbr11"
vim /etc/sysconfig/network-scripts/ifcfg-bond0.12
BOOTPROTO=none
#DEFROUTE="yes"
DEVICE="bond0"
ONBOOT="yes"
VLAN=yes
BRIDGE="vbr12"
第四:创建虚拟交换机(这个命名无特殊要求)
vim /etc/sysconfig/network-scripts/ifcfg-vbr11
TYPE=Bridge
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
DEVICE=vbr11
VLAN=yes
DELAY=0
vim /etc/sysconfig/network-scripts/ifcfg-vbr12
TYPE=Bridge
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
DEVICE=vbr12
VLAN=yes
DELAY=0
第五:在kvm物理机上重启网络服务
systemcl restart network
文章目录
第六:在kvm物理机上检查刚才创建的vlan
#检查系统有无识别
nmcli conn
#检查看kvm组件是否识别
virsh iface-list
第七:对虚拟机进行网络设置使其加入vlan
#对新创建的虚拟机:可以在创建指定网卡类型为桥接在莫个指定的虚拟交换机上()如下
virt-install --name kvm-web01 --virt-type kvm --ram 512 --cdrom=/iso/CentOS-7-x86_64-DVD-1611.iso --disk path=/kvm-hosts/kvm-web01.raw --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel7
#根据上图,对现存的虚拟机,可以采取添加一块网卡的方法(添加如下配置)
virsh edit kvm-web01
<interface type='bridge'>
<mac address='52:54:10:18:f4:21'/>
<source bridge='vbr11'/>
<model type='virtio'/>
</interface>
<interface type='bridge'>
<mac address='52:54:10:18:f4:22'/>
<source bridge='vbr12'/>
<model type='virtio'/>
</interface>
virsh edit kvm-web02
<interface type='bridge'>
<mac address='52:54:10:18:f4:23'/>
<source bridge='vbr12'/>
<model type='virtio'/>
</interface>
第八:启动虚拟机
virsh start kvm-web01
virsh start kvm-web02
第九:进入虚拟机,设置对应的ip
kvm-web01的eth0,ip是172.16.11.100/24 网关是172.16.11.11
eth1,ip是172.16.12.101/24 网关是172.16.12.12
kvm-web02的eth0,ip是172.16.12.102/24 网关是172.16.12.12
第十:检查网络互通性
在kvm-web01上查看是否能到172.16.11.11和172.16.12.12以及172.16.12.102
在kvm-web02上查看是否能到172.16.12.12和172.16.11.11以及172.16.11.100
番外篇:kvm自身不能实现vlan,需要借助系统才能实现,其方法有三种
第一种:nmcli命令
第二种:修改配置文件(推荐方法,这也是linux系统的标准方法)
第三种:virt-manager的图形化创建
#注意,ip别名是在设备后面加“:”;而vlan是在设备后面加“.”
ip别名:vim /etc/sysconfig/network-scripts/ifcfg-enp3s0:1
vlan:vim /etc/sysconfig/network-scripts/ifcfg-enp3s0.11
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论