Nginx+Tomcat负载均衡群集搭建步骤及流程是怎么样的
发表于:2025-02-13 作者:千家信息网编辑
千家信息网最后更新 2025年02月13日,下文给大家带来Nginx+Tomcat负载均衡群集搭建步骤及流程是怎么样的,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经
千家信息网最后更新 2025年02月13日Nginx+Tomcat负载均衡群集搭建步骤及流程是怎么样的
下文给大家带来Nginx+Tomcat负载均衡群集搭建步骤及流程是怎么样的,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经验来做一个解答。
Tomcat简介
- Tomcat最初是由Sun的软件构架师詹姆斯邓肯.戴维森开发
- 安装完Tomcat后安装路径下面的目录和文件,是使用或者配置Tomcat的重要文件
Tomcat重要目录
- bin:存放启动和关闭Tomcat脚本
- conf:存放Tomcat不同的配置文件
- doc:存放Tomcat文档
- lib/japser/common:存放Tomcat运行需要的库文件
- logs:存放Tomcat执行时的LOG文件
- src:存放Tomcat的源代码
- webapps:Tomcat的主要Web发布目录
- work:存放jsp编译后产生的class文件
Nginx应用
- Nginx是一款非常优秀的HTTP云服务器软件
- 支持高达50 000个并发连接数的响应
- 拥有强大的静态资源处理能力
- 运行稳定
- 内存、CPU等系统资源消耗非常低
- 目前很多大型网站都应用Nginx服务器作为后端网站程序的反向代理及负载均衡器,提升整个站点的负载并发能力
Nginx负载均衡实现原理
- Nginx实现负载均衡是通过反向代理来实现的
- 反向代理原理
Nginx配置反向代理的主要参数
- upstream服务池名{ }
- 配置后端服务器池,以提供响应数据
- proxy_pass http://服务池名
- 配置将访问请求转发给后端服务器池的服务器处理
Nginx+Tomcat负载均衡群集实验
实验环境
Nginx服务器IP地址:192.168.80.177Tomcat1服务器IP地址:192.168.80.151Tomcat2服务器IP地址:192.168.80.178client测试机
搭建负载均衡
- 在Tomcat1、Tomcat2服务器上安装配置Tomcat服务(Tomcat2上网页内容为accp其他配置一样)
[root@tomcat1 ~]# systemctl stop firewalld.service //关闭防火墙[root@tomcat1 ~]# mkdir /abc[root@tomcat1 ~]# mount.cifs //192.168.100.8/LNMP-C7 /abc/[root@tomcat1 ~]# cd /abc/tomcat/[root@tomcat1 tomcat]# tar zxvf jdk-8u91-linux-x64.tar.gz -C /usr/local/ //解压JDK[root@tomcat1 tomcat]# vim /etc/profile //配置环境变量...export JAVA_HOME=/usr/local/jdk1.8.0_91export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH[root@tomcat1 tomcat]# source /etc/profile //刷新配置文件[root@tomcat1 tomcat]# tar zxvf apache-tomcat-8.5.16.tar.gz -C /usr/local/ //解压[root@tomcat1 tomcat]# cd /usr/local/[root@tomcat1 local]# mv apache-tomcat-8.5.16/ tomcat[root@tomcat1 local]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/ //将启动和关闭脚本便于系统识别[root@tomcat1 local]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/[root@tomcat1 local]# mkdir -p /web/webapp1 //创建站点[root@tomcat1 local]# vim /web/webapp1/index.jsp //写入jsp网页内容<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
JSP test1 page <% out.println("Welcome KGC Web");%> //输出信息[root@tomcat1 local]# vim /usr/local/tomcat/conf/server.xml //修改Tomcat配置文件##添加站点信息 [root@tomcat1 ~]# startup.sh //启动服务 在Nginx服务器上安装配置Nginx服务
[root@nginx ~]# systemctl stop firewalld.service ##关闭防火墙[root@nginx ~]# setenforce 0[root@nginx ~]# yum install pcre-devel zlib-devel gcc gcc-c++ make -y ##安装环境必要组件[root@nginx ~]# mkdir /abc[root@nginx ~]# mount.cifs //192.168.100.3/LNMP-C7 /abc/ ##挂载Password for root@//192.168.100.3/LNMP-C7: [root@nginx ~]# cd /abc/[root@nginx abc]# tar zxvf nginx-1.12.2.tar.gz -C /usr/local/ ##解压[root@nginx abc]# useradd -M -s /sbin/nologin nginx ##创建系统用户[root@nginx abc]# cd /usr/local/nginx-1.12.2/[root@nginx nginx-1.12.2]# ./configure \ ##配置> --prefix=/usr/local/nginx \> --user=nginx \> --group=nginx \> --with-http_stub_status_module \> --with-http_gzip_static_module \> --with-http_flv_module [root@nginx nginx-1.12.2]# make && make install ##编译安装 [root@nginx nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf#keepalive_timeout 0; keepalive_timeout 65; #gzip on; upstream tomcat-server { #添加地址池 server 192.168.80.151:8080 weight=1; server 192.168.80.178:8080 weight=1; } server { listen 80;.....省略location / { root html; index index.html index.htm; proxy_pass http://tomcat-server; #添加代理,调用服务器地址池 }[root@nginx nginx-1.12.2]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ ##便于系统识别[root@nginx nginx-1.12.2]# nginx ##开启服务
- 使用client测试机访问nginx代理服务器
动静分离
- 在Nginx服务器上修改Nginx配置文件
[root@nginx nginx-1.12.2]# vim /etc/init.d/nginx //编写service启动脚本#!/bin/bash# chkconfig: - 99 20# description: Nginx Service Control ScriptPROG="/usr/local/nginx/sbin/nginx"PIDF="/usr/local/nginx/logs/nginx.pid"case "$1" instart) $PROG ;;stop) kill -s QUIT $(cat $PIDF) ;;restart) $0 stop $0 start ;;reload) kill -s HUP $(cat $PIDF) ;;*) echo "Usage: $0 {start|stop|restart|reload}" exit 1esacexit 0[root@nginx nginx-1.12.2]# chmod +x /etc/init.d/nginx [root@nginx nginx-1.12.2]# chkconfig --add nginx[root@nginx nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.confserver {...省略... location ~.*.jsp$ { //匹配jsp页面跳转代理服务器池 proxy_pass http://tomcat-server; proxy_set_header Host $host; } location / { root html/test; ##修改站点 index index.html index.htm; proxy_pass http://tomcat-server; }[root@nginx nginx-1.12.2]# vim /usr/local/nginx/html/index.html //编写静态网页
静态页面 静态页面
这是个静态页面
[root@nginx nginx-1.12.2]# service nginx stop ##关闭开启服务[root@nginx nginx-1.12.2]# service nginx start - 在Tomcat1,Tomcat2服务器上创建jsp动态页面
[root@tomcat1 ~]# mkdir /usr/local/tomcat/webapps/test[root@tomcat1 ~]# vim /usr/local/tomcat/webapps/test/index.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ page import="java.util.Date" %><%@ page import="java.text.SimpleDateFormat" %>
动态页面 动态页面1//在Tomcat2上修改为动态页面2//访问静态http://192.168.13.177/ //访问动态 http://192.168.13.177/test/index.jsp - 配置Nginx处理静态图片,Tomcat处理动态页面
- 分别在两台Tomcat服务器上配置
[root@tomcat1 ~]# vim /usr/local/tomcat/webapps/test/index.jsp
动态页面//添加页面图片 [root@tomcat01 local]# vim /usr/local/tomcat/conf/server.xml //在第149行下追加以下条目,
[root@tomcat1 test]# shutdown.sh //关闭重启[root@tomcat1 test]# startup.sh - 在Nginx服务器上修改Nginx配置文件
[root@nginx nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conflocation ~.*\.(gif|jpg|jpeg|png|bmp|swf|css)$ { root html/test;expires 30d;}[root@nginx nginx-1.12.2]# mkdir /usr/local/nginx/html/test[root@nginx nginx-1.12.2]# cp /abc/11.jpg /usr/local/nginx/html/test/[root@nginx html]# service nginx restart //重启服务
- 分别在两台Tomcat服务器上配置
- 使用client测试
看了以上关于Nginx+Tomcat负载均衡群集搭建步骤及流程是怎么样的,如果大家还有什么地方需要了解的可以在行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,技术工程师在行业内拥有十几年的经验了。官网链接www.yisu.com
服务
服务器
配置
页面
文件
均衡
动态
静态
代理
地址
站点
系统
处理
环境
目录
网页
脚本
测试
步骤
流程
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器管理心得
百度服务器安全端口怎么设置
数据描述语言与数据库管理系统
有网络但服务器连接失败
计算机网络技术专业书籍推荐
网络安全450字读后感
氚云数据库
上海家装软件开发公司
南开区网络安全局
迪庆州网络安全知识科普考试
中国汽车科技与工业互联网
学习软件开发要学哪几类
私人邮件服务器安全性
科概网络安全及其重要意义
食堂人脸就餐软件开发
软件开发平台有中文版吗
个服务器厂家管理口密码
合一网络技术有限公司信用代码
北京朝阳网络安全话剧失控的爱豆
阿里 服务器
数据库缓存怎么加
英特服务器 风扇
天龙八部游戏服务器进不去怎么办
聊天软件开发用什么语言
烽火通信软件开发笔试
软件开发部门的口号
数据库数据形式和数据类型举例
深圳项目管理软件开发
安徽通讯软件开发服务厂家现货
掌玩网络技术