Hyper-v虚拟机中使用NLB

NLB技术,一种负载分流的机制,你忙不过来我帮忙,我太累了你搭个手,你做我没歇着,大家共同合作,做事都不累。应该说,Windows NLB是一种比较低成本的负载分流机制。典型的NLB方案中,采用单播模式,服务器装着两个网卡,一个专用于NLB,一个做其它的事情,比如与域控通信。有一点我们要明确的是采用单播模式时,整个NLB主机的专用网卡的MAC地址将改变。
 
现在服务器的虚拟化技术应该说是比较热,什么降低成本啊,绿色计算啊,把各种各样的概念往上一套,结果我们被震惊了,不管三七二十一,把原有的NLB服务器用传说中的很酷的P2V技术丢到Hyper-v虚拟当中,或许这个时候,客户端连不上服务器了,甚至于ping一下NLB的主机IP都不行。
 
此时此刻,淡定己不是那么容易的事了,冷静最重要了,我们再多做一点,在客户端和NLB主机上边ping边抓个包,或许你会发现,客户端ping时的ARP请求包可以看到,同时NLB主机上ARP响应的包也可以看到,但是没有到客户端,这时候就到抓头皮的时候了,这是为什么呢?为什么呢?
 
实际上,这是Hyper-v的虚拟交换机在起作用,NLB主机响应的包中,因为发送的是修改过的MAC地址,并不是原始的虚拟网卡的地址,所以,当这个包流过虚拟交换机时,会将其丢弃掉,到不了客户端。
 
原理可以用来忽悠自己,问题解决不了,绝对忽悠不了客户的,怎么处理?有几种方法:
1、如果是Windows Server 2008的Hyper-v,并且Guest OS也是Windows Server 2008 SP1,可以将NLB网卡设为旧版网络适配器,但这种方法性能会降低;
2、针对上述的情形,更好的方法是先打个KB953828的补丁,如果是SP2就不需要打了,然后在创建完成NLB后,关闭Guest OS,把NLB专用网卡的MAC地址改成与NLB的单播模式网卡一致;
3、如果是Windows Server 2008 R2的Hyper-v,也就是Hyper-v 2.0,那么可以直接启用MAC地址欺骗选项,给个截图,看个明白
 
 
 

本文出自 “I AM A VM” 博客,转载请与作者联系!

你可能感兴趣的:(windows,server,mac,Hyper-v,休闲,晒文章)