关于Nginx+Tomcat负载均衡群集的实战详解
发表于:2024-11-15 作者:千家信息网编辑
千家信息网最后更新 2024年11月15日,下文给大家带来关于Nginx+Tomcat负载均衡群集的实战详解,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经验来做一个
千家信息网最后更新 2024年11月15日关于Nginx+Tomcat负载均衡群集的实战详解
下文给大家带来关于Nginx+Tomcat负载均衡群集的实战详解,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经验来做一个解答。
实验拓扑图
实验环境部署
云服务器角色 | IP地址 | 操作系统 |
---|---|---|
Nginx服务器 | 192.168.142.131 | centos 7 |
tomcat 01服务器 | 192.168.142.134 | centos 7 |
tomcat 02服务器 | 192.168.142.130 | centos 7 |
实验步骤
第一步:配置Nginx服务器
#安装环境[root@nginx ~]#yum install gcc gcc-c++ pcre-devel zlib-devel #添加Nginx管理用户[root@nginx ~]# useradd -M -s /sbin/nologin nginx#远程共享源码包[root@nginx ~]# smbclient -L //192.168.142.1[root@nginx ~]# mount.cifs //192.168.142.1/tomcat /mnt#解压源码包[root@nginx ~]# cd /mnt[root@nginx ~]# tar zxvf nginx-1.12.0.tar.gz -C /opt[root@nginx mnt]# cd /opt/nginx-1.12.0/#进行configure配置[root@nginx nginx-1.12.0]# ./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.0]# make && make install#创建软连接让系统识别nginx启动脚本[root@nginx nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ #开启服务[root@nginx nginx-1.12.0]# nginx[root@nginx nginx-1.12.0]# systemctl stop firewalld.service[root@nginx nginx-1.12.0]# setenforce 0#启动配置文件目录创建启动脚本[root@nginx nginx-1.12.0]# vim /etc/init.d/nginx #!/bin/bash# chkconfig: - 99 20# description: Nginx Service Control ScriptPROG="/usr/local/nginx/sbin/nginx"PIDF="/usr/local/nginx/logs/nginx.pid"case "$1" in start) $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.0]# chmod +x /etc/init.d/nginx#将nginx增加到service管理[root@nginx nginx-1.12.0]# chkconfig --add nginx#启动服务[root@nginx nginx-1.12.0]# service nginx start#查看服务端口状态[root@nginx nginx-1.12.0]# netstat -ntap | grep 80tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 42092/nginx: master #修改配置文件[root@nginx nginx-1.12.0]# vim /usr/local/nginx/conf/nginx.conf #gzip on; #追加以下四行条目,用以定义tomcat服务池并分配权重 upstream tomcat-server { server 192.168.142.134:8080 weight=1; server 192.168.142.130:8080 weight=1; } server { listen 80; server_name localhost; #追加以下四行条目,用以支持 location ~.*.jsp$ { proxy_pass http://tomcat-server; proxy_set_header Host $host; } #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; #追加以下一行条目,用以调用tomcat服务池资源 proxy_pass http://tomcat-server; } #追加以下四行条目,用以支持各类图片的缓存30天 location ~.*\.(gif|jpg|jpeg|png|bmp|swf|css)$ { root html/test; expires 30d; }#检查语法[root@nginx nginx-1.12.0]# nginx -tnginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful#重启服务,并查看服务端口状态[root@nginx nginx-1.12.0]# service nginx stop[root@nginx nginx-1.12.0]# service nginx start[root@nginx nginx-1.12.0]# netstat -ntap | grep nginxtcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 69680/nginx: master#创建站点目录[root@nginx nginx-1.12.0]# mkdir /usr/local/nginx/html/test#复制图片到站点目录中[root@nginx nginx-1.12.0]# cp /mnt/game.jpg /usr/local/nginx/html/test
第二步:配置Tomcat01服务器
#远程共享源码包[root@tomcat01 ~]# smbclient -L //192.168.142.1[root@tomcat01 ~]# mount.cifs //192.168.142.1/tomcat /mnt#解压源码包cd /mnt[root@tomcat01 mnt]# tar zxvf jdk-8u91-linux-x64.tar.gz -C /usr/local[root@tomcat01 mnt]# tar zxvf apache-tomcat-8.5.16.tar.gz -C /usr/local/#声明环境变量[root@tomcat01 mnt]# vim /etc/profileexport 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@tomcat01 mnt]# source /etc/profile[root@tomcat01 ~]# cd /usr/local[root@tomcat01 local]# mv apache-tomcat-8.5.16/ tomcat##创建tomcat启动脚本的软链接到系统目录中,方便系统识别[root@tomcat01 local]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/#创建tomcat关闭脚本的软链接到系统目录中,方便系统识别[root@tomcat01 local]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/#启动服务 [root@tomcat01 local]# startup.sh Using CATALINA_BASE: /usr/local/tomcatUsing CATALINA_HOME: /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME: /usr/local//jdk1.8.0_91/jreUsing CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jarTomcat started.#查看服务端口状态[root@tomcat01 local]# netstat -ntap | grep 8080tcp6 0 0 :::8080 :::* LISTEN 111655/java #创建站点目录[root@tomcat local]# mkdir /usr/local/tomcat/webapps/test#编辑站点首页内容[root@tomcat01 local]# 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" %> 动态网页 Welcom to Jiangsu
[root@tomcat01 local]# vim /usr/local/tomcat/conf/server.xml #在第149行下追加以下条目, #重启服务[root@tomcat01 local]# shutdown.sh [root@tomcat01 local]# startup.sh#关闭防火墙和安全功能[root@tomcat02 local]# systemctl stop firewalld.service [root@tomcat02 local]# setenforce 0
第三步:配置Tomcat02服务器,步骤和Tomcat01服务器一样
#编辑站点首页内容[root@tomcat01 local]# 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" %> 动态网页 Welcom to NanJing
第四步:使用客户机验证网页
以下网页内容不一样,是为了验证负载均衡群集的轮询机制,真实线网环境中网页内容是一样的!
看了以上关于Nginx+Tomcat负载均衡群集的实战详解,如果大家还有什么地方需要了解的可以在行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,技术工程师在行业内拥有十几年的经验了。官网链接www.yisu.com
服务
服务器
目录
系统
配置
条目
环境
网页
均衡
内容
源码
用以
站点
脚本
状态
端口
链接
四行
实验
实战
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
国家规定网络安全
南宁伟仁互联网科技公司
中国知网数据库论文检测
邮政学院网络技术学院
麒麟系统 access数据库
我国网络安全态势的状态
软件开发需要哪些科学领域
佛法网络安全
断网网络安全法
海康服务器64路分析并发
搞软件开发算不算科研
达梦数据库字符集查看
ci缓存数据库
专门处理计算机网络安全
青少年网络安全教育新闻稿
海南数据库空投箱批量定制
tb以下级别的数据库
数据库php设计
感性认识数据库技术
国家网络安全周活动策划
百视通机顶盒无法连接服务器
数据库调优书籍
服务器链路主备
佛法网络安全
投篮视频软件开发
网络安全法竞赛题库 判断题
中国网络技术有限公司支付宝
多维数据整合网络安全
蚌埠餐饮软件开发定制
医疗字段关系模型数据库