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名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 22 页 -Tomcat 负载平衡和集群文档目的:1.用 a
2、pache+jk+tomcat 实现 windows xp 和 linux 下的 web server 负载平衡和集群。2.介绍更多关于apache,jk,tomcat 的详细配置软件工具介绍:Apache:是前端web 服务器,用来接收客户端的请求Jk:是 tomcat Connector,用于把apache接收到的请求分发给tomcat 来处理Tomcat:也是 web 服务器,但在这里主要充当servlet 容器,用来处理jk 转发过来的请求。为什么要配置 Tomcat负载平衡和集群:负载平衡:负载平衡能处理高并发量的请求Tomcat 集群:Tomcat 集群配合负载平衡可以是系统达到高
3、可用性,即任何一台服务器不可用,自动重新连接后,能保持session数据一致,不需要重新输入密码。简单原理介绍:1.apatche与 tomcat 的之间的联系由jk 完成,用的是ajp 协议。每个tomcat 都在监听ajp端口。默认的AJP Connector 的端口是8009。2.配置了集群的tomcat 之间通过tcp 协议通信复制session,当然要在tomcat 应用中的web.xml 文件中加入 或,标志着要复制session。复制 session是为了在某个服务器正在被请求时宕机,请求由 apache通过 jk 转发到其他tomcat服务器时,session中的信息丢失采取的
4、一中保持session的方式,还有其他的解决方案,如把 session存到数据库中。3.jk 把请求分配给某个tomcat 服务器遵循着不同的原则,这里我们使用的是负载平衡。在 workers.properties 中定义了很多worker,如果worker 的 type 把定义成lb,就表示这个worker 是负载平衡worker,他知道怎样提供轮询来分配request。而负载平衡也分很多平衡的方式,采用哪种方式决定于属性worker.balancer.method;下面具体描述不同的负载平衡方式(默认的是R 方式)。worker.balancer.method=Request(简写 R):
5、负载平衡worker 将根据每个tomcat 服务器上处理的request数来寻找最佳的tomcat 服务器。这种方式适合绝大数application。worker.balancer.method=Session(简写 S):负载平衡worker 根据各个tomcat 上 session的数量来寻找最佳tomcat,但是负载平衡worker 并没有状态,所以不知道session个数,所以把没有session cookie 的请求或url 中没有 encode sessionid 的请求当作new session。worker.balancer.method=Traffic(简写 T):负载平衡
6、worker 根据 jk 和 tomcat 直接的网络状况来找最佳的tomcat 服务器。worker.balancer.method=Busyness(简写 B):负载平衡worker 根据 tomcat 的流量选择流量最少的tomcat。windows下的具体配置:软件系统环境:名师资料总结-精品资料欢迎下载-名师精心整理-第 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.z
7、ip 配置步骤:1.下载以上软件2.安装apache,并把mod_jk.2.0.55 解压后拷贝到apache 安装目录(这里为E:ideapacheApache2)/modules 下面,其实 modules下面是 apache的各个功能模块,可插拔;3.安装各个 tomcat到不同的主机上4.在 apache安装目录下 conf 目录中找到 httpd.conf 文件,并在末尾添加:include E:ideapacheApache2confmod_jk.conf 5.在httpd.conf 同目录下新建mod_jk.conf 文件,内容如下:#加载 mod_jk Module LoadM
8、odule jk_module modules/mod_jk-apache-2.0.55.so#指定 workers.properties文件路径JkWorkersFile conf/workers.properties#指定那些请求交给 tomcat 处理,controller为在 workers.propertise里指定的负载分配控制器(在这里可以分配更多的request 给 controller如果要在运行时管理负载平衡中的各个worker 则应该配置 status类型的 sworker,并把/jkmanager/*类型的请求分配给sworker,访问 jkmanager即可访问,配置
9、方法见详细配置附录)JkMount/*.jsp controller 6.在 httpd.conf 同目录下新建workers.properties 文件,内容如下worker.list=controller,tomcat1,tomcat2#server 列表#=tomcat1=worker.tomcat1.port=8009#ajp13 端口号,在 tomcat 下 server.xml配置,默认 8009 worker.tomcat1.host=localhost#tomcat的主机地址,如不为本机,请填写ip 地址worker.tomcat1.type=ajp13 worker.tomc
10、at1.lbfactor=1#server的加权比重,值越高,分得的请求越多#=tomcat2=worker.tomcat2.port=9009#ajp13 端口号,在 tomcat 下 server.xml配置,默认 8009 worker.tomcat2.host=localhost#tomcat的主机地址,如不为本机,请填写ip 地址worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor=1#server的加权比重,值越高,分得的请求越多#=controller,负载均衡控制器=名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 22
11、 页 -worker.controller.type=lb 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 指
12、定单个访问此tomcat是用的端口号,如果 tomcat在不同的主机上可以不修改这个端口号。Server port 也一样名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 22 页 -5.配置集群只配置负载均衡还不行,还要session 复制,也就是说其中任何一个tomcat的添加的 session,是要同步复制到其它tomcat,集群内的 tomcat 都有相同的session 修改tomcat1,tomcat2 的 server.xml,将集群部分配置的在注释符删掉,并将tomcat2的 4001 端口改为 4002,以避免与 tomcat冲突,当然,如果是tomcat 安装在
13、不同的主机上,是不用改端口的,去掉注释符即可名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 22 页 -名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 22 页 -在每个 tomcat 节点上的应用(test)中的 web.Xml 中加入 表明要复制session6.运行每个tomcat 节点7.运行 apache服务器9.测试:成功的例子:在不同的客户端发起请求,请求会被平均分配给tomcat 关闭其中一个tomcat1,tomcat1 原来处理的请求会被其他tomcat2 接收,如果此前被关闭的tomca1t 的 session 中存在信息,tomcat2 中
14、tomcat1 的 session 信息依然存在,表现为登录tomcat 宕机请求被转到另外一个tomcat,并仍然处于登录状态Linux 下的具体配置:软件系统环境:操作系统:redhat 4 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的安装步骤:(注意:凡是标记为紫色的,皆为在终端中应该执行的命令,黄色字体为执行
15、结果说明!以下是在 linux4 下用 root 用户登陆的状态下测试通过的)A:打开终端,执行以下命令确认编译环境:#system-config-packages#rpm 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 命令执行成
16、功后会在当前目录下出现名为“httpd-2.0.63”的目录,执行:#ls 显示结果:httpd-2.0.63.tar.gz httpd-2.0.63 说明解压成功进入 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-r
17、ewrite 设置 apache服务器具有rewrite 功能此命令执行过程需要比较长的时间,屏幕上将显示配置的过程信息4.编译服务器程序,执行命令:#make 此命令执行过程需要比较长的时间,屏幕上将显示编译的过程信息5.安装已经编译完成的程序:#make install 此命令执行过程需要比较长的时间,屏幕上将显示安装的过程信息#ls/usr/local/此时,将会显示出apache2目录,恭喜你,安装成功了!6.如何启动apache?进入你安装好的apache2的 bin 目录#cd/usr/local/apache2/bin#apachectl start 7.如何关闭apache?进
18、入你安装好的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-linux-i586-rpm.b
19、in 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 名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 22
20、 页 -三、设置环境变量:写到/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_HOME=”/root/tomcat6.0”四、安装配置tomcat#cd/usr/local/src/进入你放置tomcat 的文件夹#tar zxvf apache-tomcat-6.0.18.tar.gz-C/usr/
21、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 了六、关闭 tomcat#cd/root/tomcat6.0#bin/shutdown.sh 七、安装配置mysql 1.建立 mysql 的用户和组,指定 mysql 的用户和组宿主目是”/usr/local/mysql/data#groupadd-g 200 mysq
22、l#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/local 名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 22 页 -#ln-s mysql-5.0.67-linux-i686/mysql 3.在/var/lib目录下建立mysql 的子目录,并设置属主和属组。#mkdir/var/lib/mysql#chown R mysql:mysql/var
23、/lib/mysql#chown R root:mysql/usr/local/mysql-5.0.67-linux-i686/#chown R mysql:mysql/usr/local/mysql/data/执行结果如下图所示:4.进入 MYSQL 服务器程序目录,复制 mysql 的配置文件到f 到 f 到“/etc”目录中并执行 mysql_install_db命令初始化MYSQL 服务器中的数据#cd/usr/local/mysql#cp support-files/my-f/etc/f /会提示是否overwrite 只需/y 然后回车#./scripts/mysql_instal
24、l_db 执行中:5.设置 MYSQL 系统用户对行建立的数据库文件有足够的访问权限。#chown-R mysql:mysql/var/lib/mysql/#chown-R mysql:mysql/usr/local/mysql/data/执行过程如下:名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 22 页 -6.启动服务,并指定系统用户mysql 运行#/usr/local/mysql/bin/safe_mysqld -user=mysql&执行如下:7.设置数据库密码#/usr/local/mysql/bin/mysqladmin-u root password root
25、 8.数据库登陆#/usr/local/mysql/bin/mysql u root p 9.设置数据库随机启动,在Vi/etc/rc.d/rc.local 中加入/usr/local/mysql/support-files/mysql.server start/usr/local/apache-tomcat-6.0.18/bin/startup.sh start/etc/init.d/mysql start 10.数据库授权(注意,授权后在别的电脑上才能用sqlyog 登陆):GRANT ALL PRIVILEGES ON*.*TO rootlocalhost IDENTIFIED BY r
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年apache-tomcat配置指南 2022 apache tomcat 配置 指南
限制150内