系统高可用与有罪推定论

最新IT圈最火的支付宝与携程,注定要将蓝翔神技与运维逆袭载入史册。无论故障的过程与真实原因如何,都足以让大家对整个生产系统的建设进行反思并加以检讨。

多年以来各设备厂商,解决方案都在强调自身系统可用有多高,可用达到n个9。而这些n个9的SLA承诺通常是在使用统计学上的概念,甚至于在配置了双机或集群的状态下,计算可用性直接将故障率直接相乘,即(1-(1-99%)*(1-99%))=99.99%。这样的算法对于实际工作来说,其实是无意义的。

系统出故障好比中彩票,谈论百分比毫无意义。中了的人就是中了,100%;没中就是没中,0%。中奖的人不会把奖金分给没中奖的人,同理,出故障的系统不会因为系统中的设备众多而减少故障处理时间,或因平摊设备故障而减少故障时间。

系统n个9的高可用是外企在推销产品时的传统促销手段,即如国外的司法上流行的无罪推定论,强调的是产品的有效性。然而,任何人都不能保证建设系统后不出故障,我们向客户推荐高可用、容灾系统解决方案就是为了将故障损失降低到最低。

故此,我们在向客户推荐高可用,容灾系统解决方案的时候应当抛弃传统SLA的n个9的概念,直接用有罪推定论,直接告诉客户,当你的系统故障后恢复需要多长的时间,如:

1.        硬件故障后更换备件所需要的时间。包括故障诊断时间,备件到场时间,以及备件现场更换时间等(可以想象偏远地区客户多么悲催);

2.        系统故障后恢复系统需要的时间。包括故障诊断时间,系统启动时间(虚拟机包括宿主机及虚拟机启动时间),双机切换时间,集群漂移时间,甚至于重新安装系统的时间等;

3.        应用故障后恢复应用需要的时间。包括故障诊断时间,应用启动时间,数据完整性校验时间,相关系统恢复时间等;

4.        不可抗力故障后恢复的时间。包括自然灾害,楼宇基础设施故障(风火水电),相关供应商故障(万能的挖掘机)等;

5.        人为故障后恢复的时间。包括黑客入侵,内部破坏,操作失误等引起的故障,甚至与法律法规类的伟大的墙等。

以上只是系统运行过程中可能遇到的故障大致分类,具体内容还需要大家进一步发掘。有人可能要说我是不是太悲观了?我说我是个乐观主义者,最大灾难不过一地的楼倒了,数据没了,只要世界还在,一切数据都可以重来。

“Tomorrowis another day.”

让我们抛弃n个9的SLA观念,用系统有罪推断论来建议客户吧,只有客户真正理解了故障所能引起的灾难性后果,才能珍视IT人员的价值,才能在系统建设之初就能选择更加合理的方案。

时间: 2025-01-31 10:02:22

系统高可用与有罪推定论的相关文章

系统高可用

讨论系统高可用时,我们在讨论什么? 系统高可用,或者说系统的可用性,在计算机领域是一个相当久远并且重要的概念.小到CPU芯片.内存.硬盘等硬件组件,大到支付宝.微信等日常互联网服务,在设计.开发.维护的时候,都离不开对它的考量.本文首先介绍跟系统可用性相关的关键概念,然后讨论高可用系统的评价指标. 系统和模块 一个系统的可用性,由组成这个系统的模块的可用性,以及模块之间的关系决定.模块可以看成一个系统,由更小的子模块组成,而系统可以看成一个模块,从而组成更大的系统.所以计算机系统的可用性,可以一

支付系统高可用架构设计实战

对于互联网应用和企业大型应用而言,多数都尽可能地要求做到7*24小时不间断运行,而要做到完全的不间断运行可以说“难于上青天”. 为此,对应用的可用性程度一般衡量标准有三个9到五个9. 对于一个功能和数据量不断增加的应用,要保持比较高的可用性并非易事.为了实现高可用,付钱拉从避免单点故障.保证应用自身的高可用.解决交易量增长等方面做了许多探索和实践. 在不考虑外部依赖系统突发故障,如网络问题.三方支付和银行的大面积不可用等情况下,付钱拉的服务能力可达99.999%. 本文重点讨论如何提高应用自身的

浅述实现系统高可用,常用的解决手段

