实操Nginx(七层代理)+Tomcat多实例部署,实现负载均衡和动静分离

目录

Tomcat多实例部署(192.168.17.27)

1.安装jdk,设置jdk的环境变量

2.安装tomcat在一台已经部署了tomcat的机器上复制tomcat的配置文件取名tomcat1

​编辑

编辑配置文件更改端口号,将端口号改为8081

[启动 tomcat, tomcat1](#启动 tomcat, tomcat1)

过滤出8080和8081端口

在单独部署一台(192.168.17.26)tomcat

[打开浏览器访问192.168.17.27:8080 8081(验证是否成功)](#打开浏览器访问192.168.17.27:8080 8081(验证是否成功))

在三台tomcat上面部署分别jsp动态页面

测试网页

[Nginx的七层代理 (192.168.17.30)](#Nginx的七层代理 (192.168.17.30))

在安装了nginx的基础上部署

更改配置文件

添加

动静分离

重启nginx服务

[测试访问 192.168.17.30/static/test.html](#测试访问 192.168.17.30/static/test.html)

192.168.17.30/test/qwe.jsp (刷新界面发生改变)


Tomcat多实例部署(192.168.17.27)

1.安装jdk,设置jdk的环境变量

bash 复制代码
vim /etc/profile.d/1.sh #在profile的子目录的下创建一个文件

export JAVA_HOME=/usr/local/jdk1.8.0_361
export JRE HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH


. /etc/profile   #运行

java -version  #查看版本

java version "1.8.0_361"      #更改成功版本号
Java(TM) SE Runtime Environment (build 1.8.0_361-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.361-b09, mixed mode)

2.安装tomcat在一台已经部署了tomcat的机器上复制tomcat的配置文件取名tomcat1

编辑配置文件更改端口号,将端口号改为8081

复制代码
vim /usr/local/tomcat1/conf/server.xml

启动 tomcat, tomcat1

bash 复制代码
cd /usr/local/tomcat/bin/  #启动tomcat
./startup.sh


 cd /usr/local/tomcat1/bin/   #启动tomcat1
./startup.sh

过滤出8080和8081端口

bash 复制代码
-bash-4.2# ss -natp |grep :8080
LISTEN     0      100         :::8080                    :::*                   users:(("java",pid=3557,fd=51))
-bash-4.2# ss -natp |grep :8081
LISTEN     0      100         :::8081                    :::*                   users:(("java",pid=45066,fd=51))
-bash-4.2# 

在单独部署一台(192.168.17.26)tomcat

打开浏览器访问192.168.17.27:8080 8081(验证是否成功)

在三台tomcat上面部署分别jsp动态页面

bash 复制代码
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test1 page</title>   #指定为 test1 页面
</head>
<body>
<% out.println("动态页面 1,http://www.test1.com");%>
</body>
</html>

192.168.7.27:8080

192.168.7.27:8081

测试网页

192.168.17.26:8080/test/qwe.jsp

192.168.17.27:8081/test/qwe.jsp

192.168.17.27:8080/test/qwe.jsp

Nginx的七层代理 (192.168.17.30)

在安装了nginx的基础上部署

更改配置文件

bash 复制代码
vim /usr/local/nginx/nginx.conf

添加

bash 复制代码
upstream tomcat_server{
        server 192.168.17.26:8080 weight=1;
        server 192.168.17.27:8081 weight=1;
        server 192.168.17.27:8080 weight=1;
}

动静分离

bash 复制代码
location ~ .*\.jsp$ {
        proxy_pass http://tomcat_server;
        proxy_set_header HOST $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        }

编辑一个静态网页

bash 复制代码
cd /usr/local/nginx/html
mkdir static

添加图片 用于测试

bash 复制代码
<html>
<body>
<h1>this is static web01</h1>
<img src="iu.jpeg"/>
</body>
</html>

重启nginx服务

测试访问 192.168.17.30/static/test.html

192.168.17.30/test/qwe.jsp (刷新界面发生改变)

相关推荐
静水楼台x3 小时前
nginx日志的一点理解
运维·nginx
欧先生^_^4 小时前
ingress-nginx 开启 Prometheus 监控 + Grafana 查看指标
nginx·grafana·prometheus
眠修5 小时前
Nginx + Tomcat负载均衡群集
nginx·tomcat·负载均衡
瘦皮猴10 小时前
golang context canceled异常排查
后端·nginx
eternal__day11 小时前
Spring Cloud 多机部署与负载均衡实战详解
java·spring boot·后端·spring cloud·负载均衡
hunter12714 小时前
Nginx 事件驱动理解
nginx
斯普信专业组1 天前
Tomcat全方位监控实施方案指南
java·tomcat
fydw_7151 天前
生产环境中安装和配置 Nginx 以部署 Flask 应用的详细指南
运维·nginx·flask
xzh1 天前
问题:Nginx client_body_temp_path 文件会删除吗,删除时机?
nginx·架构
dessler1 天前
代理服务器-LVS的3种模式与调度算法
运维·服务器·网络·算法·nginx·tomcat·lvs