KVM实战之(六)如何在kvm平台中使用vlan

为什么要使用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
声明:本文为原创,作者为 辣条①号,转载时请保留本声明及附带文章链接:https://boke.wsfnk.com/archives/250.html
谢谢你请我吃辣条谢谢你请我吃辣条

如果文章对你有帮助,欢迎点击上方按钮打赏作者

最后编辑于:2022/12/4作者: 辣条①号

现在在做什么? 接下来打算做什么? 你的目标什么? 期限还有多少? 进度如何? 不负遇见,不谈亏欠!

暂无评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

arrow grin ! ? cool roll eek evil razz mrgreen smile oops lol mad twisted wink idea cry shock neutral sad ???

文章目录