Nginx配置负载均衡

什么是负载均衡

把之前发送到一台服务器上的请求分发到多个服务器上 进行协同工作

前言

配置负载均衡至少需要准备三台虚拟机 其中一台虚拟机作为主虚拟机配置负载均衡进行分配,剩下两个虚拟机里面配置启动一个springboot项目,正常情况下剩下的两台虚拟机除了ip地址以外其余完全一样,我这里对项目进行了一点小小的改变便于分辨

一. Nginx使用服务启动

配置nginx快速启动,这里跟本章内容没有关系,不需要可直接跳过从 二 开始

1.创建nginx.service文件

切换到/lib/systemd/system/目录

创建命令

vim nginx.service

2.添加如下内容

在新建的nginx.service里面添加如下内容

⚠️注意 下方路径不一定跟我一样 务必使用自己的路径

复制代码
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/opt/nginx/nginxserver/sbin/nginx  -c /opt/nginx/nginxserver/conf/nginx.conf
ExecReload=/opt/nginx/nginxserver/sbin/nginx -s  reload
ExecStop=/opt/nginx/nginxserver/sbin/nginx  -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target

3. 命令

保存之后在控制台输入下方命令使配置生效

systemctl daemon-reload

之后使用之前的命令 找到nginx所在位置 先关闭nginx

nginx -s stop

然后使用配置完之后的命令启动

systemctl start nginx

查看状态

systemctl status nginx

4.常用命令

配置之后需要使文件生效

systemctl daemon-reload

退出并保存文件,执行systemctl enable nginx.service使nginx开机启动

#开机自启动

systemctl enable nginx.service

#停止开机自启动

systemctl disable nginx.service

#查询当前状态

systemctl status nginx.service

#启动服务

systemctl start nginx.service

#重新启动服务

systemctl restart nginx.service

#停止服务

systemctl stop nginx.service

#重新加载配置

systemctl reload nginx.service

二. 克隆虚拟机

首先准备工作,准备至少三台虚拟机,一个配置好的虚拟机,剩下两个建立副本修改ip

1.克隆虚拟机

  1. 关闭虚拟机ContOS 7 001

  2. 右键虚拟机------>管理------>克隆------>下一步------>下一步------>创建完整的克隆------>修改虚拟机的名称和安装路径------>完成

2.修改ip地址

因为配置负载均衡需要使用三台服务器,所以服务器的ip不能重复,下面开始更改ip

命令:

⚠️注意 复制或者看着输入的时候 vim /etc/sysconfig/network-scripts/ifcfg-ens到这里按tab键因为后面这两个XX你或许跟我会不太一样

vim /etc/sysconfig/network-scripts/ifcfg-ensXX

进来之后更改这个IPADDR即可然后重启虚拟机就更改完毕了

重新连接之后查看ip会发现更改成功就行了

3.克隆第二个虚拟机

同上⬆️⬆️

三. 配置

这里就是我所有的虚拟机,下面会在69这个虚拟机的nginx.conf配置文件里面将70 96配置到里面,在70和96里面分别运行两个项目,正常情况这两个项目是一样的,便于分辨我对这两个的数据库进行了一些修改

1.配置70 96 虚拟机

70 96 这两个虚拟机不需要进行任何的配置 只需要将打包好的jar包上传进来之后运行进行访问测试即可

我这里是用的是这两个打包好的springboot项目(自行准备或者私我问我要)

2.启动测试 70 96 虚拟机

3.对69服务器进行负载均衡配置

配置方向代理

4.访问

第一次访问

刷新页面之后

这样就配置完成了

相关推荐
chxii34 分钟前
Nginx 正则 location 指令匹配客户端请求的 URI
前端·nginx
qing2222222235 分钟前
Linux:/var/log/journal 路径下文件不断增加导致根目录磁盘爆满
linux·运维·前端
lwx91485237 分钟前
Linux-后台运行操作符&
linux·运维·服务器
mounter62539 分钟前
深度解析 Linux 内核 devlink:从硬件控制到跨功能速率调度的演进
linux·运维·服务器·网络·内核
似水এ᭄往昔44 分钟前
【Linux】--进程状态
linux·运维·服务器
小跘an吻纸44 分钟前
linux系统搭建hadoop环境
linux·运维·hadoop
石像鬼₧魂石1 小时前
ARL(资产灯塔)从 Docker 安装到部署启动 完整详细流程(复习专用)
运维·docker·容器
IMPYLH1 小时前
Linux 的 id 命令
linux·运维·服务器·bash
xlq223221 小时前
37 内核与用户_信号
linux·运维·服务器
kaico20181 小时前
Jenkins Shared Library 开发
运维·jenkins