首页 > 其他分享 >第3章 高可用负载均衡集群规划

第3章 高可用负载均衡集群规划

时间:2023-04-16 16:36:00浏览次数:29  
标签:负载 系统 集群 均衡 均衡器 服务器 规划

作者:田逸(formyz)

 

开篇之初,先举几个反例,来说明事前规划的重要性。


案例一:某广告媒体公司,需要部署一套媒体播放系统,由一台应用服务器和一台数据库服务器组成,让人没想到的是,为了这两台服务器,花了几十万采购了一台网络端口超过96个的三层核心交换机。询问相关人员,这样配备是基于什么考虑?答“背板带宽大,速度快”。作者一脸愕然,是钱多怕花不掉,还是被供货商给左右了,不得而知。


案例二:某顶级地产商的官方网站,40几台物理服务器承载Web服务,每两台服务器运行相同的站点,前端部署一对物理负载均衡服务器,数据库为单机Oracle 10,整体架构图如图3-1所示。。看似要消灭单点故障,也舍得花钱,但不知道是什么机构规划这么一个半拉子高可用系统。要来了项目文档,落款为“某某律师事务所”。

 

第3章 高可用负载均衡集群规划_服务器

图3- 1


案例三:某顶级出版机构直属培训机构,上马一个在线教育平台,委托某知名外包公司进行规划、开发、部署。作者作为甲方的系统顾问,曾参与旁听外包方的方案讨论。系统单个电子教室同时支持10000人在线,根据课程数量,开启同等数量的电子教室,如果有10个科目,10个电子教室,同时在线最大人数10万。采用负载均衡集群架构,客户端与服务器端通过UDP协议通讯,无缓存,要求视频高清。作为列席者,没有发言权,心中琢磨,数万人同时在线,不采取P2P之类的技术,光BGP带宽资费,都可能让委托方很快破产。虽然采购了一堆服务器、网络设备,并租赁机柜将服务器进行托管,但项目最终却无法实施,彻底烂尾。

第3章 高可用负载均衡集群规划_服务器_02

因此,合理的规划,对于项目的实施、成本的支出、后期的维护,具有巨大的、正向的支撑作用。


3.1系统规划的目标

 

可用性:对外提供服务的系统,应该保持较高的可使用性、可访问性,对于重要的、核心的业务系统,设计更高可用性的系统。不能像某些机构的系统,人员下班系统也跟着下班,或者访问量徒增,系统就罢工。

 

技术可行性:可用现有的主流的系统或工具进行技术实现。像本章开篇“案例三”所规划的方案,以UDP协议做负载均衡、终端用户直接访问而不用P2P或CDN(内容分发网络Content Distribute Network)来做中间层,在技术上根本无法实现。


可扩展性:系统的访问量可能因某些原因(比如加强推广)急剧暴增,可在不停服务,不改变现有架构的情况下,在线扩展系统容量。反之,在访问量长期大幅度降低时,也要求能不停服务缩减容量。


高性价比:用较低的成本、较低的配置,通过技术手段,压榨设备,让其发挥出最高的性能。例如,用廉价的服务器做负载均衡器、做缓存服务(CDN),对于需要性能的应用比如数据库则采用高配服务器。


3.2 系统规划包括哪些内容

 

根据作者的经验,系统规划的主要内容包含但不限于:系统架构规划、选型规划、资源规划、实施规划等,接下来逐一进行介绍。


3.2.1 系统架构规划

 

系统规划指整个负载均衡集群的组成,各个组件之间的关联关系。为提高资源利用率,同一组负载均衡器可设计成多应用集群(以不同的VIP或者正则表达式来区分);或者在访问量大及应用比较多的场景,对应用进行拆分,部署多套负载均衡集群。


复用负载均衡器,指同一组负载均衡器转发多个应用,在可以承载所有负荷的情况下,可将负载分配在单一负载均衡,也可以将负载分摊,如图3-2所示。

第3章 高可用负载均衡集群规划_负载均衡_03

图3- 2


