IIS通过ARR实现负载均衡

一、实现整体方式介绍

项目中部署在windows服务器上的项目,需要部署负载均衡,本来想用nginx来配置的,奈何iis上有几个项目,把80端口和443端口占用了,nginx就用不了了(因为通过域名访问的,必须要用80和443端口),只能通过IIS的方式实现了。

这里用2个服务在一台机器上负载来做演示,2个服务+一个代理我们需要建3个网站

127.0.0.1:8050 (代理网站,客户端访问的地址,用来绑定访问的域名和端口的)

127.0.0.1:8051(负载的服务1,代理网站会转发到这里来)

127.0.0.1:8052(负载的服务2,代理网站会转发到这里来)

二、配置负载均衡服务

1、首先需要安装ARR和URL重写2个IIS的功能

这里安装包上传到了网盘。https://pan.baidu.com/s/10BZkDEuSXu_9UWmga9NFbA?pwd=loie

安装完后,我们的服务器就多了这两个功能了,如果负载均衡是多台服务器的,只需要代理那台安装就可以了。

2、把前面3个网站先准备好

先创建网站proxy,指向一个空文件夹,绑定端口8050

为了防止出一些问题,代理的应用程序池设置回收时间为0即不回收

再创建一个web1绑定8051,一个web2绑定8052,指向的文件夹为网站的文件夹,这里只在文件夹里放一个index.html,里面就一段文字区分。

3、上面3个可以访问的站点都创建好了,下面创建负载的服务器场

下一步如果弹出是否自动创建url 重写规则,选否,后面我们再手动创建,不然全部端口的请求都会转发到这里的负载上来,我们实际是只需要转发8050端口的请求到负载上就行了。

在创建的Server中取消缓存,不然访问同请求地址会直接缓存返回,不经过站点

还可以配置站点健康检查

其它一些功能

三、把请求转发到负载均衡器

创建URL重写规则,把代理站端口的请求转发到上面配置的负载均衡器

条件处,如果用的是域名的且http和https都使用的可以用任意匹配,然后,添加

输入:{HTTP_HOST}:{SERVER_PORT} 模式:^test.fadmescloud.com:80$

输入:{HTTP_HOST}:{SERVER_PORT} 模式:^test.fadmescloud.com:443$

到这里就可以了,访问8050端口,会转发到负载的站点8051和8052

相关推荐
极目云瞻10 小时前
负载均衡ADC替换(三):A10 Thunder ADC 到深信服AD
运维·负载均衡·iphone
nVisual2 天前
数据中心机柜负载均衡与三相相位监控方案
运维·网络·负载均衡·数据中心布线·综合布线管理软件
CodexDave3 天前
MySQL事务隔离级别与MVCC机制解析
前端·数据库·mysql·nginx·性能优化·负载均衡
Thanks_ks4 天前
深入理解一致性 Hash 算法:从理论到虚拟节点的工程实践
负载均衡·缓存雪崩·go语言·一致性hash·分布式系统·数据倾斜·虚拟节点
名字还没想好☜5 天前
Nginx 反向代理与负载均衡配置实战
运维·nginx·负载均衡
qetfw7 天前
CentOS 7 搭建 LVS + Keepalived 高可用负载均衡
linux·centos·负载均衡·lvs
遇见小修修7 天前
⚠键盘失灵?5 步自查,不用花钱换新键盘
运维·服务器·数据库·计算机外设·电脑·负载均衡
云飞云共享云桌面8 天前
河北钣金工厂10个solidworks设计共享一台高性能服务器的云桌面方案
运维·服务器·3d·自动化·负载均衡·制造
章老师说11 天前
BFE v1.8.3 正式发布:AI网关能力再升级,企业级七层负载均衡持续进化
运维·人工智能·负载均衡
m0_5648768411 天前
没有公网IP的情况下,怎么进行远程连接两个电脑
服务器·tcp/ip·负载均衡