如何在VMware ESX上配置网卡聚合实现网络负载均衡

在VMware ESX中支持3种网卡聚合绑定来实现网络的负载均衡:
(1) 基于端口的负载均衡 (Route based on the originating virtual port ID)(这个是默认支持)
这种方式下,负载均衡是基于vPort ID的。一个vPort和Host上的一个pNIC捆绑在一起,只有当这个pNIC失效的时候,才切到另外的pNIC链路上。这种方式的负载均衡只有在vPort数量大于pNIC的数量时才生效。对于VM来说,因为某台VM的vNIC是捆绑在某一个pNIC上的,也就是说这台VM(如果只有一个vNIC的话)对外的数据流量将固定在某一个pNIC上。这种负载均衡是在VM之间的均衡,对于某一台VM而言,其uplink的速率不可能大于单个pNIC的速率。此外,只有当VM的数量足够多,并且这些VM之间的数据流量基本一致的情况下,Host上的NIC Teaming的Load Balancing才较为有效。对于以下这些极端情况,基于端口方式的负载均衡根本不起作用或者效果很差,充其量只能说是一种端口冗余。
a.Host上只有一台只具有单vNIC的VM (此时完全没有Load balancing)
b.Host上的VM数量比pNIC少(比如有4台VM但是Teaming中有5块pNIC,此时有一块pNIC完全没用上,其他每个vNIC各自使用一块pNIC,此时也没有任何负载均衡实现)
c.Host上虽然有多台VM,但是99%的网络流量都是某一台VM产生的
(2) 基于源MAC地址的负载均衡 Route based on source MAC hash
这种方式下,负载均衡的实现是基于源MAC地址的。因为每个vNIC总是具有一个固定的MAC地址,因此这种方式的负载均衡同基于端口的负载均衡具有同样的缺点。同样是要求vPort数量大于pNIC的时候才会有效。同样是vNIC的速率不会大于单个pNIC的速率
(3) 基于IP Hash的负载均衡 Route based on IP hash
这种方式下,负载均衡的实现是根据源IP地址和目的IP地址的。因此同一台VM(源IP地址总是固定的)到不同目的的数据流,就会因为目的IP的不同,走不同的pNIC。只有这种方式下,VM对外的流量的负载均衡才能真正实现。
不要忘记,VMware是不关心对端物理交换机的配置的,VMware的负载均衡只负责从Host出站的流量(outbound),因此要做到Inbound的负载均衡,必须在物理交换机上做同样IP Hash方式的配置。此时,pNIC必须连接到同一个物理交换机上。
需要注意的是,VMware不支持动态链路聚合协议(例如802.3ad LACP或者Cisco的PAgP),因此只能实现静态的链路聚合。(类似于HP的SLB)。不仅如此,对端的交换机设置静态链路聚合的时候也要设置成IP Hash的算法。否则这种方式的负载均衡将无法实现。
这种方式的缺点是,因为pNIC是连接到同一台物理交换机的,因此存在交换机的单点失败问题。此外,在点对点的链路中(比如VMotion),2端地址总是固定的,所以基于IP Hash的链路选择算法就失去了意义。

如何配置网卡聚合:

1.点击主机--->配置--->网络--->属性:
2.在上面的选项卡中选择网络适配器--->添加--->在右边弹出的窗口中选择相应要绑定的网卡,接着一直下一步就可以了。
3.这一步是将两张网卡绑定在一起,实现双网卡绑定,下面要进行绑定策略的设置。
4.点击上图的属性--->选择端口选项卡--->编辑--->在弹出的窗口中选择网卡绑定
可以看到下图有三种负载均衡策略:
5.按文章开始的说明选择符合自己需求的策略,默认是基于vport ID 进行负载均衡。
在VMware ESX 上配置网卡聚合实现网络负载均衡就完成了。

weinxin
DC Farm小程序二维码
扫一扫添加博客小程序
Jim

发表评论

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

目前评论:4   其中:访客  3   博主  1

    • avatar 湖畔楼阁 0

      来看看,看不懂。。。。。不过还是支持了

      • avatar jquery 0

        技术站 支持下

        • avatar Wayne 5

          拜读了,对最后一个基于IP的有点兴趣,可以搞一下,谢谢靖哥!

            • 激劉勇靖 激劉勇靖 Admin

              @Wayne 呵呵,不用谢哈,多支持一下我的博客就行了。