CentOS6.X 安装多实例的Tomcat
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS6.X 安装多实例的Tomcat相关的知识,希望对你有一定的参考价值。
这是我们公司在生产环境中的一些安装和配置,供大家一起参考讨论。
===================================================
1、卸载掉自带的OpenJDK(可以卸载,也可以不卸载,个人建议最好卸载)
查看目前系统的jdk:
# rpm -qa | grep jdk
java-1.6.0-openjdk-devel-1.6.0.35-1.13.7.1.el6_6.x86_64
java-1.6.0-openjdk-javadoc-1.6.0.35-1.13.7.1.el6_6.x86_64
java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.x86_64
java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.x86_64
java-1.7.0-openjdk-devel-1.7.0.79-2.5.5.4.el6.x86_64
卸载:(上面不需要的都可以卸载)
# yum -y removejava-1.7.0-openjdk-1.7.0.75-2.5.4.0.el6_6.x86_64
2、安装 JDK1.7
下载Sun的JDK。我下载的是 jdk-7u75-linux-x64.gz,将下载的文件解压到/usr/local目录下
# tar zxvf jdk-7u75-linux-x64.gz –C /usr/local
接下来配置JDK:
vi /etc/profile打开profile文件,在profile文件的末尾加上:
JAVA_HOME=/usr/local/jdk1.7.0_75
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
保存并关闭profile文件,执行source/etc/profile命令让修改生效。
运行下java -version 看一下java版本 :
# java -version
java version "jdk1.7.0_75"
Java(TM) SE RuntimeEnvironment (build 1.7.0_75-b06)
Java HotSpot(TM) ClientVM (build 20.12-b01, mixed mode, sharing)
至此,整个JDK安装过程完毕。
3、安装Tomcat
下载apache-tomcat-7.0.33.tar.gz。解压缩:
tar xzvf apache-tomcat-7.0.33.tar.gz
将解压缩后的文件夹拷贝到/usr/local/tomcat:
cp-R apache-tomcat-7.0.33 /usr/local/tomcat
进入tomcat目录设置tomcat 的内存使用情况及其他配置:
cd /usr/local/tomcat/bin
vi daemon.sh
在正文开始的地方加入以下内容(注意将jdk等目录结合自己的实际情况进行修改) :
# chkconfig: 2345 20 80
# description: simpleexample to start tomcat
JAVA_HOME=/usr/local/jdk1.7.0_75
CATALINA_HOME=/usr/local/tomcat
CATALINA_OPTS="-server-Xms512m -Xmx2000m -XX:PermSize=256m -XX:MaxPermSize=2048 -Dfile.encoding=UTF-8-Dsun.jnu.encoding=UTF-8 -Djava.awt.headless=true"
参数说明:(红色标注的是根据业务情况,我们公司业务需要这些参数)
-server:一定要作为第一个参数,在多个CPU时性能佳
-Xms:初始Heap大小,使用的最小内存,cpu性能高时此值应设的大一些
-Xmx:java heap最大值,使用的最大内存
-XX:PermSize:设定内存的永久保存区域
-XX:MaxPermSize:设定最大内存的永久保存区域
-XX:MaxNewSize:
+XX:AggressiveHeap 会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。
-Xss:每个线程的Stack大小
-verbose:gc 现实垃圾收集信息
-Xloggc:gc.log 指定垃圾收集日志文件
-Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一
-XX:+UseParNewGC :缩短minor收集的时间
-XX:+UseConcMarkSweepGC :缩短major收集的时间
提示:此选项在Heap Size 比较大而且Major收集时间较长的情况下使用更合适。
4、 配置Tomcat为daemon方式启动
将daemon.sh 拷贝到启动目录,安装服务,测试服务:
先编译安装 commons-daemon :
先安装gcc,因为编译的时候要用到
yuminstall gcc
创建tomcat用户,用来运行tomcat服务:
在生产环境用 root 是不安全的,所以
useradd-s /sbin/nologin tomcat
chown-R tomcat:tomcat /usr/local/tomcat (最后做)
做为 service,和操作系统一起启动
# tarxzvf commons-daemon-native.tar.gz
# cdcommons-daemon-1.0.10-native-src/unix
#./configure
#make
# cpjsvc ../..
# cd../..
cp daemon.sh /etc/rc.d/init.d/tomcat9091
chmod 755 /etc/rc.d/init.d/tomcat9091
chkconfig --add tomcat9091
chkconfig tomcat9091 on
chkconfig --list tomcat9091
显示:
tomcat0:off 1:off 2:on 3:on 4:on 5:on 6:off ←确认2~5为on的状态就OK
启动Tomcat:
servicetomcat start
修改tomcat默认端口为9091,增加安全性!
cd/usr/local/tomcat/conf
viserver.xml
<Connector port="9091" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" /> #将此处默认的8080端口改为9091
增加编码格式:URIEncoding="UTF-8"
chown -R tomcat:tomcat /usr/local/tomcat
增加防火墙配置,允许9091端口:
# vi /etc/sysconfig/iptables
在允许ssh的下面增加一条:
-AINPUT -m state --state NEW -m tcp -p tcp --dport 9091 -j ACCEPT
保存,重启iptables服务 :
#service iptables restart
5、测试:
本机测试:
从其他机器 测试:
浏览器中输入 http://ip:9091/
6、Tomcat默认日志路径修改
Tomcat安装目录下Logs目录下默认会产生4种日志文件:catalina.*.log,host-manager.*.log,localhost.*.log,manager.*.log。系统出现异常的时候,有时候log文件会暴涨。这里偶是把日志文件移动到一个比较空的盘符,他爱怎么涨就涨吧。
找到Tomcat安装目录下conf目录中的logging.properties文件,修改
1catalina.org.apache.juli.FileHandler.level= FINE
1catalina.org.apache.juli.FileHandler.directory= ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix= catalina.
2localhost.org.apache.juli.FileHandler.level= FINE
2localhost.org.apache.juli.FileHandler.directory= ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix= localhost.
3manager.org.apache.juli.FileHandler.level= FINE
3manager.org.apache.juli.FileHandler.directory= ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix= manager.
4host-manager.org.apache.juli.FileHandler.level= FINE
4host-manager.org.apache.juli.FileHandler.directory= ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix= host-manager.
将${catalina.base}/logs修改成指定目录:例如e:/logs。
修改access日志路径的话要在server.xml文件中修改directory目录的位置:
<ValveclassName="org.apache.catalina.valves.AccessLogValve"directory="/apps/server/log/tomcat/tomcat8008" #此处将默认的logs目录修改为自定义日志路径
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t"%r" %s %b %D" /> #此处加个%D的参数,表示日志输出增加响应时间的参数(毫秒)
QQ群:1414406 欢迎交流
以上是关于CentOS6.X 安装多实例的Tomcat的主要内容,如果未能解决你的问题,请参考以下文章