本文主要是介绍Apache+Tomcat+mod_jk负载均衡、集群配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.下载,Apache Http Server和与其版本相对应的TomcatConnector(mod_jk),下载地址:http://httpd.apache.org/download.cgi,关于下载和安装Apache,我的上一篇博文有介绍。
下载,Apache Http Server和与其版本相对应的TomcatConnector(mod_jk),下载地址:http://httpd.apache.org/download.cgi,关于下载和安装Apache,我的上一篇博文有介绍。
下载Tomcat,下载地址:http://tomcat.apache.org/,
使用Tomcat,需要安装jdk,
我用的软件的版本:Apache:2.4.20,mod_jk:1.2.41,Tomcat:7.0.39,jdk:1.7,Apache和Tomcat都是免安装版。
2. 安装,Apache:D:\Apache24,Tomcat:D:\Tomcat7.0.39,就是解压到相应目录我用的是两台服务器,因此Tomcat在两台服务器上的相应目录,都复制一份;两台服务器ip分别为192.168.0.10和192.168.0.20.
3.修改Apache配置文件 http.conf(D:\Apache24\conf\httpd.conf)
在文件的最后加上一句: includeconf/mod_jk.conf
4.将下载的mod_jk.so文件拷贝至Apache\modules文件夹,在httpd.conf的同目录下新建 mod_jk.conf文件,加入以下内容:
#加载mod_jk Module
LoadModule jk_module modules/mod_jk.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定哪些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器,/*表示所有请求都交给tomcat
JkMount /* controller
#指定jk的日志输出文件
JkLogFile logs/mod_jk.log
#指定日志级别
JkLogLevel warn
5.在httpd.conf的同目录下新建 workers.properties文件
#server 列表
worker.list = controller,tomcat1,tomcat2
#========tomcat1========
#ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.port=8009
#tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
#server的加权比重,值越高,分得的请求越多
worker.tomcat1.lbfactor = 1
#========tomcat2========
#ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat2.port=8009
#tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat2.host=192.168.0.20
worker.tomcat2.type=ajp13
#server的加权比重,值越高,分得的请求越多
worker.tomcat2.lbfactor = 1
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balance_workers=tomcat1,tomcat2 #指定分担请求的tomcat,注意是balance,不是balanced,网上好多都是错的
worker.controller.sticky_session=true
worker.controller.sticky_session_force=true
注:1.因为我是两台服务器,所以tomcat1和tomcat2的端口相同,如果在同一台服务器上,端口会冲突,请修改其中一个端口2.最后两行,两个true表示Apache对访问请求在两个tomcat间来回切换,但同一个用户的请求由同一个tomcat处理
6.修改两个tomcat的conf\ server.xml文件
Engine name="Catalina"defaultHost="localhost" 后面加上jvmRoute="XXX"
XXX分别为tomcat1和tomcat2
7.如果两个tomcat在同一台服务器上,则需进行此步修改;否则,无需进行此步修改。
修改server.xml中的端口号,包括8005,8080,8009。我的就这三个端口,没开别的。如果开了其他冲突的端口,一并修改。
至此,Apache配置负载均衡完成。
在两个tomcat的tomcat\webapps下新建文件夹test,在test文件夹内新建test.jsp,加入以下测试代码:
<%
System.out.println("随便写点东西");
%>
集群配置参考:https://blog.csdn.net/whumr1/article/details/7804992
这篇关于Apache+Tomcat+mod_jk负载均衡、集群配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!