当前位置: 首页 > ai >正文

Nginx与Tomcat负载均衡集群配置指南

目录

一、资源清单

二、基础环境

三、安装配置Tomcat

四、安装配置Nginx


一、资源清单

主机

操作系统

IP地址

tomcat1

OpenEuler24.03

192.168.16.142

tomcat2

OpenEuler24.03

192.168.16.143

Nginx

OpenEuler24.03

192.168.16.144

二、基础环境

hostnamectl set-hostname tomcat1
hostnamectl set-hostname tomcat2
hostnamectl set-hostname nginx

三、安装配置Tomcat

1.安装依赖

dnf -y install tar
rpm -ivh jdk-8u102-linux-x64.rpm

2.解压并安装

tar xf apache-tomcat-9.0.8.tar.gz
mv apache-tomcat-9.0.8/ /usr/local/tomcat9

3.启动Tomcat

/usr/local/tomcat9/bin/startup.sh

4.访问测试

http://192.168.16.142:8080/
http://192.168.16.143:8080/

5.创建存放网页的文件

mkdir -pv /web/webapp1

6.建立网页测试文件

vi /web/webapp1/index.jsp<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <html>
<head>
<title>JSP test2 page</title> </head>
<body>
<% out.println("动态页面 2,http://www.test2.com") ;%> </body>
<body>
<div>动态页面的图片 2</div><br><img src="logo.png">
</body>
</html>

7.修改Tomcat的server.xml文件(162行后添加)

vi /usr/local/tomcat9/conf/server.xml<Context docBase="/web/webapp1" path="" reloadable="false" ></Context>

8.重启Tomcat

/usr/local/tomcat9/bin/shutdown.sh
/usr/local/tomcat9/bin/startup.sh

四、安装配置Nginx

1.安装Nginx

dnf install -y gcc make pcre-devel zlib-devel openssl-devel perl-ExtUtils-MakeMaker tar
useradd -M -s /sbin/nologin nginx 
tar zxf nginx-1.26.3.tar.gz
cd nginx-1.26.3 
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-pcre 
make && make install

2.配置Nginx.conf

vi /usr/local/nginx/conf/nginx.conf#(33行下添加)
upstream tomcat_server {server 192.168.16.142:8080 weight=1;server 192.168.16.143:8080 weight=1;}# 动态页面正则(48行下添加)
location ~ .*.jsp$ {
proxy_set_header HOST $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Client-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://tomcat_server;}# 静态图片正则
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { root /usr/local/nginx/html/img;expires 30d;}

3.创建静态文件目录并上传图片

mkdir /usr/local/nginx/html/img
mv /root/logo.png /usr/local/nginx/html/img/
ls /usr/local/nginx/html/img
logo.png

4.添加网页测试文件

vi /usr/local/nginx/html/index.html<!DOCTYPE html><html><head><meta http-equiv="content-type" content="text/html;charset=utf-8"><title>静态页面</title><style>body {width: 35em;margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;}</style></head><body><h1>静态页面</h1><p>这是个静态页面</p></body></html>

5.测试配置文件是否正确

/usr/local/nginx/sbin/nginx -t

6.启动Nginx服务

/usr/local/nginx/sbin/nginx

7.测试静态网页

8.测试负载均衡

a.更改tomcat1网页

vi /web/webapp1/index.jsp<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <html>
<head>
<title>JSP test2 page</title> </head>
<body>
<% out.println("动态页面 1,http://www.test1.com") ;%> </body>
<body>
<div>动态页面的图片 2</div><br><img src="logo.png">
</body>
</html>

b.测试

多次访问 http://192.168.16.144/index.jsp 应轮流显示来自tomcat1和tomcat2的响应

http://www.xdnf.cn/news/6269.html

相关文章:

  • IntelliJ IDEA 集成AI编程助手全解析:从Copilot到GPT-4o Mini的实践
  • 力扣.1471数组的k个最强值,力扣.1471数组的k个最强值力扣1576.替换所有的问号力扣1419.数青蛙​编辑力扣300.最长递增子序列
  • Spring框架核心技术深度解析:JDBC模板、模拟转账与事务管理
  • 【Vue】CSS3实现关键帧动画
  • 快速通关单链表秘籍
  • GPU与NPU异构计算任务划分算法研究:基于强化学习的Transformer负载均衡实践
  • Java实现MinIO上传PDF文件并配置浏览器在线打开及vue2上传页面
  • PCIe数据采集系统
  • 解决:npm install报错,reason: certificate has expired
  • 【python实用小脚本-63】每天花费2小时修复黑白照片,Python一键转换,节省90%时间(建议收藏)
  • 【hadoop】Flume的相关介绍
  • Trae - 国人Cursor的免费平替产品
  • idea经常卡顿解决办法
  • ctfshow权限维持
  • 城市扫街人文街头纪实胶片电影感Lr调色预设,DNG/手机适配滤镜!
  • 2025 Java 微信小程序根据code获取openid,二次code获取手机号【工具类】拿来就用
  • 力扣-46.全排列
  • 嵌入式培训之数据结构学习(三)gdb调试、单向链表练习、顺序表与链表对比
  • RPC协议及库介绍
  • 中国近代史1
  • promise的说明
  • STM32入门笔记(05):内部高速8Mhz时钟最大时钟可以设置 64 Mhz?如何修改system_stm32f10x.c里面的代码?
  • STM32F103_LL库+寄存器学习笔记23 - PWM波形输出及软件方式调整周期与占空比
  • PyQt5教程:QComboBox下拉列表框的全面解析与实战应用
  • 保持视频二维码不变,更新视频的内容
  • 300. 最长递增子序列
  • PPO算法:一种先进的强化学习策略
  • 深度剖析LLM的“大脑”:单层Transformer的思考模式探索
  • NetSuite CSV导入更新Item Fulfillment相关信息
  • 小白学习java第18天(上):spring