基于IIS的ARR负载均衡

基于NLB负载均衡

这两篇分别分ARR 和 NLB基本配置,下面我们讲讲,如何组合使用,搭配成高可用/可伸缩集群。

什么是高可用,可伸缩 ?

高可用:是指系统经过专门设计减少停工时间,保持服务高度可用。正常工作时间/单位时间(一般一年),比率达99.99%以上,也就是停工一小时。可以算高可用。

可伸缩:是指增加或减少硬件实现软件性能上的加大或减少的难易程度。

ARR集群不用担心,因为自身就有健康检查,如果子服务器有异常的话,反向代理不会将流量转化到相应的服务器上。

现在比较担心一个问题,如果代理服务器发生异常怎么办?代理服务器负责转化请求每日处理量极大,不排除发生故障的可能。ARR服务器容易发生单点故障,因此整ARR部署并不具有高可用性。

子服务器的数量其实受限于ARR服务器转发能力,也是就说可扩展性受限。

如何解决ARR单点故障实现高可用 ?

首先我们搭建两个ARR服务器。

192.168.99.8
192.168.99.10

在这两台服务器上面分别安装NLB,搭配NLB负载均衡。

注意主机优先级,目前设置为192.168.99.8为优先处理的服务器。

集群端口规则设置80端口。

设置为单一主机

也就说,两台ARR,只有一台在工作,也就是192.168.99.8,别一台192.168.99.10为故障转移服务器。部署完毕。

有人问,部署两个,应用上会不会冲突?

其实不会的,ARR是应用的第七层上,NLB是应用在第三层,IP层。也就是说,NLB处理完之后,才会转入到ARR进行处理。

 整体架构图

妈蛋,我还没有画好图,就把visio关了,右边的ARR服务器,应该右边移,线与线对应。看着老不爽了

展示效果

一共每秒150次请求。

三台内容服务器请求量总数为每秒150次。吻合。

ARR工作量,192.168.99.8正常工作,192.168.99.10备用。吻合

192.168.99.8 每秒请求150。吻合。

下面测试故障转移,突然关掉192.168.99.8,大概接近半分钟的时候,请求就转移到192.168.99.10来了。我们可以明显看到接近3000条请求失败。

测试达到预期效果,吻合。

如何解决ARR可伸缩性 ?

上面示例,如何搭建高可用。但是内容服务器依然受限于,ARR服务器转化能力。如何突破受限于一台服务器的转化能力转为多台ARR服务器共同处理这个转化,则就能实现内容服务器的可伸缩性。

答案非常简单。我们只需把NLB服务器集群,端口规则更改为

刚将两个ARR服务器同时激活,承受能力将增倍,可扩展更多的内容服务器。

为了安全起见,二台ARR应该增加到三台,如果有一个宕机,流量转接过来,可以保证余下两台ARR服务器在能力承受范围之内。随机服务器增多,依此类推。

以上方案己实现,高可用,可扩展。笔记到此啦。

