《负载均衡配置步骤》由会员分享,可在线阅读,更多相关《负载均衡配置步骤(4页珍藏版)》请在金锄头文库上搜索。
1、1 Apache+Tomcat负载均衡负载均衡编辑tomcat的server.xml,在Engine标签中增加属性jvmRoute,代表apache转发请求的路由 标记,集群中多个tomcat的jvmRoute不能相同1.1 mod_jk方式方式 在tomcat官网下载mod_jk的so文件(注意区分操作系统平台) ,复制到apache的modules目 录下 修改apache的http.conf文件 在最后添加如下: LoadModule jk_module modules/mod_jk-1.2.30-httpd-2.2.3.so #so文件名 JkWorkersFile conf/work
2、ers.properties #分发处理配置文件 JkLogFile logs/mod_jk.log #日志文件 JkLogLevel error #日志级别 JkMount /jkstatus jkstatus #转发到mod_jk监控 JkMount /* controller #转发到负载均衡控制器 编辑workers.properties文件,保存到conf目录 #workers.properties worker.list=controller,jkstatus#=controller,负载均衡控制器= #worker类型为负载均衡控制器 worker.controller.type
3、=lb #指定分担请求的tomcat名称,此名称必须与tomcat配置的jvmRoute相同 worker.controller.balanced_workers=tomcat1,tomcat2 #session亲和,每次请求转发的路径都相同,保持session在一个tomcat上 worker.controller.sticky_session=1#=tomcat1= worker.tomcat1.port=18009 #ajp 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请
4、填写ip地址 worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor=1 #server的加权比重,值越高,分得的请求越多#=tomcat2= worker.tomcat2.port=28009 #ajp 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat2.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址 worker.tomcat2.type=ajp13worker.tomcat2.lbfactor=1 #server的加权比重,值越高,分得的请求越多worker.jkst
5、atus.type=status#mod_jk监控 另可以配置 worker.tomcat1.redirect=tomcat2 #tomcat1失效后原分发给tomcat1的请求会转而分发给 tomcat2 worker.tomcat2.activation=disabled#tomcat2不接收请求,只作为session备份 以上两个配置可以实现主备或双机HA,也可以配合适当的session复制策略实现灵活的失 效转移策略。1.2 mod_proxy方式方式编辑httpd.conf,取消以下语句的注释 LoadModule proxy_module modules/mod_proxy.so
6、LoadModule proxy_ajp_module modules/mod_proxy_ajp.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so LoadModule proxy_connect_module modules/mod_proxy_connect.so LoadModule proxy_http_module modules/mod_proxy_http.so 在最后添加如下: #The ProxyRequests directive should usually be set off when
7、 using ProxyPass. ProxyRequests Off #代理路径,stickysession=JSESSIONID为session亲和 ProxyPass /webcluster balancer:/webcluster/ stickysession=JSESSIONID#使用反向代理 ProxyPassReverse /#负载均衡器配置,balancer:/webcluster为负载均衡器名#处理节点配置,route为jvmRoute名,loadfactor为权重 BalancerMember http:/localhost:18080/webcluster loadfac
8、tor=1 route=tomcat1 BalancerMember http:/localhost:28080/webcluster loadfactor=1 route=tomcat3以上为http协议转发,将http:/localhost:18080/webcluster改为ajp:/localhost:18009/webcluster 即可实现ajp协议转发。2 Tomcat Session复制复制编辑tomcat的server.xml,取消以下段注释即可实现 此为tomcat默认实现,完整配置如下注意:需要做session复制的应用其web.xml中必须添加标签,且session中的
9、 属性值必须都实现java.io.Serializable。 例:webcluster1index.jsp或编辑应用的context.xml(META-INF目录下) ,添加distributable=“true“属性(仅限于tomcat)如果tomcat中的所有应用都需要Session共享,也可以把conf/context.xml中的改为 ,这样就不需对所有应用的web.xml再进行单独配置。 程序中如果存在全局变量(ServletContext中) ,需要考虑多个Tomcat间变量同步的问题3 其它负载均衡其它负载均衡3.1 Nginx编辑nginx.conf,在http段中增加,weight为权重 upstream webcluster ip_hash; server localhost:18080 weight=1; server localhost:28080 weight=1; 在server段中增加location location /webcluster proxy_pass http:/webcluster; 3.2LVS物理层配置物理层配置