IIS之负载均衡—应用请求路由模块的使用(ARR)
1、啥是ARR?
Microsoft Application Request Routing (ARR) for IIS 7是一个基于代理的路由模块,它基于http头、server variables和负载均衡算法将http请求转发到各个内容服务器。
ARR依赖URL Rewrite模块检查进站http请求以确定路由规则。而且,要使用ARR的话,URL Rewrite模块是必选的组件。
用处:
增进系统的有效性和可扩展性;
更好的利用各个内容服务器的资源;
简化系统部署,包括引导管理以及;
A/B测试;
减少管理费用及为共享主机提供商提供更多的机会。
特点:
基于HTTP的路由决策:ARR不像硬件负载均衡所实现的那样在IP级别实现路由决策,ARR在应用层实现路由决策。当ARR与URL Rewrite模块一起使用时,能够写出很强的基于http头及server variables的路由规则。
负载均衡算法:能够自行选择负载均衡算法以支持什么样的http请求让哪台内容服务器提供服务。共提供了6种算法。
系统健康监控:同时提供了正式环境数据以及指定URL测试两种方式来监控内容服务器的健康状态。系统还提供了许多配置参数来支持健康状态的监控。你也能同时禁用这2种健康状态监控方式,进而选择自定义的监控状态提供程序。
客户端亲和:通过使用Cookie,ARR能够保持所有的请求始终如一的与某一台内容服务器对应上。ARR在NAT的后端区分这些请求,在那里会将各个请求独立区分开。这个特性需要客户端接受Cookie。
主机名亲和:通过改变部署结构来最小化及平滑化管理,并且创造额外的业务机会。有2种方式被用于决定内部服务器亲和性的算法,既:循环方式和内存方式。
多服务器组:ARR能够管理多个由逻辑内容服务器组成的服务器组。这个特性允许ARR能够被用在引导管理和A/B测试场景中。
失败请求跟踪规则:特定的跟踪能够被快速的加入到排错及诊断任务中。
图形界面管理和监控:使用IIS管理器来管理和查看所有的配置信息以及对ARR运行时的汇总统计。
2、咋安装ARR模块?
在IIS7上安装ARR v1以及依赖的模块,ARR模块包含以下组件:
Microsoft URL Rewrite Module for IIS 7.0
Microsoft Web Farm Management Version 1 for IIS 7.0.
Microsoft Application Request Routing Version 1 for IIS 7.0.
Microsoft External Cache Version 1 for IIS 7.0.
安装过程:(注:修复和卸载按相反顺序操作)
a.下载Microsoft Application Request Routing Version 1
b.安装 Microsoft Application Request Routing Version 1
net stop was /y
net stop wmsvc /y
运行ARR_ x64_Version1.exe
安装日志%TEMP%\arr_setup.log
Net start was
Net start wmsvc
c.改变应用程序池进程模型
Action—>Edit—>Application Pool—>Advanced Setting--->Idle Time-out(minutes)为0
或者:
administrator privileges
%windir%\system32\inetsrv
appcmd.exe set apppool "DefaultAppPool" -processModel.idleTimeout:"00:00:00" /commit:apphost
3、如何配置ARR服务器组?
服务器实际是一个由应用服务器组成的逻辑组,是基于http请求和负载均衡算法管理之下的。