前言
伴随着互联网的诞生和发展,高可用架构出现并不断完善。互联网早期许多系统只依赖于一台计算机来处理请求,所以经常出现「服务不可用」的情况。为了保持系统正常运行,出现将负载分配给能够满足需求的多台计算机的高可用架构。
工程师们反复使用并持续优化这些解决方案,以适应自己的需求。本文主要介绍高可用架构的演进及常用高可用架构优缺点及适用场景。
高可用性用来描述计算机系统或其组件在一段时间内连续运行的能力。政府、银行和其他合规监管行业通常需要数据计算和存储的高可用性,系统必须能够自动从服务器或组件故障中恢复。为了实现系统的可靠性,三个系统设计的原则可以用来实现高可用性:消除单点故障、可靠的故障切换、故障检测能力。在分布式系统中可以通过将多个冗余节点连接为一个集群来实现这一点,其中每个节点都能够进行故障检测和恢复。
高可用架构一般分为计算高可用和存储高可用,主要手段是数据和服务的冗余备份及失效转移。
过去24小时全网爆仓4909.39万美元:金色财经报道,数字货币全网合约爆仓数据显示,过去24小时全网爆仓4909.39万美元。其中比特币爆仓506.84万美元,以太坊爆仓474.98万美元。[2023/3/5 12:43:05]
计算高可用
计算高可用主要分为主备模式、主从模式、集群模式。三种模式都是通过计算模块冗余方式来规避单点故障的风险,不同的是三种方案故障检测及恢复方式不同,系统可用性也不一样。
主备计算高可用主备高可用架构任意时刻只有主机对外提供运算任务,备用机器根据运行状态分为冷备和温备。当系统出现故障时需要人为进行服务切换及故障恢复。此种架构实现方式最简单,主备之间不需要交互,不会为系统引入额外复杂度。但是此种方式主备服务无法无缝切换,可用性无法得到保证。
VanEck数字资产战略总监:美国关于加密货币的监管情况是混乱的:金色财经消息,纽约投资管理公司VanEck数字资产战略总监Gabor Gurbacs在社交媒体上表示,Binance上一些流动性最强的货币对(不包括Binance.US)是以USDT的形式交易的。CZ支持USDT是明智之举。与美国发行的稳定币相比,Tether对新兴市场的关注可能被全球Binance用户认为风险较小。Binance用户的双赢。美国关于加密货币业务的监管情况是混乱的,不友好的,不可靠的。难怪人们、企业和交易所会远离美国产品。不久前,拥有/使用美国的产品是一种骄傲,今天它更像是一种责任。
Tether让我想起了老派的美国商业方式。长期关注,可靠,致力于为每个用户和合作伙伴创造价值。它是美元在国际金融领域可能发生的最好的事情。[2023/2/17 12:13:53]
主备计算高可用
主从计算高可用
Harbor Protocol将于12月5日发放HARBOR空投:12月1日消息,Cosmos生态跨链Stablecoin协议Harbor Protocol宣布将于2022年12月5日起向符合条件的链和池的质押者和流动性提供者发放HARBOR空投。空投数量为1.5亿个枚,占HARBOR总供应量的15%。
空投分为两部分:前20%以HARBOR Token的形式空投,使用户能够参与 Harbor 协议的治理和工作;其余80%的Token以veHARBOR的形式空投,锁定期为4个月,完成任务后开始。[2022/12/1 21:16:25]
主从模式和主备模式区别是从机也要执行一些任务,任务调度器负责将任务分类并发送给主机或从机。当主机出现故障时,如果主机不能够自动恢复,则需要人工操作,将原来的从机升级为主机,增加新的机器作为从机,新的从机准备就绪后,任务分配器继续按照原有的设计策略分配任务。主从模式发挥了从机的运算性能,可以减轻主机的运算压力,但是需要加入任务调度功能,实现会复杂一些。
Core Scientific持有3,220万美元现金,或将于年底面临破产风险:金色财经报道,比特币上市矿商Core Scientific截至10月底,该公司持有3,220万美元现金和62枚比特币(97.5万美元)。Core Scientific在周二提交给美国证券交易委员会(sec)的第三季度财报中称,预计现有现金资源将在2022年底或更早耗尽。这家矿业公司正在与债权人就重组债务和筹集资金进行谈判。
文件显示,截至本季度末,这家矿商在其设施中运行23.2万台比特币机器,比特币自挖矿计算能力或哈希率为每秒13 EH/s,其他公司托管机器的哈希率为9.5 EH/s。这是全球哈希率的8.6%。
此前报道,知情人士表示,Core Scientific债券持有人与律师就可能的破产提供建议。(coindesk)[2022/11/22 7:57:14]
韩国对涉欺诈在逃的加密货币项目创始人发出逮捕令:9月15日消息,在对稳定币TerraUSD及其对应的数字币Luna的惊人崩溃进行调查之后,韩国检察官已经获得了对Terraform Labs首席执行官Do Kwon的逮捕令,逮捕令有效期为一年。Do Kwon被认为在新加坡,韩国检察官希望取消他的护照,并寻求国际刑警组织的协助来实施逮捕。据报道,韩国首尔南部地区检察官办公室最近获得了对Do Kwon和其他五人的逮捕令,其中包括Terraform的创始成员尼古拉斯-普拉蒂亚斯,所有这些人都被认为在新加坡。韩国检察官指控Kwon违反了资本市场法,检察官认为Terraform通过向投资者提供夸大或虚假的信息来抬高Luna的价格,实际上从事欺诈性交易。如果罪名成立,Kwon和其他人可能会被处以总额为其利润三至五倍的罚款或至少一年的监禁。(金十)[2022/9/15 6:58:05]
主从计算高可用集群计算高可用
集群模式是将服务器组合在一起以作为一个统一的系统对外提供服务,也称为故障转移集群,它们共享相同的存储但使用不同的网络。对于有负载均衡功能的集群每个节点具有相同的功能,因为它们可以运行它们所支持的主系统的相同工作负载。如果集群中的服务器出现故障,另一台服务器或节点可以立即接管,以确保集群支持的服务保持正常运行。使用高可用性集群有助于确保关键系统没有单点故障,并减少或消除停机时间。
高可用计算集群
一个高可用集群系统必须有一个精心设计的、预先设计好的负载均衡机制,以在集群节点之间分配运算任务。负载均衡器对运算节点进行持续的健康检查,以确保它们可以处理请求。负载均衡机制必须在节点故障的情况下指定确切的故障转移过程。
集群模式解决了故障检测、故障转移及故障修复的问题,能够最大化系统的可用性,但也引入了系统复杂度。在高可用性集群中必须防止的关键情况之一是“脑裂”。当所有私有内部连接同时被切断,但集群节点仍在运行时,就会发生“脑裂”。在这种情况下,集群的所有节点可能会错误地认为所有其他节点都已关闭,并尝试启动其他节点已经在运行的服务。对于同一服务的多个版本,所有这些版本都可能暴露给用户,并可能导致数据损坏,并且向一个HA集群添加过多的虚拟机和主机会导致负载平衡变得困难。
存储高可用
存储高可用通过数据复制,来实现存储冗余,进而实现高可用。存储高可用是系统设计的关键点及难点,需要保证系统的数据一致、可用、分区容忍。存储高可用常用的架构有主从模式和集群模式。
主从模式中,主机负责读写并定期复制数据给从机,从机仅承担读操作,可以减轻主节点的访问压力。一旦主机宕机,可以通过人工手段,将其中一个从节点切换为主节点。主从模式故障时需要人工干预,并且客户端需要感知主从关系,并将不同的操作发给不同的机器进行处理。在此模式下每个机器上存储的都是全量数据,但是单机的数据存储量总是有上限的,所以存在存储容量的限制,并且不容易扩容。和主从运算高可用类似,当主机出现故障时,如果主机不能够自动恢复,则需要人工操作,可用性无法得到保证。
主从高可用存储模式
集群模式由多个节点组成存储集群,每个节点负责存储部分数据,Client存储数据时,数据根据分片算法被路由到不同的存储节点。集群节点间运行共识算法,当有节点宕机时,共识算法会选举新的主节点并来调度集群的数据存储。基于共识复制的系统,写入被提议到一个节点,然后被复制到一定数量的其他节点。一旦大多数节点确认写入,就可以提交。它可以保证一致性,也可以提供高可用性。从节点可以用来读取数据,从而减少主节点的访问压力。
集群高可用存储模式
集群模式通常添加某种路由技术,将客户端定向到正确的站点来处理他们的请求。分片路由器按特定算法拆分数据,常用算法有取模、检索表、一致性哈希等,并将这些段分布在多个站点之间,每个节点可以视为一个独立的子集,针对子集,仍然需要保证高可用。分片可以在多台机器之间分配工作负载,提高吞吐量,并通过容忍更多的部分故障和消除单点故障来创造更大的弹性。
总结
在过去的几十年里,系统可用性架构取得了长足的进步,从主备模式、主从模式到高可用集群,架构师不断在CAP原则的基础上寻求适合自己应用场景解决方案。主从模式主要应用在需要快速写入的应用场景,集群模式适用于需要一致性的应用场景。现在很多系统服务都是在全球范围内部署,服务永远都不会停止,我们还在研究更好的可用性和更大规模的架构。
马耀耀
趣链科技数据网格实验室??BitXMesh后端开发工程师
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。