前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Tomcat_02_应用部署

Tomcat_02_应用部署

作者头像
Cyylog
发布2020-08-19 10:54:12
7120
发布2020-08-19 10:54:12
举报
文章被收录于专栏:Cyylog技术Cyylog技术
6、WEB站点部署

上线的代码有两种方式:

第一种方式是直接将程序目录放在webapps目录下面,这种方式大家已经明白了,就不多说了。

第二种方式是使用开发工具将程序打包成war包,然后上传到webapps目录下面。

1、使用war包部署web站点
代码语言:javascript
复制
[root@web03 webapps]# pwd
/application/tomcat/webapps
[root@web03 webapps]# wget http://10.0.0.1/apache/tomcat/memtest.war

站点主动解压部署

代码语言:javascript
复制
[root@web03 webapps]# ls
docs  examples  host-manager  logs  manager  memtest  memtest.war  ROOT

浏览器访问:

http://10.0.0.17:8080//memtest/meminfo.jsp

YHPrdK.png
YHPrdK.png
2、自定义默认网站目录

上面访问的网址为 http://10.0.0.3:8080/memtest/meminfo.jsp

现在想访问格式为http://10.0.0.3:8080/meminfo.jsp

方法一

将meminfo.jsp或其他程序放在tomcat/webapps/ROOT目录下即可。因为默认网站根目录为tomcat/webapps/ROOT

方法二

代码语言:javascript
复制
[root@web03 ~]# vim /application/tomcat/conf/server.xml +125
…… #添加上这两行
        <Context path="" docBase="/application/tomcat/webapps/memtest" debug="0" reloadable="false" crossContext="true"/>
        <Context path="/40team" docBase="/application/tomcat/webapps/memtest" debug="0" reloadable="false" crossContext="true"/>
……

修改配置文件后,要重启服务

代码语言:javascript
复制
[root@web03 ~]# /application/tomcat/bin/shutdown.sh 
[root@web03 ~]# /application/tomcat/bin/startup.sh
3、部署开源站点(jpress)

jpress官网:http://jpress.io

下载地址:https://github.com/JpressProjects/jpress

​ 第一个里程碑:安装配置数据库

代码语言:javascript
复制
yum -y install mariadb-server
systemctl start mariadb.service

​ #配置数据库

代码语言:javascript
复制
mysql
create database jpress DEFAULT CHARACTER SET utf8;
grant all on jpress.* to jpress@'localhost' identified by '123456';
exit

​ 第二个里程碑:jpress站点上线

代码语言:javascript
复制
[root@web03 webapps]# pwd
/application/tomcat/webapps
[root@web03 webapps]# wget http://10.0.0.1/apache/tomcat/jpress-web-newest.war

​ 第三个里程碑:浏览器访问

浏览器访问: http://10.0.0.17:8080/jpress-web-newest/install

YHPsIO.png
YHPsIO.png

填写数据库信息

YHPWQA.png
YHPWQA.png

设置站点名称等

YHPIdf.png
YHPIdf.png

安装完成

YHP7FS.png
YHP7FS.png

重启tomcat服务

代码语言:javascript
复制
[root@web03 ~]# /application/tomcat/bin/shutdown.sh 
[root@web03 ~]# /application/tomcat/bin/startup.sh
7、Tomcat多实例配置

多虚拟主机:nginx 多个Server标签(域名,ip,端口) 进程数量固定 master+worker

多实例(多进程):同一个程序启动多次,分为两种情况:

第一种:一台机器跑多个站点;

第二种:一个机器跑一个站点多个实例,配合负载均衡

1、复制程序文件
代码语言:javascript
复制
cd /application/tools/
tar xf apache-tomcat-8.0.27.tar.gz
cp -a apache-tomqcat-8.0.27 tomcat8_1
cp -a apache-tomcat-8.0.27 tomcat8_2

修改端口,以启动多实例。多实例之间端口不能一致

代码语言:javascript
复制
sed -i 's#8005#8011#;s#8080#8081#' tomcat8_1/conf/server.xml
sed -i 's#8005#8012#;s#8080#8082#' tomcat8_2/conf/server.xml
[root@web03 application]# diff tomcat8_1/conf/server.xml tomcat8_2/conf/server.xml
22c22
< <Server port="8011" shutdown="SHUTDOWN">
---
> <Server port="8012" shutdown="SHUTDOWN">
67c67
<          Define a non-SSL/TLS HTTP/1.1 Connector on port 8081
---
>          Define a non-SSL/TLS HTTP/1.1 Connector on port 8082
69c69
<     <Connector port="8081" protocol="HTTP/1.1"
---
>     <Connector port="8082" protocol="HTTP/1.1"
75c75
<                port="8081" protocol="HTTP/1.1"
---
>                port="8082" protocol="HTTP/1.1"

   将配置好的tomcat程序打包,以备之后使用

