码迷,mamicode.com
首页 > Web开发 > 详细

tomcat,jdk编译安装,并基于Apache负载均衡,session绑定

时间:2018-09-17 17:50:08      阅读:409      评论:0      收藏:0      [点我收藏+]

标签:word   utc   环境变量   name   virtual   版本   pps   clust   XML   

下载tomcat:
wget http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.34/bin/apache-tomcat-8.5.34.tar.gz

下载JDK:
wget http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.rpm?AuthParam=1536721970_38dbf1e81e1c24c45ef2e0ee119b29a4

安装jdk:
rpm -ivh jdk-8u181-linux-x64.rpm\?AuthParam\=1536721970_38dbf1e81e1c24c45ef2e0ee119b29a4
安装目录:
ls /usr/java
配置环境变量:
#vi /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/latest
export PATH=$JAVA_HOME/bin:$PATH
重读配置:
#. /etc/profile.d/java.sh
查看版本:

java -version

java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
查看环境变量:
]# echo $JAVA_HOME
/usr/java/latest

解压tomca至usr/local:
tar xf apache-tomcat-8.5.34.tar.gz -C /usr/local/
ln -sv apache-tomcat-8.5.34 tomcat

添加环境变量:
vi /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
重读:. /etc/profile.d/tomcat.sh
测试:

catalina.sh version

Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/latest
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Server version: Apache Tomcat/8.5.34
Server built: Sep 4 2018 22:28:22 UTC
Server number: 8.5.34.0
OS Name: Linux
OS Version: 3.10.0-514.el7.x86_64
Architecture: amd64
JVM Version: 1.8.0_181-b13
JVM Vendor: Oracle Corporation
测试配置语法:
catalina.sh configtest
启动yomcat:

catalina.sh start

Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/latest
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
查看端口:
ss -tnl

添加第一个java程序:
1、创建目录结构
#mkdir myapp/{lib,classes,WEB-INF,META-INF} -pv
mkdir: 已创建目录 "myapp/lib"
mkdir: 已创建目录 "myapp/classes"
mkdir: 已创建目录 "myapp/WEB-INF"
mkdir: 已创建目录 "myapp/META-INF"
2、编写程序

vi myapp/index.jsp

<%@ page language="java" %>
<%@ page import="java.util.*" %>
<html>
<head>
<title>JSP Test Page</title>
</head>
<body>
<% out.println("hello world"); %>
</body>
</html>

配置管理界面:
添加管理员账号和密码:
#vi /usr/local/tomcat/conf/tomcat-users.xml
<role rolename="manager-gui"/>
<user username="tomcat" password="tomcat1" roles="manager-gui"/>

配置远程访问manager:
tomat_home/conf/Catalina/localhost/下 添加manager.xml
<Context privileged="true" antiResourceLocking="false"
docBase="${catalina.home}/webapps/manager">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>
配置host manager:

vi tomcat-users.xml

<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="tomcat" password="tomcat1" roles="manager-gui,admin-gui"/>

#vim webapps/host-manager/META-INF/context.xml

    <Context antiResourceLocking="false" privileged="true" >
    <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="^.*$" />  #修改这里
        </Context>

创建目录文件:
mkdir -pv /data/{webapps,logs}
拷贝测试文件:
cp -r /usr/local/tomcat/webapps/myapp/* /data/webapps/
编辑tomcat配置文件:
#vi server.xml
</Host>
<Host name="web.shengjing360.com" appBase="/data/webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/data/webapps" reloadable="true" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/data/logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
配置hosts文件,然后测试虚拟机:http://web.shengjing360.com:8080/

tomcat基于httpd负载均衡示例:
vi /etc/httpd/conf.d/vhosts.conf

基于http:
proxy balancer://lbcluster1>
balancermember http://192.168.102.44:8080 loadfactor=10 route=TomcatA
balancermember http://192.168.102.46:8080 loadfactor=10 route=TomcatB
</proxy>

<VirtualHost :80>
ServerName web.shengjing360.com
ProxyVia On
ProxyRequests Off
ProxyPreserveHost On
<Proxy
>
Require all granted
</Proxy>
ProxyPass /status !
ProxyPass / balancer://lbcluster1/
ProxyPa***everse / balancer://lbcluster1/
<Location />
Require all granted
</Location>
<Location /balancer-manager> #balancer-manager管理页面
SetHandler balancer-manager
Proxypass !
Require all granted
</Location>
</VirtualHost>

会话绑定:
Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
<proxy balancer://lbcluster1>
balancermember http://192.168.102.44:8080 loadfactor=10 route=TomcatA
balancermember http://192.168.102.46:8080 loadfactor=10 route=TomcatB
ProxySet stickysession=ROUTEID
</proxy>

<VirtualHost :80>
ServerName web.shengjing360.com
ProxyVia On
ProxyRequests Off
ProxyPreserveHost On
<Proxy
>
Require all granted
</Proxy>
ProxyPass /status !
ProxyPass / balancer://lbcluster1/
ProxyPa***everse / balancer://lbcluster1/
<Location />
Require all granted
</Location>
<Location /balancer-manager>
SetHandler balancer-manager
Proxypass !
Require all granted
</Location>
</VirtualHost>

基于ajp:
[root@localhost conf.d]# vi vhosts.ajp.conf

#Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
<proxy balancer://lbcluster1>
balancermember ajp://192.168.102.44:8009 loadfactor=10 route=TomcatA
balancermember ajp://192.168.102.46:8009 loadfactor=10 route=TomcatB
ProxySet stickysession=ROUTEID
</proxy>

<VirtualHost :80>
ServerName web.shengjing360.com
ProxyVia On
ProxyRequests Off
ProxyPreserveHost On
<Proxy
>
Require all granted
</Proxy>
ProxyPass /status !
ProxyPass / balancer://lbcluster1/
ProxyPa***everse / balancer://lbcluster1/
<Location />
Require all granted
</Location>
<Location /balancer-manager>
SetHandler balancer-manager
Proxypass !
Require all granted
</Location>
</VirtualHost>

tomcat,jdk编译安装,并基于Apache负载均衡,session绑定

标签:word   utc   环境变量   name   virtual   版本   pps   clust   XML   

原文地址:http://blog.51cto.com/13841662/2176159

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!