公司的业务一般是使用tomcat7搭建的web服务器,运行在window2008r2上,所以需要研究下如何使用
一、tomcat7安装
JDK
Tomcat 7.0旨在在Java SE 6上运行。
可从http://www.oracle.com/technetwork/java/javase/downloads/index.html获取适用于许多平台的兼容JDK(或指向可以找到它们的链接) 。
下载地址https://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html,需要注册才能下载
下载完成后,直接安装
JDK环境变量配置
安装完JDK后配置环境变量 计算机→属性→高级系统设置→高级→环境变量
系统变量→新建 JAVA_HOME 变量,变量值填写jdk的安装目录(本人是 C:\Program Files\Java\jdk1.6.0_45)
系统变量→寻找 Path 变量→编辑
在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
(注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码)
系统变量→新建 CLASSPATH 变量
变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一点)
系统变量配置完毕
检验是否配置成功 运行cmd 输入 java -version (java 和 -version 之间有空格)
若如图所示 显示版本信息 则说明安装和配置成功。
tomcat环境变量配置
这是两种不同的下载,一个是普通安装版本,一个是解压安装版本。使用起来是一样的,只是在普通安装版本中有一些界面可提供对Tomcat的快捷设置,而且普通安装会将Tomcat作为系统服务进行注册。
据说一般使用解压安装版本较多
使用解压版本,解压后存放目录就是运行目录
新建系统变量名CATALINA_BASE,值tomcat的安装路径,如下图所示:,我的路径为(C:\Users\Administrator\Desktop\apache-tomcat-7.0.92-windows-x64\apache-tomcat-7.0.92)
新建系统变量CATALINA_HOME,值tomcat的安装路径,如下图所示:
系统变量path,在值里面添加“%CATALINA_HOME%\lib;%CATALINA_HOME%\bin”,如下图所示:
直接在cmd中输入startup ,能够调出tocat则说明配置成功
环境变量配置完成后,在cmd中直接输入service进行配置服务,语法为(服务名明也可以不加)
service intall tomcat
这样便完成,在window服务中,将服务设置为自动启动即可
浏览器访问localhost:8080
确定tomcat服务器配置完成
二、tomcat简单配置
bin目录存放一些启动运行Tomcat的可执行程序和相关内容。
conf存放关于Tomcat服务器的全局配置。
lib目录存放Tomcat运行或者站点运行所需的jar包,所有在此Tomcat上的站点共享这些jar包。
wabapps目录是默认的站点根目录,可以更改。
work目录用于在服务器运行时过度资源,简单来说,就是存储jsp、servlet翻译、编译后的结果。
服务器配置为server.xml
更改默认端口
默认端口为8080,修改为18090
需要把Connector下面的port属性设置为80就可以了,道理很简单,用户不会在浏览器输入:8080来访问网站,浏览器也不会自动将请求发送到服务器的8080端口。
然后重启tomcat,输入localhost:18090
修改默认站点
站点,在服务器上肯定是用文件夹(即目录结构)来存储和管理的。但是它和普通的文件夹又不同,在Tomcat里,可用于作为站点的文件夹必须有如下特点:拥有一个名为WEB-INF的子文件夹,该子文件夹下必须有一个名为web.xml的文件,而且该xml文件必须受约束与特定的DTD(web.xml内容可以参考webapps/ROOT/WEB-INF/web.xml。)。
首先配置站点,在webapps目录下创建文件夹myweb,创建WEB-INF子文件夹,创建web.xml,完成。web.xml内容可以参考webapps/ROOT/WEB-INF/web.xml,直接复制即可
然后新建index.html文件
然后修改配置文件
新增
<Context path="" docBase="C:\Users\Administrator\Desktop\apache-tomcat-7.0.92-windows-x64\apache-tomcat-7.0.92\webapps\myweb" />
保存配置文件,然后重启tomcat
配置虚拟机主机
所谓虚拟主机,就是将一个或多个主机名(域名)和Tomcat所在的服务器进行绑定。由于一个IP可以和多个域名进行帮定,我们大可以将不同的域名指向服务器(指硬件)上的不同文件夹,造成一个服务器(或者一个IP)多个主机的“虚拟主机”效果。这个实现起来相当的简单。只需要在server.xml文件中新建Host节点,将其属性进行不同设置即可。
1 #你的主机名(域名)1 2 <Host name="localhost" appBase="webapps" 3 unpackWARs="true" autoDeploy="true" 4 xmlValidation="false" xmlNamespaceAware="false"> 5 </Host> 6 #你的域名2 7 <Host name="www.coderecord.org" appBase="主机空间地址" 8 unpackWARs="true" autoDeploy="true" 9 xmlValidation="false" xmlNamespaceAware="false"> 10 #域名3可以和域名2共用一个主机空间 11 <alias>coderecord.org</alias> 12 <Context path="" docBase="站点地址" debug="1" reloadable="true" allowLinking="true" /> 13 </Host>
以下为演示站点目录访问
浏览localhost:18090/chucloud/
四、使用zabbix监控tomcat
对于使用tomcat的一些java类应用,需要了解tomcat以及jvm的运行状态。
zabbix监控tomcat首先要在zabbix_server上开启java poller,开启zabbix_java后,其实相当于开启了一个javagataway,端口是10052,还要开启12345端口,×××能数据输出
流程为
java poller-->javagateway:10052-->tomcat:12345
首先在tomcat 服务器上配置catalina.bat(linux上为catalina.sh),在set "CURRENT_DIR=%cd%"加入如下配置
set JAVA_OPTS=-Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
下载支持jmx 的jar包catalina-jmx-remote.jar,把他放到tocmat目录下的lib包中。
下载地址http://www.java2s.com/Code/Jar/t/Downloadtomcatcatalinajmxremote7027jar.htm
重启tomcat服务
配置zabbix-server,加入java支持
在zabbix4.0上可以使用下载对应版本的zabbix-java-gateway的rpm包,直接yum安装
rpm -i yum install zabbix-java-gateway
安装完成后会生成一个/usr/sbin/zabbix_java_gateway脚本,后面会使用到
然后再zabbix服务器上启动zabbix-java-gateway服务
执行脚本命令后,启动10052端口,
然后修改zabbix服务器的配置文件,支持启用javapollers
修改完成后重启zabbix服务
然后尝试监控
过段时间后,可以显示监控成功
配置使用官方自带模板
过段时间可以发现收集到监控数据
四、第三方模板
官方模板有问题,监控得不是很好,可以使用第三方模板来替代
下载地址:
https://ixdba.net/zabbix/zbx_tomcat_templates
要导入新模板,就要删除旧模板 "Template App Apache Tomcat JMX"
然后导入新模板,导入成功后,配置主机应用模板
可以看到第三方模板图形很准确
查看详细状态
五、思考
1、如何监控自定义首页?站点和自定义端口
2、linux上tomcat如何配置 如何监控?