Nginx实现反向代理负载均衡实验

Nginx反向代理**-**负载均衡

nginx 是什么?
Nginx 是一个 高性能的 HTTP 和反向代理 web 服务器 ,同时也提供了 IMAP/POP3/SMTP 服务。因它的稳定 性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名!能够支持高达 50,000 个并发连接数 的响应。
Nginx 是一款 轻量级的 Web 服务器 / 反向代理服务器及电子邮件( IMAP/POP3 )代理服务器 ,在 BSDlike 协议下发行。其特点是占有内存少,并发能力强,事实上 nginx 的并发能力在同类型的网页服务器中表现较好。
ng 的作用

反向代理

正向代理: 正向代理就是在客户端配置代理服务器,通过代理服务器去进行互联网操作。例如 : 使用 VPN上网。
反向代理: 客户端发送请求到 反向代理 服务器,由反向代理服务器去选择目标服务器获取它的数据,在返回给客户端。此时反向代理服务器和目标服务器对外就是一台服务器,暴露的是代理服务器地址,隐藏了真实的服务器地址。 当代理为服务端服务时,该代理就是反向代理。

反向代理的作用**:**

1 、保证各种服务在内网的安全,防止 web 攻击,大型网站,通常将反向代理服务器作为公网访问
地址,各种服务则处于内网之中。
2 、负载均衡,反向代理服务器选择合适的服务进行请求,实现流量的负载均衡。
3 、限流,当流量实在过大时,机器无法负载的情况下,反向代理服务器可以限制一部分流量请
求服务(让请求失败)。
4 、数据预处理,处理请求的数据,让服务端能够识别,以及在服务端的响应数据中添加或者删
除一些数据等。
负载均衡 在多个服务器的情况下,我们将请求发放到各个服务器上,将原先请求集中到单个服务器的情况改为将请求发送到多个服务器上,将负载分发到不同的服务器,也就是负载均衡。( 可以给性能高的服务器多 发一些请求、性能低的少发一些请求)

实验准备:

windows电脑一台、VM Redhat虚拟机一台、阿里云服务器一台

实验要求:通过windows浏览器访问虚拟机时,能够访问到虚拟机的web服务和4云服务器的web服务。

一、首先确保虚拟机nginx服务开启,查看默认index.html文件是否存在

使用命令cd /usr/share/nginx/html/

二、修改虚拟机的Nginx配置文件

使用命令vim /etc/nginx/nginx.conf

server_name 设置为你要匹配的服务器域名或者ip,当客户端发送请求时,Nginx 将会根据 server_name 来选择合适的 server 块进行处理。可以设置多个域名,使用空格分隔开;

proxy_pass 用于配置反向代理。它用于将客户端的请求转发(代理)到指定的后端服务器,它将所有的请求代理到名为backend的upstream定义的一组后端服务器。

weight代表权重,可以自由更改;max_fails=2表示最多失败两次;fail_timeout=30s表示失败超时时间30s;

保存以下命令并退出

upstream backend{

server 192.168.89.2:80 weight=200 max_fails=2 fail_timeout=30s;

server 47.93.79.91:80 weight=100 max_fails=2 fail_timeout=30s;

}

server {

listen 80 default_server;

listen [::]:80 default_server;

server_name 192.168.89.2;

root /usr/share/nginx/html/;

Load configuration files for the default server block.

include /etc/nginx/default.d/*.conf;

location / {

proxy_pass http://backend;

}

error_page 404 /404.html;

location = /40x.html {

root /usr/share/nginx/html;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /usr/share/nginx/html;

}

三、尝试在windows上进行访问http://192.168.89.2

更改权重,重启nginx服务,再次刷新页面

这是虚拟机的web服务

相关推荐
晨非辰几秒前
【数据结构初阶系列】归并排序全透视:从算法原理全分析到源码实战应用
运维·c语言·数据结构·c++·人工智能·python·深度学习
llxxyy卢2 小时前
通关upload-labs(14-21)加分析源码
linux·运维·服务器
e***98574 小时前
Nginx搭建负载均衡
运维·nginx·负载均衡
电话交换机IPPBX-3CX4 小时前
电话交换机IPPBX-3CX的呼叫记录导出
运维·服务器·网络
C-DHEnry6 小时前
Linux 不小心挂载错磁盘导致无法启动系统咋办
linux·运维·服务器·雨云
JosieBook7 小时前
【若依框架】若依前后端分离项目怎么部署到服务器?
运维·服务器
q***7487 小时前
Nginx环境安装
运维·nginx
qinyia7 小时前
使用Wisdom SSH的AI多会话功能进行批量命令执行和跨服务器智能运维
运维·人工智能·ssh
f***68607 小时前
【Sql Server】sql server 2019设置远程访问,外网服务器需要设置好安全组入方向规则
运维·服务器·安全
安科瑞刘鸿鹏177 小时前
从监测到保护:ALP如何赋能企业配电柜安全升级?
运维·网络·安全