运维开发网

服务器负载均衡nginx现静态和动态分离

运维开发网 https://www.qedev.com 2022-06-07 17:02 出处:网络
这篇文章主要为大家介绍了服务器的负载均衡nginx+tomcat实现动静分离的案例实施步骤以及环境详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

这篇文章主要为大家介绍了服务器的负载均衡nginx+tomcat实现动静分离的案例实施步骤以及环境详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

本文的实验内容是nginx+tomcat实现网站的动静分离功能。


案例环境

主机信息


架构图



案例实施:


部署tomcat服务器

在两台tomcat服务器上准备jdk和tomcat

Jdk下载

Tomcat下载

mkdir /toolscd /toolslsapache-tomcat-8.5.70.tar.gz jdk-8u181-Linux-x64.tar.gz

安装jdk

mkdir -p /app/javatar xf jdk-8u181-Linux-x64.tar.gz -C /app/ln -s /app/jdk1.8.0_181/ /app/jdkvim /etc/profileexport JAVA_HOME=/app/jdkexport CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jarexport PATH=$PATH:$JAVA_HOME/binsource /etc/profilejava -versionjava version "1.8.0_181"Java(TM) SE Runtime Environment (build 1.8.0_181-b13)Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

部署tomcat

tar xf apache-tomcat-8.5.70.tar.gz -C /appln -s /app/apache-tomcat-8.5.70/ /app/tomcat

启动tomcat并测试,tomcat默认启动端口8080。

/app/tomcat/bin/startup.shss -anpt | grep 8080LISTEN 0 100 [::]:8080 [::]:* users:(("java",pid=2375,fd=52))



请参见上一页,以显示部署成功。

创建tomcat01网站主页

rm -rf /app/tomcat/webapps/ROOT/*cat /app/tomcat/webapps/ROOT/index.jsp lt;%@ page language="java" import="java.util.*” pageEncoding="UTF-8"%gt;lt;htmlgt; lt;headgt; lt;titlegt;tomcat01lt;/titlegt; lt;/headgt; lt;bodygt; lt;% out.println("192.168.10.4,tomcat01");%gt; lt;img src="3333.jpg" /gt; lt;/bodygt;lt;/htmlgt;

创建womcat02网站主页

rm -rf /app/tomcat/webapps/ROOT/*cat /app/tomcat/webapps/ROOT/index.jsp lt;%@ page language="java" import="java.util.*“ pageEncoding="UTF-8"%gt;lt;htmlgt; lt;headgt; lt;titlegt;tomcat02lt;/titlegt; lt;/headgt; lt;bodygt; lt;% out.println("192.168.10.5,tomcat02");%gt; lt;img src="3333.jpg" /gt; lt;/bodygt;lt;/htmlgt;

两个tomcat服务器重新启动服务。

/app/tomcat/bin/shutdown.sh /app/tomcat/bin/startup.sh


部署nginx服务器

安装nginx依赖项

yum -y install gcc gcc-c++ autoconf pcre-devel make automake httpd-tools enopssl-devel

配置nginx软件源

cat /etc/yum.repos.d/nginx.repo [nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=1enabled=1gpgkey=https://nginx.org/keys/nginx_signing.keymodule_hotfixes=true

安装nginx服务并启动它

yum clean allyum makecacheyum -y install nginxsystemctl enable --now nginx

yum安装的nginx已经启用了概要分离功能,所以我们使用默认的概要。

cat /etc/nginx/nginx.confinclude /etc/nginx/conf.d/*.conf;# 修改默认配置文件vim /etc/nginx/conf.d/default.confserver { listen 80; server_name 192.168.10.3;

创建网站主页

cd /usr/share/nginx/html/# 准备一张图片ls3333.jpg 50x.html index.html# 配置站点首页vim index.htmllt;!DOCTYPE htmlgt;lt;htmlgt;lt;headgt;lt;titlegt;Welcome to nginx!lt;/titlegt;lt;stylegt; body { width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sans-serif; }lt;/stylegt;lt;/headgt;lt;bodygt; lt;img src="3333.jpg" /gt;lt;/bodygt;lt;/htmlgt;

重新启动nginx服务

systemctl reload nginx

哦,照片。



部署nginx-lb服务器

安装步骤与nginx01的前三步相同。

创建负载平衡配置文件

vim /etc/nginx/conf.d/proxy.confupstream tomcat {server 192.168.10.4:8080;server 192.168.10.5:8080;}upstream static {server 192.168.10.3:80;}server {listen 80;server_name 192.168.10.2;location / {proxy_pass http://tomcat;}location ~* .*\.(png|gif|jpg)$ {proxy_pass http://static;}}

重新启动nginx服务

nginx -tnginx: the configuration file /etc/nginx/nginx.conf syntax is oknginx: configuration file /etc/nginx/nginx.conf test is successfulsystemctl reload nginx

原则上默认会访问tomcat后端服务器,但是当网页中有静态图片时会在静态后端访问。

测试:达到负载均衡和动静分离的效果。



以上是服务器负载均衡nginx+tomcat实现静态和动态分离的细节。更多关于负载均衡nginx+tomcat的动静分离

0

精彩评论

暂无评论...
验证码 换一张
取 消