kvm虚拟机网络管理

时间:2024-01-06 10:22:26

一、Linux Bridge网桥 管理
  # brctl show 显示当前网桥连接状态
  # brctl addbr br1vlan-10 添加网桥
  # brctl delbr br1vlan-10 删除网桥
  # brctl addif br1vlan-10 br1.10 将网桥和虚拟网口连接
  # brctl delif br1vlan-10 br1.10 将网桥和虚拟网口断开
  # vconfig add br1 10 添加虚拟网口
  # vconfig rem br1.10 移除虚拟网口

二、Linux Bridge实现Vlan原理(且网卡配置bond)

kvm虚拟机网络管理

  1、添加几块物理网卡,并且激活,使其自动生成对应的配置文件
  2、配置网卡配置文件:(配置一样除了网卡设备名称)# vim ifcfg-ens37
    TYPE=Ethernet
    BOOTPROTO=none
    DEVICE=ens37
    ONBOOT=yes
    MASTER=bond0
    SLAVE=yes
  3、网卡配置文件编辑完成后,载入bond模块:
   #modprobe bonding
  4、配置bond0文件,并桥接到br1上
   # vim ifcfg-bond0
    DEVICE=bond0
    TYPE=Bond
    NAME=bond0
    BONDING_MASTER=yes
    BOOTPROTO=static
    USERCTL=no
    ONBOOT=yes
    #IPADDR=192.168.10.10
    #PREFIX=24
    #GATEWAY=192.168.10.19
    ONDING_OPTS="mode=6 miimon=100"
    BRIDGE=br1
  5、配置网桥br1的配置文件
   # vim ifcfg-br1
    TYPE=Bridge
    BOOTPROTO=dhcp
    NAME=br1
    DEVICE=br1
    ONBOOT=yes
  6、重启网络# systemctl restart network
  7、在br1下添加虚拟网口并编辑配置文件
   # vconfig add br1 10
   # vconfig add br1 20
   # vim ifcfg-br1.10
    VLAN=yes
    TYPE=vlan
    PHYSDEV=br1
    VLAN_ID=10
    NAME=br1.10
    ONBOOT=yes
    ZONE=trusted
    DEVICE=br1.10
    BRIDGE=br1vlan-10
  8、分别建立网桥brvlan-10,brvlan-20并编辑配置文件
   #brctl addbr br1vlan-10
   #brctl addbr br1vlan-20
   #vim ifcfg-brvlan-10
    TYPE=bridge
    BOOTPROTO=static
    NAME=br1vlan-10
    DEVICE=br1vlan-10
    ONBOOT=yes
  9、将网桥和虚拟网口连接
   #brctl addif br1vlan-10 br1.10
   #brctl addif br1vlan-20 br1.20
  10、重新启动网络服务
   #systemctl restart network

三、网卡配置bond(绑定)
网卡bond(绑定),也称作网卡捆绑。就是将两个或者更多的物理网卡绑定成一个虚拟网卡。网卡是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在应用部署中是一种常用的技术

多网卡绑定实际上需要提供一个额外的软件的bond驱动程序实现。通过驱动程序可以将多块网卡屏蔽。对TCP/IP协议层只存在一个Bond网卡,在Bond程序中实现网络流量的负载均衡,即将一个网络请求重定位到不同的网卡上,来提高总体网络的可用性

网卡绑定的目的:
  1.提高网卡的吞吐量。
  2.增强网络的高可用,同时也能实现负载均衡

网卡配置bond(绑定)bond模式:
  (1)Mode=0(balance-rr) 表示负载分担round-robin,平衡轮询策略,具有负载平衡和容错功能bond的网卡MAC为当前活动的网卡的MAC地址,需要交换机设置聚合模式,将多个网卡绑定为一条链路。
  (2)Mode=1(active-backup) 表示主备模式,具有容错功能,只有一块网卡是active,另外一块是备的standby,这时如果交换机配的是捆绑,将不能正常工作,因为交换机往两块网卡发包,有一半包是丢弃的。
  (3)Mode=2(balance-xor) 表示XOR Hash负载分担(异或平衡策略),具有负载平衡和容错功能每个slave接口传输每个数据包和交换机的聚合强制不协商方式配合。(需要xmit_hash_policy)。
  (4)Mode=3(broadcast) 表示所有包从所有interface发出,广播策略,具有容错能力,这个不均
衡,只有冗余机制...和交换机的聚合强制不协商方式配合。
  (5)Mode=4(802.3ad) 表示支持802.3ad协议(IEEE802.3ad 动态链接聚合) 和交换机的聚合LACP方式配合(需要xmit_hash_policy)。
  (6)Mode=5(balance-tlb) 适配器传输负载均衡,并行发送,无法并行接收,解决了数据发送的瓶颈。 是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave。
  (7)Mode=6(balance-alb) 在5的tlb基础上增加了rlb。适配器负载均衡模式并行发送,并行接收数据包

网卡配置bond(绑定):
  5和6不需要交换机端的设置,网卡能自动聚合。4需要支持802.3ad。0,
  2和3理论上需要静态聚合方式,但实测中0可以通过mac地址欺骗的方式在交换机不设置的情况下不太均衡地进行接收

常用的有三种
  mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定
  mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援
  mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定