代码语言:javascript
复制
tar zcf muti_tomcat8.tar.gz ./tomcat8_1 ./tomcat8_2

启动tomcat多实例

代码语言:javascript
复制
/application/tomcat8_1/bin/startup.sh 
/application/tomcat8_2/bin/startup.sh

检查端口是否启动

代码语言:javascript
复制
[root@web03 tomcat8_1]# netstat -lntup |grep java
tcp6   0   0 127.0.0.1:8011    :::*    LISTEN   31906/java
tcp6   0   0 127.0.0.1:8012    :::*    LISTEN   31932/java
tcp6   0   0 :::8080           :::*    LISTEN   31812/java
tcp6   0   0 :::8081           :::*    LISTEN   31906/java
tcp6   0   0 :::8082           :::*    LISTEN   31932/java
tcp6   0   0 127.0.0.1:8005    :::*    LISTEN   31812/java
tcp6   0   0 :::8009           :::*    LISTEN   31812/java

将每个实例的网页进行区分

代码语言:javascript
复制
echo 8081 >>/application/tomcat8_1/webapps/ROOT/index.jsp 
echo 8082 >>/application/tomcat8_2/webapps/ROOT/index.jsp
2、在浏览器访问,进行测试

检查多实例的启动

http://10.0.0.17:8082

YHPbWQ.png
YHPbWQ.png

http://10.0.0.17:8081

YHPXyn.png
YHPXyn.png
8、tomcat反向代理集群
1、负载均衡器说明
代码语言:javascript
复制
[root@lb01 ~]# cat /etc/redhat-release 
CentOS release 6.9 (Final)
[root@lb01 ~]# uname -a
Linux lb01 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@lb01 ~]# getenforce 
Disabled
[root@lb01 ~]# /etc/init.d/iptables status
iptables: Firewall is not running.

负载均衡软件使用nginx,详情参照

http://www.cnblogs.com/clsn/p/7750615.html

2、配置负载均衡器

备份原配置文件

代码语言:javascript
复制
mv  /application/nginx/conf/nginx.conf{,.20171127}
    egrep -v '#|^$' /application/nginx/conf/nginx.conf.default  > /application/nginx/conf/nginx.conf

​ 配置文件内容

代码语言:javascript
复制
[root@lb01 ~]# cat /application/nginx/conf/nginx.conf
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    upstream web_pools {
        server 10.0.0.17:8081;
        server 10.0.0.17:8082;
    }

    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.jsp index.htm;
        proxy_pass http://web_pools;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

​ 配置完成后重启nginx服务

代码语言:javascript
复制
/application/nginx/sbin/nginx  -s stop 
/application/nginx/sbin/nginx
3、使用命令进行访问测试

使用curl 命令进行测试,tail进行关键字提取

代码语言:javascript
复制
[root@lb01 ~]# curl -s 10.0.0.5|tail -1
8081
[root@lb01 ~]# curl -s 10.0.0.5|tail -1
8082

使用curl 命令进行测试,awk进行关键字提取

代码语言:javascript
复制
[root@lb01 ~]# curl -s 10.0.0.5|awk 'END{print}'
8082
[root@lb01 ~]# curl -s 10.0.0.5|awk 'END{print}'
8081

使用curl 命令进行测试,sed进行关键字提取

代码语言:javascript
复制
[root@lb01 ~]# curl -s 10.0.0.5|sed -n '$p'
8082
[root@lb01 ~]# curl -s 10.0.0.5|sed -n '$p'
8081
4、在浏览器上进行访问测试
YHPjLq.png
YHPjLq.png
YHPxe0.png
YHPxe0.png

​ 建议使用google浏览器chrome 的隐身模式进行访问,使用ctrl+f5 进行强制刷新

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-03-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 6、WEB站点部署
    • 1、使用war包部署web站点
      • 2、自定义默认网站目录
        • 3、部署开源站点(jpress)
        • 7、Tomcat多实例配置
          • 1、复制程序文件
            • 2、在浏览器访问,进行测试
            • 8、tomcat反向代理集群
              • 1、负载均衡器说明
                • 2、配置负载均衡器
                  • 3、使用命令进行访问测试
                    • 4、在浏览器上进行访问测试
                    相关产品与服务
                    负载均衡
                    负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档