Windows Apache+Tomcat集群部署
2017-06-15 11:06
435 查看
1 软件环境
1.1 Windows64位操作系统。
1.2 Apache Http Server 2.4.25 Windows 64位版本
1.3 Tomcat 7 64位版本。
1.4 Apache mod_jk.so Windows 64位版本。
2 软件安装配置
2.1 Apache Http Server&mod_jk配置。
解压软件包。
在apache安装目录下conf目录中找到http.conf,找到配置中的根路径参数,进行修改,SRVROOT后面的值修改为apache的安装路径或者其他你想要的设置的路径。
监听端口Listen 修改为你想要的端口,默认80,后期访问系统使用。保证端口未被占用。
将mod_jk.so拷贝到Apache安装路径的modules文件夹下
在apache安装目录下conf目录中找到http.conf,在文件最后加上
http.conf 同目录下新建mod_jk.conf文件,添加内容如下:
在http.conf同目录下新建 workers.properties文件,内容如下:
使用Windows命令行以管理员身份进入Apache程序的文件夹下的bin文件夹,输入httpd -k install,完成Apache服务的安装。
然后双击bin目录下的ApacheMonitor.exe,点击右边的start启动服务器,如果正常,如下图:
若启动失败,通过查看Windows日志解决
右键 计算机,点击管理->系统工具->时间查看器->Windows日志->应用程序,显示如下:
2.2 Tomcat 配置。
修改集群下的每个Tomcat的Server.xml文件
1、定义一个AJP 1.3 同一主机上的tomcat,各个连接端口不能相同(多个主机之间不限制),默认值为8009。
2、增加jvmRoute的值,保证同workers.properties里边配置的节点值一致。
3、开启集群配置。
2.3 集群环境实现session共享配置
在集群中的每个项目的web.xml中增加如下代码:
需要注意的是,这样做以后存入session的对象必须为序列化的对象。
1.1 Windows64位操作系统。
1.2 Apache Http Server 2.4.25 Windows 64位版本
1.3 Tomcat 7 64位版本。
1.4 Apache mod_jk.so Windows 64位版本。
2 软件安装配置
2.1 Apache Http Server&mod_jk配置。
解压软件包。
在apache安装目录下conf目录中找到http.conf,找到配置中的根路径参数,进行修改,SRVROOT后面的值修改为apache的安装路径或者其他你想要的设置的路径。
Define SRVROOT "D:/workgroup/tomcats/apache/Apache24" ServerRoot "${SRVROOT}"
监听端口Listen 修改为你想要的端口,默认80,后期访问系统使用。保证端口未被占用。
将mod_jk.so拷贝到Apache安装路径的modules文件夹下
在apache安装目录下conf目录中找到http.conf,在文件最后加上
include conf/mod_jk.conf
http.conf 同目录下新建mod_jk.conf文件,添加内容如下:
#指定模块路径 LoadModule jk_module modules/mod_jk.so #指定 workers.properties文件路径 JkWorkersFile conf/workers.properties #指定哪些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器名 JkMount /* controller #指定jk的日志输出文件 JkLogFile logs/mod_jk.log #指定日志级别,我这里设置的警告 JkLogLevel warn #包含标准的mod_jk行为 (默认) #info #包含错误信息 #error #用来配置log文件的日期/时间格式. 使用strftime()的格式化字符串,默认是[%a %b %d %H:%M:%S %Y] JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" #Options Description(选项的说明) # %b 发送的字节, 不包括 HTTP headers (CLF format) # %B 发送的字节, 不包括 HTTP headers # %H 协议 # %m 请求方式(get/post) # %p 服务器响应请求的规范端口. # %q 查询字符串 (如果存在以?开头,否则是空串) # %r 请求的第一行. # %s HTTP状态码 # %T 请求间隔, 处理请求耗费的时间 秒.微秒 # %U 请求的url路径,不包含查询字符串. # %v 响应请求的规范服务器名字 # %V 根据UseCanonicalName设置的服务器名字. # %w Tomcat worker 名字 #JkRequestLogFormat 设置个人用户请求的log格式. JkRequestLogFormat "%w %V %T"
在http.conf同目录下新建 workers.properties文件,内容如下:
#这里可以配置任意多个Tomcat,此处配置了2个Tomat服务器. #host和port根据自己实际配置.实例配置的是本机两个tomcat,分别使用不同的端口.避免冲突 #如果Tomcat不再同一机器上,没必要改端口的。 #server 列表 worker.list=controller,status,tomcat1,tomcat2 #========tomcat1======== worker.tomcat1.port=8009 #ajp13 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat1.host=127.0.0.1 #tomcat的主机地址,如不为本机,请填写ip地址 worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor=1 #server的加权比重,值越高,分得的请求越多 #========tomcat2======== worker.tomcat2.port=9009 #ajp13 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat2.host=127.0.0.1 #tomcat的主机地址,如不为本机,请填写ip地址 worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor=2 #server的加权比重,值越高,分得的请求越多 #========controller,负载均衡控制器======== worker.controller.type=lb #指定此负载平衡器负责的Tomcat应用节点。 worker.controller.balance_workers=tomcat1,tomcat2 #指定分担请求的tomcat #此处指定集群是否需要会话复制,如果设为true,则表明为会话粘性,不进行会话复制,当某用户的请求第一次分发到哪台 #Tomcat后,后继的请求会一直分发到此Tomcat服务器上处理;如果设为false,则表明需求会话复制。 worker.controller.sticky_session=false #描述是用于httpd自身状态监控的status worker.status.type=status
使用Windows命令行以管理员身份进入Apache程序的文件夹下的bin文件夹,输入httpd -k install,完成Apache服务的安装。
然后双击bin目录下的ApacheMonitor.exe,点击右边的start启动服务器,如果正常,如下图:
若启动失败,通过查看Windows日志解决
右键 计算机,点击管理->系统工具->时间查看器->Windows日志->应用程序,显示如下:
2.2 Tomcat 配置。
修改集群下的每个Tomcat的Server.xml文件
1、定义一个AJP 1.3 同一主机上的tomcat,各个连接端口不能相同(多个主机之间不限制),默认值为8009。
<Connector port="8009 " protocol="AJP/1.3" redirectPort="8443" />
2、增加jvmRoute的值,保证同workers.properties里边配置的节点值一致。
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
3、开启集群配置。
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" managerClassName="org.apache.catalina.ha.session.DeltaManager" expireSessionsOnShutdown="false" useDirtyFlag="true" notifyListenersOnReplication="true"> <Membership className="org.apache.catalina.ha.mcast.McastService" mcastAddr="228.0.0.4" mcastPort="45564" mcastFrequency="500" mcastDropTime="3000"/> <Receiver className="org.apache.catalina.ha.tcp.ReplicationListener" tcpListenAddress="auto" tcpListenPort="4001" tcpSelectorTimeout="100" tcpThreadCount="6"/> <Sender className="org.apache.catalina.ha.tcp.ReplicationTransmitter" replicationMode="pooled" ackTimeout="15000" waitForAck="true"/> <Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/> <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer" tempDir="/tmp/war-temp/" deployDir="/tmp/war-deploy/" watchDir="/tmp/war-listen/" watchEnabled="false"/> <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/> </Cluster>
2.3 集群环境实现session共享配置
在集群中的每个项目的web.xml中增加如下代码:
<distributable/>
需要注意的是,这样做以后存入session的对象必须为序列化的对象。
相关文章推荐
- Windows环境部署Apache+tomcat集群
- windows下部署tomcat集群(Apache+mod_jk)
- apache整合tomcat部署集群
- apache2.4+tomcat7 单机垂直集群 64位 windows操作系统
- apache2.4+tomcat7 单机垂直集群 64位 windows操作系统
- Windows下Apache+Tomcat实现应用集群
- Apache负载均衡与Tomcat集群配置学习(Windows环境)
- Apache负载均衡与Tomcat集群配置学习(Windows环境)
- 3分钟搞定apache+tomcat集群部署
- Windows下apache+tomcat+jk集群
- Windows+(Apache-tomcat)+eclipse工程=静态部署
- Windows中Apache2.2 Tomcat7 集群配置
- APACHE-TOMCAT集群环境部署
- Apache+Tomcat部署负载均衡(或集群)
- Apache+Tomcat集群部署下的session共享解决
- Apache+tomcat+Linux下集群部署
- windows下apache服务器和tomcat集群
- Apache+Tomcat集群部署
- Windows环境Apache,Tomcat集群,动静分离,负载均衡
- apache-tomcat-jk集群部署