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

相关推荐
苹果醋31 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx
雨雪飘零2 小时前
Windows系统使用OpenSSL生成自签名证书
nginx·证书·openssl
yanwushu2 小时前
Xserver v1.4.2发布,支持自动重载 nginx 配置
mysql·nginx·php·个人开发·composer
向阳12183 小时前
Dubbo负载均衡
java·运维·负载均衡·dubbo
ajsbxi13 小时前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet
尢词1 天前
SpringMVC
java·spring·java-ee·tomcat·maven
清风百草1 天前
【04】【Maven项目热部署】将Maven项目热部署到远程tomcat服务器上
tomcat·maven项目热部署
JustCouvrir1 天前
macOS|前端工程部署到Nginx服务器
服务器·前端·nginx
AlbertS1 天前
使用 Let’s Encrypt 获取免费SSL证书
nginx·免费·centos7·ssl证书·let’s encrypt
航月1 天前
FTP、ISCSI、CHRONY、DNS、NFS、DOCKER、MARIADB、NGINX、PHP、CA各服务开启方法
nginx·docker·mariadb