所谓可用性,是指某系统能够提供正常服务的特性. 可用性的高低是使用不可用时间占总时间的比例来衡量.不可用时间是从故障发生到故障恢复的时间.比如,可用性 4 个 9 的系统(99.99%),它一年宕机时间不能超过53分钟(=365*24*60*(1-0.9999)).做到高可用系统,需要尽可能的降低故障发生的次数和减少故障持续的时间. 出现系统不可用的原因,一种是人为的,比如发布了有 bug 的代码.不规范的发布流程导致的宕机或者网站访问量过载造成的雪崩等:另一种则是非人为的,由于外部系统和环境的

Linux系统高可用集群软件之Keepalived

Keepalived 集群软件是一个基于VRRP协议来实现的LVS(四层协议)服务高可用方案,可以利用避免单节点故障.LVS服务需要有2台服务器运行Keepalived服务,一台为主服务器(MASTER),一台为备份服务器(BACKUP),但是对外只有一个虚拟IP,主服务器会发送特定的消息给备份服务器,当备份服务器收不到这个消息的时候,备份服务器认为主服务器宕机并会接管虚拟IP提供服务,从而保证了服务的高可用性. 1.环境说明 系统:Centos 6.5 64位 软件:Keepalived ip

关于系统高可用方面的理解

这方面涉及到的知识怎么说呢, 硬件偏多一点,软件少一点,一般的小公司部署完了,十年8年可能都不会改动一下. 所以一般公司的IT管理人员并不容易熟悉这块.尤其是现在,存储出问题了,厂商来人给你更换,服务器也是如此. 那么是不是很难呢,经过我一系列的了解,结果是,没什么难的.下面我简单扼要的总结一下: 高可用的意思就是尽可能保持系统的不间断使用的可靠性. 比如,你公司有一台服务器,需要24小时不停运转,那么有一天硬件坏了怎么办? 几个方面涉及: 硬件:服务器的硬盘,这是主存数据的地方,要有严格的备份

Linux系统高可用集群软件之HeartBeat

服务器环境: node1:192.168.1.100    10.0.0.1 node2:192.168.1.102    10.0.0.2 服务:apache 1.配置系统的网络环境 node1节点: (1)配置IP地址 [[email protected] yum.repos.d]# cd /etc/sysconfig/network-scripts/[[email protected] network-scripts]# vim ifcfg-eth0 DEVICE=eth0HWADDR=0

消息推送平台高可用实践(上)

本文来自网易云社区 作者:李弈远 消息推送平台为公司内部和第三方应用提供统一消息推送服务,支持广播.私信.组播.附件等多种消息推送方式,覆盖IOS.Android.PC.Web等多种终端,并根据应用特定需求制定各种解决方案. 平台支持水平扩展,支持C5000K高并发下的实时消息推送,通过动态负载均衡.隔离部署.LXC虚拟化和监控报警等多种机制确保系统 的高可用,通过高可用消息队列.自动重连和ACK等机制实现消息可靠性(QoS1),并提供SDK方便产品和应用接入. 本文将在介绍消息推送服务相关功能

坑系列 --- 高可用架构的银弹

0. 承上启下 之前那篇文章写出来以后我就觉得会有很多不同的意见,哈哈,那只代表我个人的意见啊,欢迎讨论. 先说说之前那一篇,我举例子举的OA系统,并不是说OA一定要这么设计,只是一种夸张的手法,为了说明后面的完全脱离了业务场景来进行技术架构的设计就是过度设计,并不是说OA系统太简单所以不能这么设计,另外,写PHP效率低也只是打个比方,并非贬低全世界最好的语言,很多人拿这两个来喷实在没必要. 好了,说今天这一篇的正题了,上一篇写了整体架构设计中的过度设计,这篇来说说高可用吧. 1. 迷信架构可以

秒级容灾,UCloud 内网高可用服务之三代架构演进

快节奏的生活,任何的业务异常 / 中断都是不能容忍的. 在无人化超市选购完成进行结账时,结账页面突然卡住,无法完成购买操作.这时该选择放弃手中的商品 or 继续等待? 酒店办理入住时,管理系统突然崩溃,无法查询预订记录,导致办理入住受到影响,酒店前台排起了长队-- 高可用与我们每个人都是息息相关的,在即将到来的双十一,更是对各个电商的业务可用性提出了更高的要求.对此,UCloud 提供基于内网 VIP 的高可用服务,内网 VIP 通过前后三代广播集群的设计演进,解决了复杂异构 Overlay 网