高可用架构-计算高可用

embedded/2024/10/30 14:37:59/

计算高可用目标还是在硬件损坏时,计算任务能继续运行,所以本质上还是通过冗余来避免部分故障,毕竟你想一台服务器就能达到计算高可用,从物理层面来讲是基本不可能的

关键点

  1. 哪些服务器可以执行任务
    1. 类似集群,集群机都执行任务
    2. 主备:备机不能执行任务
  2. 任务如何重新执行
    1. 第一种是不做任何处理,只需要保证新的任务能分配到非故障机即可
    2. 第二种是设计一个任务管理器来管理需要执行的任务,当任务完成后,执行机器需要反馈任务执行情况,任务管理器决定是否需要将任务重新分配

1 主备

是计算高可用中最简单的架构,和存储高可用的主备复制架构类似,但是更简单,毕竟只用来计算不需要备份和复制数据,复杂度大大下降
计算高可用的主备模式适用于后台管理系统,这种使用人数不多的场景,不太适合在线业务

步骤

  1. 主机执行所有计算任务
  2. 主机故障时,任务分配器不会自动将计算任务发送给备机,系统此时是不可用的
  3. 主机如果能恢复,就继续使用,不能就人工操作,将备机升级为主机,再增加一个备机

通常主备的结构分为两种:冷备和温备

  • 冷备就是,配置好了,可以随时启动,且将任务分配其的任务发送方指定为这个启动的备机
  • 温备则是,已经启动了,只是不对外提供服务,需要人工来切换

冷备通常可以节省一定的能源,温备则能减少手工操作时间,推荐温备用

优点

  • 主备之间不需要交互,状态判断,并且倒换操作由人工操作
  • 操作简单
    缺点
  • 如果员工没有发现服务异常,那么可能耽误的时间会更久,且手工置换可能也会出错

2 主从

同样类似存储高可用的主从复制架构,任务分配器需要将任务进行分类,决定哪些任务给主机哪些给从机

步骤

  1. 正常情况,主机执行部分计算任务,备机执行部分计算任务
  2. 当主机故障时,任务分配器不会自动降级发给从机,而是继续给主机,无论是否执行成功
  3. 主机能恢复,则规则不变,不能恢复泽人工操作,从机升级,增加新从机
    优点
  • 从机也执行任务,没有浪费资源
    缺点
  • 任务需要根据任务类型分发,任务分配器的规则会比较复杂

3 对称集群

主备主从架构,是冗余服务器来到达高可用,并且需要人工主动切换(效率低,出错高,不及时)高可用集群方案可以通过系统自动完成切换操作

  • 高可用中的对称集群是指集群中的每个节点都是相同性质,角色相同,都可以执行任务
  • 对称集群通常叫做负载均衡集群
    步骤
  1. 任务分配器采取某种负载均衡策略将计算任务分配给集群中的不同节点
  2. 某个节点故障后,任务服务器则不会将任务继续分配给它
  3. 节点恢复后,则会继续分发任务
    注意
  • 轮询策略很简单,但是复杂度在于状态检测,节点的状态(网络状态,服务器状态,任务执行时间是否过长)
  • 状态检测一般是任务分配器和节点通过心跳包来传递信息来判断状态
  • 不同的业务要求有不同的状态判断条件

4 非对称集群

每个节点都有自己的角色,每个角色有不同的任务且承担不同的职测,以Master-Slave为例

步骤

  1. 集群会通过某个方式区分不同节点角色(Paxos选举算法,简单取所有节点中id最小的作为Master)
  2. 任务分配器将不同任务发给不同角色节点,计算任务A发给Master,任务B发给其他Slave
  3. 当某种角色的节点故障时,需要重新分配一个节点这个角色,比如Master宕掉后需要重新选举/指定一个Master,Slave如果没有强制需求可以直接剔除这个故障节点即可(没必要),恢复后重新加入集群
    复杂度
  • 任务分配更加复杂,需要将任务分类后分发给不同角色的节点
  • 角色分配策略复杂,需要Paxos这种算法来选举Leader

5 总结

  • 主备架构是计算高可用中最简单的架构,可以细分为冷备和温备
  • 计算高可用的主备架构适合内部管理系统和后台管理系统这种使用人数不多和频率不高的业务
  • 主从对比主备,没有浪费从机的资源,但设计更加复杂
  • 高可用计算集群根据节点间角色是否相同,分为对称集群非对称集群
  • 对称集群中每个节点都一样,都执行同样的任务
  • 非对称集群分为多个不同的角色,不同角色执行不同任务
  • 非对称集群相比对称集群(负载均衡集群)的复杂度体现在任务分配和角色分配(选举)策略上,会更加复杂

http://www.ppmy.cn/embedded/133632.html

相关文章

容器化核心快速入门

概述 物理机:好比是独立的大船,独立发动机,独立船舱。所有资源共用。运水果的同时就不能运鱼( 1964年)虚拟机:相当于把大船进行改造,把大船的资源进行独立的拆分,独立的部分都有单独…

MATLAB人脸考勤系统

MATLAB人脸考勤系统课题介绍 该课题为基于MATLAB平台的人脸识别系统。传统的人脸识别都是直接人头的比对,现实意义不大,没有一定的新意。该课题识别原理为:先采集待识别人员的人脸,进行训练,得到人脸特征值。测试的时…

前端开发-HTML

1.什么是前端 Wed 前端,用来直接给用户呈现一个一个的网页。 一个软件通常情况下是由 后端前端 完成。 2. 什么是 HTML 页面 HTML:超文本标记语言。 超文本:文本,声音,图片,视频,表格&#x…

Nginx处理并发连接

Nginx以其高效处理并发连接的能力而闻名,这主要归功于其事件驱动的架构和异步非阻塞I/O操作。 是Nginx处理并发连接的关键机制: 1. 事件驱动架构 Nginx采用事件驱动架构,这意味着它使用事件通知机制来响应网络事件,如新连接、读…

以太网交换安全:DHCP Snooping

一、DHCP Snooping的概念及功能 DHCP Snooping是一种用于增强网络中DHCP服务安全性的技术。以下是对以太网交换安全中的DHCP Snooping进行详细的介绍: 基本概述 定义目的:DHCP Snooping是一种网络安全技术,旨在防止未经授权的DHCP服务器在网…

【算法篇】图论类(1)(笔记)

目录 一、基础知识 1. 图的种类 (1)有向图 (2)无向图 (3)加权有向图 2. 图的构造 (1)邻接矩阵 (2)邻接表 3. 图的遍历方式 (1&#xff…

vue中el-table显示文本过长提示

1.el-table设置轻提示:show-overflow-tooltip“true“,改变轻提示宽度

GPU 服务器:高性能计算的核心驱动力

文章来源于百家号:GPU服务器厂家 GPU 服务器是为复杂计算任务而生的专业服务器,核心在于配备高性能 GPU。在深度学习、科学计算、视频编解码等领域实力强大 其优势明显,具有强大并行计算能力,可高效处理大量数据与复杂任务&#…