此类型的负载均衡复用,两个负载均衡皆处于使用状态,既保证了可靠性,又提高了资源利用率。

标签:负载,系统,集群,均衡,均衡器,服务器,规划
From: https://blog.51cto.com/sery/6193478

相关文章

  • Windows NLB(网络负载均衡)单播与多播
    WindowsNLB(网络负载均衡)是Microsoft在Windows2000Server开始在操作系统上提供的一种负载平衡技术。NLB使用一种分布算法将负载均衡分布到多台主机上,从而提高基于IP的关键型服务(例如Web、虚拟专用网络、流媒体、终端服务、代理等等)的可伸缩性和可用性,同时可检测主机故障......
  • SpringCloud架构之注册中心/负载均衡组件搭建重点步骤
    我的GitHub地址:https://github.com/hiders1/cloud-demoGitHub的使用见:https://www.cnblogs.com/jinjiyese153/p/6796668.htmlVSC不见的话参考:https://blog.csdn.net/Ericjim/article/details/129215479 Nacos服务注册中心下载安装:1:Window系统远程下载GitHub地址:https://gi......
  • Zookeeper介绍&集群部署
    一、Zookeeper简介Zookeeper是一个开源的分布式框架,可用于解决分布式系统中常见的命名服务、状态同步、配置中心、集群管理等问题。它具有如下特性:顺序一致性:从一个客户端发起的事务请求,最终都会严格按照其发起顺序被应用到Zookeeper中;原子性:所有事务请求的处理结果在整个集群中......
  • nginx自定义负载均衡及根据cpu运行自定义负载均衡
    转载请注明出处:1.nginx如何自定义负载均衡在Nginx中,可以通过配置文件自定义负载均衡策略。具体步骤如下:首先,在Nginx配置文件中定义一个upstream模块,并设置负载均衡策略和后端服务器列表,例如:upstreammyapp{serverbackend1.example.comweight=3;server......
  • 远程调用之负载均衡Ribbon-No instances available for localhost ribbon
    如果使用的是多个实例情况,远程调用就不能写地址,否则远程调用报Noinstancesavailableforlocalhostribbon而是应该写成服务的名称 ......
  • 将TiDB各服务组件混布到物理机集群和K8S环境
    前提条件K8S集群外的服务器节点和K8S集群内的Pod网络必须保持互通(本文采用将物理机节点加入K8S集群然后打污点并驱逐该服务器里边的pod的方式来实现)K8S机器外的服务器节点必须可以通过添加解析的方式来解析K8S集群内部Pod域名(具体见第一步)待迁移集群没有开启组件间TLS加密通信......
  • kubernets 集群证书过期解决方式
    查看证书过期时间kubeadmcertscheck-expiration解决方案手动更新证书#更新证书kubeadmcertsrenewall#重启相关服务dockerrestart$(dockerps|grep-E'kube-apiserver|kube-controller-manager|kube-scheduler|etcd'|awk'{print$1}')原文链接https://www.c......
  • 集群中几种session同步方案
    集群中session安全和同步是个最大的问题,下面是我收集到的几种session同步的方案,希望能通过分析其各自的优劣找出其适应的场景。1.客户端cookie加密这是我以前采用的方式,简单,高效。比较好的方法是自己采用cookie机制来实现一个session,在应用中使用此session实现。问题:session中数......
  • nginx集群和nginx主备不是同一个概念
    Nginx 集群搭建 https://huaweicloud.csdn.net/63560e7dd3efff3090b591dc.html?spm=1001.2101.3001.6650.14&utm_medium=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~activity-14-117463438-blog-127292749.235^v28^pc_relevant_default&dept......
  • kafka集群部署教程
    ####部署zookeeper集群1、先部署zookeeper集群一般是3个节点,安装zookeeper依赖java环境先安装jdk   yuminstalljava-1.8.0-openjdk-devel-y    java-version#查看jdk版本2、创建工作目录(3个节点都需要执行)   mkdir-p/usr/local/zookeeper  ......