部署tomcat部署实战案例
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.tomcat概述
起始于SUN的一个Servlet的参考实现项目Java Web Server,作者是James Duncan Davidson,后将项目贡献给了ASF。和ASF现有的项目合并,并开源成为顶级项目,官网地址:http://tomcat.apache.org/。
Tomcat仅仅实现了Java EE规范的与Servlet、JSP相关的类库,是JavaEE不完整实现。
著名图书出版商O'Reilly约稿该项目成员,Davidson希望使用一个公猫作为封面,但是公猫已经被另一本书使用,书出版后封面是一只雪豹。 1999年发布初始版本是Tomcat 3.0,实现了Servlet 2.2和JSP1.1规范。
Tomcat 4.x发布时,内建了Catalina(Servlet容器)和Jasper(JSP engine)等。
商用的Servlet和JSP实现有IBM WebSphere、Oracle WebLogic(原属于BEA公司)、Oracle Oc4j、Glassfish、JBoss等。
开源实现有Tomcat、Jetty、Resin。
《Tomcat权威指南》封面如下图所示。
二.基于yum方式部署tomcat
1>.部署JDK环境
博主推荐阅读: https://www.cnblogs.com/yinzhengjie/p/12199413.html
2>.查看tomcat相关的软件包
2>.安装tomcat应用程序
[root@tomcat201.yinzhengjie.org.cn ~]# yum -y install tomcat tomcat-admin-webapps tomcat-webapps
温馨提示: tomcat-admin-webapps: tomcat的应用程序的管理组件。 tomcat-webapps: 为提供tomcat的默认欢迎首页文件的组件。
3>.查看安装tomcat的相关目录
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
[root@tomcat201.yinzhengjie.org.cn ~]# rpm -ql tomcat /etc/logrotate.d/tomcat /etc/sysconfig/tomcat /etc/tomcat /etc/tomcat/Catalina /etc/tomcat/Catalina/localhost /etc/tomcat/catalina.policy /etc/tomcat/catalina.properties /etc/tomcat/conf.d /etc/tomcat/conf.d/README /etc/tomcat/context.xml /etc/tomcat/log4j.properties /etc/tomcat/logging.properties /etc/tomcat/server.xml /etc/tomcat/tomcat-users.xml /etc/tomcat/tomcat.conf /etc/tomcat/web.xml /usr/bin/tomcat-digest /usr/bin/tomcat-tool-wrapper /usr/lib/systemd/system/tomcat.service /usr/lib/systemd/system/tomcat@.service /usr/libexec/tomcat /usr/libexec/tomcat/functions /usr/libexec/tomcat/preamble /usr/libexec/tomcat/server /usr/sbin/tomcat /usr/share/doc/tomcat-7.0.76 /usr/share/doc/tomcat-7.0.76/LICENSE /usr/share/doc/tomcat-7.0.76/NOTICE /usr/share/doc/tomcat-7.0.76/RELEASE-NOTES /usr/share/tomcat /usr/share/tomcat/bin/bootstrap.jar /usr/share/tomcat/bin/catalina-tasks.xml /usr/share/tomcat/conf /usr/share/tomcat/lib /usr/share/tomcat/logs /usr/share/tomcat/temp /usr/share/tomcat/webapps /usr/share/tomcat/work /var/cache/tomcat /var/cache/tomcat/temp /var/cache/tomcat/work /var/lib/tomcat /var/lib/tomcat/webapps /var/lib/tomcats /var/log/tomcat /var/log/tomcat/catalina.out [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]#
4>.运行tomcat服务
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
[root@tomcat201.yinzhengjie.org.cn ~]# ss -ntl State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:22 *:* LISTEN 0 128 :::22 :::* [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# systemctl start tomcat [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# ss -ntl State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 100 *:8009 *:* LISTEN 0 100 *:8080 *:* LISTEN 0 128 *:22 *:* LISTEN 0 1 127.0.0.1:8005 *:* LISTEN 0 128 :::22 :::* [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# systemctl enable tomcat Created symlink from /etc/systemd/system/multi-user.target.wants/tomcat.service to /usr/lib/systemd/system/tomcat.service. [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# systemctl list-unit-files | grep tomcat tomcat.service enabled tomcat@.service disabled [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]#
5>.访问tomcat的默认端口
tomcat首页文件默认的查找顺序如下所示:
index.htm
index.html
index.jsp(如果没有定义上面2个文件,tomcat默认提供了该文件,即tomcat的默认首页,如下图所示。)
6>.查看tomcat应用程序运行的主目录
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
[root@tomcat201.yinzhengjie.org.cn ~]# ll /usr/share/tomcat/webapps/ROOT/ total 188 -rw-r--r-- 1 tomcat tomcat 26447 Mar 12 2019 asf-logo-wide.svg -rw-r--r-- 1 tomcat tomcat 713 Mar 12 2019 bg-button.png -rw-r--r-- 1 tomcat tomcat 1918 Mar 12 2019 bg-middle.png -rw-r--r-- 1 tomcat tomcat 1392 Mar 12 2019 bg-nav-item.png -rw-r--r-- 1 tomcat tomcat 1401 Mar 12 2019 bg-nav.png -rw-r--r-- 1 tomcat tomcat 3103 Mar 12 2019 bg-upper.png -rw-r--r-- 1 tomcat tomcat 21630 Mar 12 2019 favicon.ico -rw-r--r-- 1 tomcat tomcat 12186 Mar 12 2019 index.jsp -rw-r--r-- 1 tomcat tomcat 8965 Mar 12 2019 RELEASE-NOTES.txt -rw-r--r-- 1 tomcat tomcat 5581 Mar 12 2019 tomcat.css -rw-r--r-- 1 tomcat tomcat 2066 Mar 12 2019 tomcat.gif -rw-r--r-- 1 tomcat tomcat 5103 Mar 12 2019 tomcat.png -rw-r--r-- 1 tomcat tomcat 2376 Mar 12 2019 tomcat-power.gif -rw-r--r-- 1 tomcat tomcat 67795 Mar 12 2019 tomcat.svg drwxr-xr-x 2 tomcat tomcat 21 Feb 17 03:57 WEB-INF [root@tomcat201.yinzhengjie.org.cn ~]#
三.基于二进制方式部署tomcat
1>.部署JDK环境
博主推荐阅读: https://www.cnblogs.com/yinzhengjie/p/12199413.html
2>.下载tomcat相关的软件包
访问tomcat的官网: http://tomcat.apache.org/
3>.下载tomcat软件包
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
[root@tomcat201.yinzhengjie.org.cn ~]# ll total 0 [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.51/bin/apache-tomcat-8.5.51.tar.gz --2020-02-17 04:44:09-- http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.51/bin/apache-tomcat-8.5.51.tar.gz Resolving mirror.bit.edu.cn (mirror.bit.edu.cn)... 114.247.56.117, 2001:da8:204:1205::22 Connecting to mirror.bit.edu.cn (mirror.bit.edu.cn)|114.247.56.117|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 10315164 (9.8M) [application/octet-stream] Saving to: ‘apache-tomcat-8.5.51.tar.gz’ 100%[====================================================================================================================>] 10,315,164 5.06MB/s in 1.9s 2020-02-17 04:44:11 (5.06 MB/s) - ‘apache-tomcat-8.5.51.tar.gz’ saved [10315164/10315164] [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# ll total 10076 -rw-r--r-- 1 root root 10315164 Feb 6 06:40 apache-tomcat-8.5.51.tar.gz [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]#
4>.解压tomcat软件到指定目录
[root@tomcat201.yinzhengjie.org.cn ~]# tar zxf apache-tomcat-8.5.51.tar.gz -C /yinzhengjie/softwares/
5>.创建tomcat的符号(软)链接
[root@tomcat201.yinzhengjie.org.cn ~]# ln -sv /yinzhengjie/softwares/apache-tomcat-8.5.51/ /yinzhengjie/softwares/tomcat
6>.运行tomcat
[root@tomcat201.yinzhengjie.org.cn ~]# /yinzhengjie/softwares/tomcat/bin/startup.sh
7>.第一次访问tomcat的web界面(index.jsp)可能会很慢
我们知道tomcat首页文件默认的查找顺序如下所示:
index.htm
index.html
index.jsp(如果没有定义上面index.htm或者index.html文件,tomcat默认提供了index.jsp文件,即tomcat的默认首页。)
当我们首次访问web页面时,可能小伙伴会很奇怪,为什么访问web界面会很慢,其实这是因为第一次访问index.jsp文件时,jasper会将index.jsp转换为servlet能识别的文件,即index_jsp.java,但是JVM并不能直接识别java文件,因此需要servlet通过java编译工具将index_jsp.java转换为index_jsp.class文件,此时JVM才能识别并运行程序。也就是我们所能看到的页面啦,如下图所示。
8>.停止tomcat服务
[root@tomcat201.yinzhengjie.org.cn ~]# /yinzhengjie/softwares/tomcat/bin/shutdown.sh
9>.创建自定义用户用于管理tomcat服务
[root@tomcat201.yinzhengjie.org.cn ~]# useradd -r jason [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# getent passwd jason jason:x:998:996::/home/jason:/bin/bash [root@tomcat201.yinzhengjie.org.cn ~]# [root@tomcat201.yinzhengjie.org.cn ~]# chown jason:jason /yinzhengjie/softwares/apache-tomcat-8.5.51/ -R
10>.使用自定义用户启动tomcat服务
11>.zabbix监控tomcat配置参数
博主推荐阅读: https://www.cnblogs.com/yinzhengjie2020/p/12315341.html