2022年apache-tomcat配置指南[归 .pdf
《2022年apache-tomcat配置指南[归 .pdf》由会员分享,可在线阅读,更多相关《2022年apache-tomcat配置指南[归 .pdf(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目录文档目的 1 软件工具介绍 .1 为什么要配置tomcat 负载平衡和集群.1 简单原理介绍 2 Windows 下的具体配置3 Linux 下的具体配置.8 结论 .11 配置问题与解答11 详细配置附录 .11 1不同类型的workers122.workers.properties 列出一个 workers 的详细配置.133.列举不同类型worker 的配置实例.14 4.tomcat 的 server.Xml 中的各个节点155.cluster 中的各个属性节点.16名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名
2、师精心整理 - - - - - - - 第 1 页,共 22 页 - - - - - - - - - Tomcat 负载平衡和集群文档目的:1.用 apache+jk+tomcat 实现 windows xp 和 linux 下的 web server 负载平衡和集群。2.介绍更多关于apache, jk, tomcat 的详细配置软件工具介绍:Apache:是前端web 服务器,用来接收客户端的请求Jk:是 tomcat Connector,用于把apache接收到的请求分发给tomcat 来处理Tomcat:也是 web 服务器,但在这里主要充当servlet 容器,用来处理jk 转发过来
3、的请求。为什么要配置 Tomcat负载平衡和集群:负载平衡:负载平衡能处理高并发量的请求Tomcat 集群: Tomcat 集群配合负载平衡可以是系统达到高可用性,即任何一台服务器不可用,自动重新连接后,能保持session数据一致,不需要重新输入密码。简单原理介绍:1.apatche与 tomcat 的之间的联系由jk 完成,用的是ajp 协议。每个tomcat 都在监听ajp端口。默认的AJP Connector 的端口是8009 。2.配置了集群的tomcat 之间通过tcp 协议通信复制session,当然要在tomcat 应用中的web.xml 文件中加入 或 ,标志着要复制sess
4、ion。复制 session是为了在某个服务器正在被请求时宕机,请求由 apache通过 jk 转发到其他tomcat服务器时, session中的信息丢失采取的一中保持session的方式,还有其他的解决方案,如把 session存到数据库中。3.jk 把请求分配给某个tomcat 服务器遵循着不同的原则,这里我们使用的是负载平衡。在 workers.properties 中定义了很多worker,如果worker 的 type 把定义成lb,就表示这个worker 是负载平衡worker,他知道怎样提供轮询来分配request。而负载平衡也分很多平衡的方式, 采用哪种方式决定于属性work
5、er.balancer.method;下面具体描述不同的负载平衡方式(默认的是R 方式) 。worker.balancer.method=Request(简写 R) :负载平衡worker 将根据每个tomcat 服务器上处理的request数来寻找最佳的tomcat 服务器。这种方式适合绝大数application 。worker.balancer.method=Session (简写 S) :负载平衡worker 根据各个tomcat 上 session的数量来寻找最佳tomcat,但是负载平衡worker 并没有状态, 所以不知道session个数,所以把没有session cookie
6、 的请求或url 中没有 encode sessionid 的请求当作new session。worker.balancer.method= Traffic (简写 T) :负载平衡worker 根据 jk 和 tomcat 直接的网络状况来找最佳的tomcat 服务器。worker.balancer.method= Busyness (简写 B) :负载平衡worker 根据 tomcat 的流量选择流量最少的tomcat。windows下的具体配置:软件系统环境:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理
7、- - - - - - - 第 2 页,共 22 页 - - - - - - - - - 操作系统: windows xp 前端服务器: apache_21.0.55-win32-x86-no_ssl.zip 负载平衡器: mod_jk-1.2.27-httpd-2.0.63.so 集群节点: apache-tomcat-5.5.27.zip 配置步骤 :1.下载以上软件2.安装apache,并把mod_jk.2.0.55 解压后拷贝到apache 安装目录 (这里为E:ideapacheApache2)/modules 下面,其实 modules下面是 apache的各个功能模块,可插拔;3
8、.安装各个 tomcat到不同的主机上4. 在 apache安装目录下 conf 目录中找到 httpd.conf 文件,并在末尾添加:include E:ideapacheApache2confmod_jk.conf 5.在httpd.conf 同目录下新建mod_jk.conf 文件,内容如下:#加载 mod_jk Module LoadModule jk_module modules/mod_jk-apache-2.0.55.so #指定 workers.properties文件路径JkWorkersFile conf/workers.properties #指定那些请求交给 tomca
9、t 处理,controller为在 workers.propertise里指定的负载分配控制器( 在这里可以分配更多的request 给 controller如果要在运行时管理负载平衡中的各个worker 则应该配置 status类型的 sworker ,并把/jkmanager/*类型的请求分配给sworker ,访问 jkmanager即可访问,配置方法见详细配置附录 )JkMount /*.jsp controller 6.在 httpd.conf 同目录下新建workers.properties 文件,内容如下worker.list = controller,tomcat1,tomca
10、t2 #server 列表#=tomcat1= worker.tomcat1.port=8009 #ajp13 端口号,在 tomcat 下 server.xml配置, 默认 8009 worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请填写ip 地址worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor = 1 #server的加权比重,值越高,分得的请求越多#=tomcat2= worker.tomcat2.port=9009 #ajp13 端口号,在 tomcat 下 server.xml配置,
11、默认 8009 worker.tomcat2.host=localhost #tomcat的主机地址,如不为本机,请填写ip 地址worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor = 1 #server的加权比重,值越高,分得的请求越多#=controller,负载均衡控制器 = 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 22 页 - - - - - - - - - worker.controller.type=lb
12、 worker.controller.balanced_workers=tomcat1,tomcat2 #指定分担请求的tomcat worker.controller.sticky_session=1 4. 修改 tomcat 配置文件 server.xml打开 tomcat2/conf/server.xml文件ajp1.3 ( 是用于jk与 tomcat之间的通信) Connector的 port一定要和workers.properties文件中的一致http/1.1 Connector(用于浏览器与tomcat 之间的通信) 的 port 指定单个访问此tomcat是用的端口号,如果 t
13、omcat在不同的主机上可以不修改这个端口号。 Server port 也一样名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 22 页 - - - - - - - - - 5. 配置集群只配置负载均衡还不行,还要session 复制,也就是说其中任何一个tomcat的添加的 session ,是要同步复制到其它tomcat , 集群内的 tomcat 都有相同的session 修改tomcat1, tomcat2 的 server.xml ,将集群部分配置的在注释符删掉,
14、并将tomcat2的 4001 端口改为 4002,以避免与 tomcat冲突,当然,如果是tomcat 安装在不同的主机上,是不用改端口的,去掉注释符即可名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 22 页 - - - - - - - - - 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 22 页 - - - - - - - - - 在每个
15、tomcat 节点上的应用(test)中的 web.Xml 中加入 表明要复制session6.运行每个tomcat 节点7.运行 apache服务器9.测试:成功的例子 :在不同的客户端发起请求,请求会被平均分配给tomcat 关闭其中一个tomcat1,tomcat1 原来处理的请求会被其他tomcat2 接收,如果此前被关闭的tomca1t 的 session 中存在信息,tomcat2 中 tomcat1 的 session 信息依然存在,表现为登录tomcat 宕机请求被转到另外一个tomcat,并仍然处于登录状态Linux 下的具体配置:软件系统环境:操作系统: redhat 4
16、i386 前端服务器: httpd-2.0.63.tar.gz 安装在 linux 下负载平衡器: mod_jk-1.2.27-httpd-2.0.61.so 二进制版本集群节点: apache-tomcat-5.5.27.zip 安装在 windows 下配置步骤 :一、下载以上软件二、安装 apache. 下面详细讲解apache的安装步骤: (注意:凡是标记为紫色的,皆为在终端中应该执行的命令, 黄色字体为执行结果说明!以下是在 linux4 下用 root 用户登陆的状态下测试通过的) A:打开终端,执行以下命令确认编译环境:#system-config-packages # rpm
17、q gcc 执行结果显示gcc-3.4.3-9.EL4, 说明 gcc 已经安装B:进行 apache服务器编译安装1.释放源码包文件:将你已经下载的httpd-2.0.63.tar.gz 复制到目录“/usr/local/src/ ”2.进入此目录对httpd-2.0.63.tar.gz 进行解压,执行以下命令:# cd /usr/local/src/ # tar zxvf httpd-2.0.63.tar.gz Tar 命令执行成功后会在当前目录下出现名为“httpd-2.0.63”的目录,执行:# ls 显示结果: httpd-2.0.63.tar.gz httpd-2.0.63 说明解
18、压成功进入 httpd-2.0.63 目录:# cd httpd-2.0.63 3.编译前配置,执行以下命令:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 22 页 - - - - - - - - - # ./configure prefix=/usr/local/apache2 enable-so enable-rewrite 说明: -prefix 指定要安装到的系统目录-enable-so 设置 apache服务器可以使用动态加载模块功能-enable-rewri
19、te 设置 apache服务器具有rewrite 功能此命令执行过程需要比较长的时间,屏幕上将显示配置的过程信息4.编译服务器程序,执行命令:# make 此命令执行过程需要比较长的时间,屏幕上将显示编译的过程信息5.安装已经编译完成的程序:# make install 此命令执行过程需要比较长的时间,屏幕上将显示安装的过程信息#ls /usr/local/ 此时,将会显示出apache2目录,恭喜你,安装成功了!6.如何启动apache? 进入你安装好的apache2的 bin 目录# cd /usr/local/apache2/bin # apachectl start 7. 如何关闭ap
20、ache? 进入你安装好的apache2的 bin 目录# cd /usr/local/apache2/bin # apachectl stop 三、安装各个tomcat 到不同的主机上四、其他配置同windows 五、运行每个tomcat 节点六、运行 apache,运行时如报错:不能load mod_jk, mod_jk 在* 目录不存在,很有可能是mod_jk 版本错误,检查官方网上的版本声明信息附:如果集群节点在linux 下,还应该安装 jdk+tomcat+mysql,执行以下步骤一、下载以下软件,并将其放置于/usr/local/src 目录下:Jdk: jdk-1_5_0-li
21、nux-i586-rpm.bin Tomcat: apache-tomcat-6.0.18.tar.gz Mysql: mysql-5.0.67-linux-i686.tar.gz 二、安装配置JDK # chmod u+x jdk-1_5_0-linux-i586-rpm.bin /设置包可执行的属性# ./ jdk-1_5_0-linux-i586-rpm.bin /自动安装,中间需要确定安装协议只需输入yes # cd /usr/ /进入安装好的目录# ln s /usr/java/jdk1.5.0 jdk1.5.0 /创建 jdk1.5.0 目录连接到 /usr/jdk1.5.0 名师
22、资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 22 页 - - - - - - - - - 三、设置环境变量:写到/etc/profile 中,那样系统启动时就会自动加载jdk,打开文件/etc/profile, 并将以下语句写入:export JAVA_HOME= ” /usr/jdk1.5.0 ”export PATH= ” $PATH:$JAVA_HOME/bin ”export CLASSPATH= ” $JAVA_HOME/lib ”export CATALINA
23、_HOME=” /root/tomcat6.0 ”四、安装配置 tomcat # cd /usr/local/src /进入你放置tomcat 的文件夹# tar zxvf apache-tomcat-6.0.18.tar.gz -C /usr/local/ /解包至 usr/local 文件夹# ln s /usr/local/apache-tomcat-6.0.18/ /root/tomcat6.0 /做个 tomcat6.0 目录连接至 tomcat 五、启动 tomcat # cd /root/tomcat6.0 # bin/startup.sh 如果显示以下内容,恭喜你,配置OK 了
24、六、关闭 tomcat # cd /root/tomcat6.0 # bin/shutdown.sh 七、安装配置 mysql 1. 建立 mysql 的用户和组, 指定 mysql 的用户和组宿主目是”/usr/local/mysql/data # groupadd -g 200 mysql #useradd -u 200 -g mysql -d /usr/local/mysql/data -M mysql 执行结果如下:2.解压安装包到指定目录并建立连接文件# tar zxvf mysql-5.0.67-linux-i686.tar.gz C /usr/local # cd /usr/lo
25、cal 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 22 页 - - - - - - - - - # ln -s mysql-5.0.67-linux-i686/ mysql 3.在/var/lib目录下建立mysql 的子目录,并设置属主和属组。 # mkdir /var/lib/mysql #chown R mysql:mysql /var/lib/mysql #chown R root:mysql /usr/local/ mysql-5.0.67-linux-i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年apache-tomcat配置指南归 2022 apache tomcat 配置 指南
限制150内