在《配置LVS + Keepalived高可用负载均衡集群之图文教程》中介绍了LVS + Keepalived的配置方法,其中的两台真实主机即RealServer均为Linux系统,如果我们的系统中包含Windows主机该如何配置呢?下面分步骤详细讲解。
一、在Windows主机上新增环回虚拟网卡(Microsoft Loopback Adapter)
以管理员身份运行cmd后,在cmd命令窗口中执行:hdwwiz,弹出如下界面:
下一步后,勾选手动选择:
点选网络适配器,继续下一步:
左侧选择Microsoft,右侧找到如图硬件(Windows Server 2008/7中则叫:Microsoft Loopback Adapter)
点击下一步开始安装,直至完成,则成功添加了环回虚拟网卡。 成功安装该适配器后,与其他任何适配器一样,您可以手动配置其选项。如果 TCP/IP 属性配置为使用 DHCP,则该适配器最终将使用一个 autonet 地址 (169.254.x.x/16),因为该适配器并没有与任何物理媒体实际相连接。
注意:默认情况下,TCP/IP 属性配置为使用 DHCP。
二、设置环回网卡TCP/IP信息
打开Windows 7/8/Server 2008的网络和共享中心,左侧点开“更改适配器设置”,找到新增的环回连接,重命名为realserver(推荐重命名)。 右键realserver连接属性,开始设置TCP/IP:
和Linux中的lo:0一个样,将IP地址设置为VIP,将掩码设置为255.255.255.255,其余留空即可。 Ps:看网上教程,都有提到如下问题,(虽然这些老家伙基本都不用了,但还是记录下吧):
子网掩码255.255.255.255但在MS NT/2K/XP会被认为是无效的。 可以有以下解决方法: 在MS NT/2K/XP中,网络界面(interfaces)在 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaces 找到适当的网络连接IP地址,修改subnetMask子网掩码,(注意修改方式)不需要重启,只需重新激活该网络连接即可。
三、修改客户端网卡接口、环回接口连接模式
将以下代码保存为bat执行,或直接在CMD中依次执行2~5行命令即可(双引号中需根据实际连线名称修改)
- @echo off
- netsh interface ipv4 set interface "realserver" weakhostreceive=enabled
- netsh interface ipv4 set interface "realserver" weakhostsend=enabled
- netsh interface ipv4 set interface "本地连线" weakhostreceive=enabled
- netsh interface ipv4 set interface "本地连线" weakhostsend=enabled
- pause
上面的四条命令一定要输入,因为windows 2008的默认中,网卡的stronghost处于启用状态,这个设置可以防止跨接口转发数据包,这就表明:来自一个网络适配器的请求不会被环回适配器处理,因为这个请求来自于不同的网络适配器。为了将环回适配器从stronghost切换为weakhost,需要运行以上四条命令,要不然TCP的状态会一直处于SYN_RECV 状态。
哦了,做完以上步骤之后,就可以启动keepalived测试效果了!