实操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 (刷新界面发生改变)

相关推荐
天下·第二2 小时前
【Nginx】负载均衡配置详解
运维·nginx·负载均衡
沫夕残雪3 小时前
Tomcat的安装与配置
java·tomcat
Hello.Reader3 小时前
洞悉 NGINX ngx_http_access_module基于 IP 的访问控制实战指南
tcp/ip·nginx·http
PWRJOY9 小时前
在 Ubuntu 24.04 系统上安装和管理 Nginx
linux·nginx·ubuntu
菠萝崽.15 小时前
安装docker,在docker上安装mysql,docker上安装nginx
java·mysql·nginx·docker·软件工程·springboot·开发
java1234_小锋1 天前
什么是WebSocket?NGINX如何支持WebSocket协议?
websocket·网络协议·nginx
佳腾_1 天前
【Web应用服务器_Tomcat】二、Tomcat 核心配置与集群搭建
java·前端·中间件·tomcat·web应用服务器
joke_xiaoli1 天前
tomcat Server 连接服务器 进展
java·服务器·tomcat
Hello.Reader1 天前
基于 Nginx 的 WebSocket 反向代理实践
运维·websocket·nginx
ak啊1 天前
Nginx 常见问题总结与解决
nginx