Tomcat三Apache反向代理实现Tomcat负载均衡Word格式文档下载.docx
《Tomcat三Apache反向代理实现Tomcat负载均衡Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《Tomcat三Apache反向代理实现Tomcat负载均衡Word格式文档下载.docx(8页珍藏版)》请在冰豆网上搜索。
javaversion'
1.7.0_79'
OpenJDKRuntimeEnvironment(rhel-2.5.5.4.el6-x86_64u79-b14)
OpenJDK64-BitServerVM(build24.79-b02,mixedmode)
安装tomcat:
官网:
http:
//tomcat.apache.org
[root@node1~]#tarxfapache-tomcat-7.0.65.tar.gz-C/usr/local/
[root@node1~]#cd/usr/local/
[root@node1local]#ln-svapache-tomcat-7.0.65tomcat
'
tomcat'
->
'
apache-tomcat-7.0.65'
[root@node1~]#vim/etc/profile.d/tomcat.sh
exportCATALINA_HOME=/usr/local/tomcat
exportPATH=$CATALINA_HOME/bin:
$PATH
[root@node1~]#source/etc/profile.d/tomcat.sh
提供脚本:
[root@node1~]#cat/etc/rc.d/init.d/tomcat
#!
/bin/sh
#TomcatinitscriptforLinux.
#
#chkconfig:
23459614
#description:
TheApacheTomcatservlet/JSPcontainer.
#JAVA_OPTS='
-Xms64m-Xmx128m'
JAVA_HOME=/usr/lib/jvm/jre
CATALINA_HOME=/usr/local/tomcat
exportJAVA_HOMECATALINA_HOME
case$1in
start)
exec$CATALINA_HOME/bin/catalina.shstart;
;
stop)
exec$CATALINA_HOME/bin/catalina.shstop;
restart)
$CATALINA_HOME/bin/catalina.shstop
sleep2
*)
echo'
Usage:
`basename$0`{start|stop|restart}'
exit1
esac
[root@node1~]#chmodx/etc/rc.d/init.d/tomcat
[root@node1~]#chkconfigtomcat--add
定义管理页面用户名及密码:
[root@node1~]#cd/usr/local/tomcat/conf
[root@node1conf]#vimtomcat-users.xml
manager-gui'
/>
admin-gui'
password='
roles='
manager-gui,admin-gui'
配置文件复制到node2,并启动服务:
[root@node1conf]#scptomcat-users.xmlnode2:
/usr/local/tomcat/conf/
[root@node1conf]#servicetomcatstart;
sshnode2'
servicetomcatstart'
访问测试:
部署站点文件:
Node1:
[root@node1~]#mkdir-p/tomcat/webapps/test/WEB-INF/{classess,lib}
[root@node1~]#cd/tomcat/webapps/test
[root@node1test]#vimindex.jsp
%@pagelanguage='
java'
%>
html>
head>
title>
TomcatNode1title>
body>
h1>
fontcolor='
red'
>
node1.chencer.orgfont>
tablealign='
centre'
border='
1'
tr>
td>
SessionIDtd>
%session.setAttribute('
chencer.org'
'
);
%=session.getId()%>
Createdontd>
%=session.getCreationTime()%>
table>
Node2:
[root@node2~]#mkdir-p/tomcat/webapps/test/WEB-INF/{classess,lib}
[root@node2~]#cd/tomcat/webapps/test
[root@node2test]#vimindex.jsp
Tomcatnode2title>
node2.chencer.orgfont>
定义虚拟主机,并重启tomcat:
[root@node1~]#cd/usr/local/tomcat
[root@node1tomcat]#vimconf/server.xml
Enginename='
Catalina'
defaultHost='
node1.chencer.org'
Hostname='
appBase='
/tomcat/webapps'
unpackWARs='
true'
autoDeploy='
Contextpath='
/'
docBase='
test'
/>
Host>
[root@node1tomcat]#servicetomcatrestart
[root@node2~]#cd/usr/local/tomcat
[root@node2tomcat]#vimconf/server.xml
node2.chencer.org'
[root@node2tomcat]#servicetomcatrestart
httpd可以通过2种协议连接tomcat:
http,ajp;
tomcat启动之后默认会监听在2个端口:
8080,8009。
8080用于接收http请求,8009则用于接收ajp请求。
配置apache基于mod_proxy实现Tomcat负载均衡:
安装httpd:
[root@node0~]#yuminstallhttpd
确保httpd有以下模块:
[root@node0~]#httpd-M|grepproxy
proxy_module(shared)
proxy_balancer_module(shared)
proxy_ftp_module(shared)
proxy_http_module(shared)
proxy_ajp_module(shared)
proxy_connect_module(shared)
编辑httpd配置文件:
[root@node0~]#cd/etc/httpd/conf
[root@node0conf]#vimhttpd.conf
#DocumentRoot'
/var/www/html'
\\:
关闭中心主机;
在全局配置段中添加以下内容:
//cluster>
定义系群名;
BalancerMemberhttp:
//192.168.1.5:
8080loadfactor=1\\:
集群节点,loadfactor表示权重;
//192.168.1.6:
8080loadfactor=1
ProxySetlbmethod=bytraffic\\:
调度算法;
NameVirtualHost*:
80\\:
启用虚拟主机;
80>
ServerNamenode0.chencer.org
ProxyViaOn\\:
via信息;
ProxyRequestsoff\\:
关闭正向代理;
ProxyPreserveHoston\\:
支持虚拟合租记;
ProxyPass/balancer:
//clusterstickysession=jsessionid\\:
请求至后端主机;
ProxyPassReverse/balancer:
[root@node0conf]#httpd-t
[root@node0conf]#servicehttpdstart
配置apache基于mod_jk实现Tomcat负载均衡:
mod_jk模块仅支持使用ajp协议连接后端的tomcat;
由于mod_jk模块出现的较早,httpd默认不包括该模块,需要通过apache的apxs函数编译该模块,安装至apache的模块目录下。
若是直接使用yum安装的httpd,需要安装httpd-devel以提供apxs函数。
安装httpd-devel:
[root@node0~]#yuminstallhttpd-de