Windows 2008 自带的集群系统NLB仅仅能够做到IP层的检测,即使出现了IIS无法提供服务的情况,依然会将链接导入到出错的服务器。如果需要能够检测到IIS服务是否停止,就需要使用ARR(http://www.iis.net/download/ApplicationRequestRouting)。
IIS 7.0推出了ARR(Application Request Routing) ,采用这个可以根据HTTP的状态来检测IIS状态,同时ARR还提供了多达六种的负载均衡方案以供选择,配置ARR,需要安装Web Platform Installer
命令行查看server farms配置
%windir%\system32\inetsrv\appcmd.exe list config -section:webFarms
%windir%\system32\inetsrv\appcmd.exe list config -section:system.webServer/rewrite/globalRules
%windir%\system32\inetsrv\appcmd.exe list config -section:system.webServer/rewrite/globalRules
%windir%\system32\inetsrv\appcmd.exe list config -section:system.webServer/rewrite/rules
http://technet.microsoft.com/zh-cn/library/cc772200(WS.10).aspx
使用网络负载平衡(NLB)和Application Request Routing(ARR)的对比:
首先,ARR是作为网关服务器的,其上的IIS不能部署网站,只能跳转的其它内容服务器(web server)。而NLB是通过设置集群IP,自动分配访问的。
其次,ARR能通过设置server farms里面的health Test检查网站是否能正常访问;NLB没此功能