windows NLB+ARR实现Web负载均衡高可用/可伸缩的更多相关文章

  1. Lvs+keepAlived实现负载均衡高可用集群(DR实现)

    第1章 LVS 简介 1.1 LVS介绍 LVS是Linux Virtual Server的简写,意为Linux虚拟服务器,是虚拟的服务器集群系统,可在UNIX/LINUX平台下实现负载均衡集群功能. ...

  2. Nginx+Keepalived负载均衡高可用

    Nginx+Keepalived负载均衡高可用方案: Nginx 使用平台:unix.linux.windows. 功能: A.www web服务  http 80 b.负载均衡(方向代理proxy) ...

  3. linux系统下对网站实施负载均衡+高可用集群需要考虑的几点

    随着linux系统的成熟和广泛普及,linux运维技术越来越受到企业的关注和追捧.在一些中小企业,尤其是牵涉到电子商务和电子广告类的网站,通常会要求作负载均衡和高可用的Linux集群方案. 那么如何实 ...

  4. 实现基于Haproxy+Keepalived负载均衡高可用架构

    1.项目介绍: 上上期我们实现了keepalived主从高可用集群网站架构,随着公司业务的发展,公司负载均衡服务已经实现四层负载均衡,但业务的复杂程度提升,公司要求把mobile手机站点作为单独的服务 ...

  5. Linux下"负载均衡+高可用"集群的考虑点 以及 高可用方案说明(Keepalive/Heartbeat)

    当下Linux运维技术越来越受到企业的关注和追捧, 在某些企业, 尤其是牵涉到电子商务和电子广告类的网站,通常会要求作负载均衡和高可用的Linux集群方案.那么如何实施Llinux集群架构,才能既有效 ...

  6. JAVAEE——宜立方商城03:Nginx负载均衡高可用、Keepalived+Nginx实现主备

    1 nginx负载均衡高可用 1.1 什么是负载均衡高可用 nginx作为负载均衡器,所有请求都到了nginx,可见nginx处于非常重点的位置,如果nginx服务器宕机后端web服务将无法提供服务, ...

  7. Nginx负载均衡高可用

    1.   Nginx负载均衡高可用 首先介绍一下Keepalived,它是一个高性能的服务器高可用或热备解决方案,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实 ...

  8. Keepalived+Nginx实现负载均衡高可用

    一.负载均衡高可用 Nginx作为负载均衡器,所有请求都到了Nginx,可见Nginx处于非常重点的位置,如果Nginx服务器宕机后端web服务将无法提供服务,影响严重. 为了避免负载均衡服务器的宕机 ...

  9. LVS+Keepalived-DR模式负载均衡高可用集群

    LVS+Keepalived DR模式负载均衡+高可用集群架构图 工作原理: Keepalived采用VRRP热备份协议实现Linux服务器的多机热备功能. VRRP,虚拟路由冗余协议,是针对路由器的 ...

随机推荐

  1. 自学Zabbix3.9.3-模板Templates-嵌套Nesting

    自学Zabbix3.9.3-模板Templates-嵌套Nesting 嵌套是一个模板包含一个或多个其他模板的方法.可以在一个"嵌套"模板中将一些模板链接在一起.嵌套的好处在于,只 ...

  2. 自学Python3.3-字符串格式化 作用域 递归

    一.字符串格式化 二.作用域 三.递归

  3. github not authorized eclipse 关于 代码不能提交到GitHub

    eclipse/myeclipse > menu > window > preferences > general > security > content > ...

  4. Mac中Eclipse安装和使用svn

    Eclipse版本为Neon Release (4.6.0) 安装svn 安装HomeBrew 在终端中输入 ruby -e "$(curl -fsSL https://raw.github ...

  5. ES6/7 异步编程学习笔记

    前言 在ES6的异步函数出现之前,Js实现异步编程只有settimeout.事件监听.回调函数等几种方法 settTmeout 这种方法常用于定时器与动画的功能,因为其本质上其实是浏览器的WebAPI ...

  6. SVO环境搭建

    我是装了双系统,实验OS:Ubuntu14.04 Installation: Plain CMake (No ROS) 首先,建立一个工作目录比如:workspace,然后把下面的需要的都在该目录下进 ...

  7. bzoj 2109: [Noi2010]Plane 航空管制

    Description 世博期间,上海的航空客运量大大超过了平时,随之而来的航空管制也频频 发生.最近,小X就因为航空管制,连续两次在机场被延误超过了两小时.对此, 小X表示很不满意. 在这次来烟台的 ...

  8. JMeter常见错误解决方法

    1.Windows 平台,双击 jmeter/bin 目录下 jmeter.bat 文件,jmeter 无法启动且报错如下: 此问题是没有配置 jdk 环境变量所致,配置好 jdk 环境变量即可. 2 ...

  9. Python学习_09_模块

    模块 模块是python中的最高组织单元,在物理层面上,模块以文件存储,模块的文件名就是模块的名字.py,每个模块都有自己的名称空间. python按照路径搜索来查找模块文件,在PYTHONPATH环 ...

  10. 安卓电量优化之AlarmManager使用全部解析

    版权声明:本文出自汪磊的博客,转载请务必注明出处. 一.AlarmManager概述 AlarmManager是安卓系统中一种系统级别的提示服务,可以在我们设定时间或者周期性的执行一个intent,这 ...