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.访问

第一次访问

刷新页面之后

这样就配置完成了

相关推荐
我命由我1234518 分钟前
ADB 之 logcat 极简小抄(过滤日志、保存日志到文件)
android·运维·adb·android studio·安卓·运维开发·android-studio
迷茫运维路21 分钟前
mysql5.7常用操作命令手册
运维·数据库
.生产的驴33 分钟前
Docker 消息队列RabbitMQ 安装延迟消息插件
运维·spring boot·后端·docker·容器·rabbitmq·java-rabbitmq
霸道流氓气质1 小时前
CentOS上使用Mosquitto实现Mqtt主题消息发布和订阅mqtt主题消息连同时间戳记录到文件
linux·运维·mqtt·centos·mosquitto
高危型1 小时前
CentOS 入门
linux·运维·centos
桃花岛主701 小时前
Nginx搭建直播服务器,并用rtmp,http-flv,hls三种模式拉流观看直播的流程
运维·服务器·nginx
醉卧雕龙舫 、1 小时前
Linux中安装maven
linux·运维·maven
鲸鱼姐2 小时前
在linux注册服务并开机启动springboot程序
linux·运维·服务器
jyan_敬言2 小时前
虚拟机centos_7 配置教程(镜像源、配置centos、静态ip地址、Finalshell远程操控使用)
linux·运维·服务器·c语言·数据结构·tcp/ip·centos
Licky132 小时前
Centos中dnf和yum区别对比
linux·运维·架构·centos·bash