为什么说云主机比物理机故障率更低?

简介:

引言

很多朋友对云平台可用性有所担心,认为用物理机更加放心。今天我想就这个话题抛出个人看法。希望对大家有参考意义。先抛出结论:

从业务程序的角度,云主机的可用性可以做到比物理机高,即故障率更低(可用性和故障率接近但不是一个概念,为了便于阐述,下面只讨论故障率)。

我见过很多客户抱怨云主机的故障率。同时,我也见过并且帮好几个使用物理机的客户解决问题:

他们没有专业团队及大规模环境,对于复杂点的软硬件故障几乎束手无策,有时甚至解决的过程把小问题变成大问题。

这也是我今天分享这个话题的动力。下面进入正题,下图是云主机和物理机软硬件层次对比:

为什么说云主机比物理机故障率更低?

影响云主机故障率的主要因素有:

  • 服务器硬件质量
  • 宿主机内核
  • 虚拟化层(KVM+QEMU或Xen)
  • Linux内核(承载业务程序)

影响物理机故障率的主要因素有:

  • 服务器硬件质量
  • Linux 内核(承载业务程序)

从上面的对比看,云主机比物理机故障率貌似要高,因为虚拟化层和宿主机内核非常复杂,引入额外的故障率。这是直觉,而且很有道理:

AWS 去年就因为虚拟化层内核的安全漏洞大规模重启了物理机,多数AWS 用户受影响。虚拟化层和宿主机内核的BUG 也会同样造成宕机及重启。

那为什么还说云主机故障率可以低于物理机呢?

备注:这里我是从终端用户的角度看的,“从厂商购买的”物理机,来对比“从云平台购买的”云主机。

原因在于:简单来说,云平台厂商往往管理几万几十万台物理服务器,并有比较专业的基础运维团队和内核团队,可以在故障率上做大量的工作,以达成这样的效果:

  1. 虚拟化层和宿主机内核的故障率接近0。这两层是内核,通过内核优化来达到;
  2. 服务器硬件质量可以不断提升;
  3. 承载业务程序的Linux内核,云平台可以帮助用户进行维护。并解决BUG,修复安全漏洞等。

有人会说,我自己购买的物理机也能做上述优化,效果比云主机更好。 真的是这样的么?现实情况是:

绝大部分公司管理的服务器数量不多,不足以建立相应的团队;同时因为服务器数量少(比如不到万台),做软硬件优化的环境不理想。

下面就上述要点展开。

虚拟化层和宿主机内核的故障率如何降低?

这主要通过自主掌控虚拟化层和宿主机内核,这整套内核来实现。

1. 自主维护Linux内核

商业Linux发行版(如RHEL6.X)的内核其实有不少BUG,因为内核太庞大、太复杂,BUG 修之不尽而且不断涌现,只要内核有人在改动,更多的BUG就还在路上。

但我们自己维护的Linux内核,我们可以迅速修复并应用进实际环境,不像商业Linux要等待较长的发布周期。

我们还可以预先研究别人犯过的错误,把更新补丁打入现在的内核;还可以屏蔽不必要的特性和改动避免BUG的引入。

简单讲,自主维护内核很灵活,最终质量不低于商业Linux发行版。国内有海量服务器的公司如腾讯和阿里都运行自主维护的Linux内核。

2. 免重启热补丁技术

这是指通过二进制指令修改的方式修改Linux内核达到修复的目的。

结合自主维护Linux内核,如果发现了BUG并制作修复补丁后,可以免重启应用到生产环境的Linux内核里。

这点目前主流Linux厂商不提供。但云平台厂商可以自己做。

3. 热迁移技术

特殊情况下的热迁移,可规避尚未完全定位的内核问题。

这三点的综合效果,使得某些云厂商,因为内核原因造成的宕机低到可以忽略。几万台服务器半年可以减少到一两次。

可能有些早期用户应该比较有感觉,几年软件宕机不少,给客户推送的故障报告不时就和内核有关,但经过一年半载的工作后,现在几乎没有了。

服务器硬件质量如何提升?

服务器硬件故障率的影响因素有厂商品牌、机型、服务器运行时间、以及部件型号的故障率。

这里的工作需要海量服务器来做,比如上万台才有意义,而几百上千台意义不大。

这里有一张图,体现我们可以主动采取部分措施。

为什么说云主机比物理机故障率更低?

1. 服务器故障率和厂商机型关系密切

我们可以监控各厂商机型的故障率,主动下架比较差的,从而提升总体质量。

一般来说,小厂的服务器故障率会高一些,但大厂即使DELL、联想的个别机型也会有较高故障率。

这主要和机型设计和生产质量管控有关,就不阐述了。我们能做的是选择故障率低的厂商和机型。

2. 服务器运行时间久了,故障率会随之提升

对于云平台厂商,可以监控这一切故障发生前的征兆,并主动采取措施,通过热迁移手段避免云主机受影响。

3. 硬件宕机和部件缺陷关系很大

我们的统计发现,部件种类里,硬盘故障故障率最高,其次内存硬件、RAID卡等。

对于硬盘故障,可以通过RAID方式规避。对于内存硬件,可以通过内存故障隔离等内核手段,大幅度减少其硬件故障造成的宕机及影响。

总的来讲,通过上述这些工作,云平台厂商可以让服务器硬件故障率逐步降低。其实,可以做的更多,篇幅原因就不讲了。而这样的工作,对于没有海量环境的公司是很难做的,效果也不佳。

另外,云平台厂商可以替用户修复云主机内核的BUG和安全漏洞,降低内核故障率。

我们在这方面做了一些工作,内核版本会及时更新,关键漏洞会提供免重启热补丁修复包。

观点总结

简要总结一下本文的主要观点:

  1. 云主机相比物理机,虚拟化层和宿主机内核的额外复杂性及故障率可以被优化至接近0即可以忽略。
  2. 服务器硬件故障,云平台可以不断降低其故障率,主要手段通过内核隔离硬件故障、热迁移规避故障隐患,以及监控故障率并主动下架不良厂商机型等。

为什么说云主机比物理机故障率更低?

上述这些工作都需要非常专业的运维团队和内核团队才能实施,如果没有足够大的服务器数量是很难开展的。

而大型云厂商往往管理几万、几十万服务器,因此具备这样的条件。也因此,云主机故障率能低于物理机(当然,如果什么都不做,云主机故障率一定是高于物理机的)。

如何一起愉快地发展

“高效运维”公众号(如下二维码)值得您的关注,作为高效运维系列微信群的唯一官方公众号,每周发表多篇干货满满的原创好文:来自于系列群的讨论精华、运维讲坛线上精彩分享及群友原创。“高效运维”也是互联网专栏《高效运维最佳实践》及运维2.0官方公众号。

提示:目前高效运维两个微信主群仅有少量珍贵席位,如您愿意,可添加萧田国个人微信号 xiaotianguo 为好友,进行申请;或申请加入技术交流群(技术讨论为主,没主群那么多规矩,更热闹)。


本文作者:佚名

来源:51CTO

相关文章
|
消息中间件 存储 运维
浅析阿里《云原生架构白皮书》
提前看了《云原生架构白皮书》一直想着要写点东西,拖延来去[《白皮书》](https://developer.aliyun.com/topic/cn-architecture-paper)已经正式发布2天了,我还迟迟没有动手。没动手的一方面原因是我的懒癌症又犯了;另一个原因是《白皮书》覆盖面之广,基本触及到云原生的方方面面,而我在云原生方面的知识储备不足以支撑我写出一篇好文。
6663 0
浅析阿里《云原生架构白皮书》
|
存储 XML JSON
开集目标检测-标签提示目标检测大模型(吊打YOLO系列-自动化检测标注)
开集目标检测-标签提示目标检测大模型(吊打YOLO系列-自动化检测标注)
|
消息中间件 Java API
面试官:如何实现链式调用?
面试官:如何实现链式调用?
1156 0
|
数据采集 存储 人工智能
141_模型更新:在线学习策略 - 焦点在增量微调的独特无中断部署
在大语言模型(LLM)的实际生产环境中,模型更新是维持服务质量和持续改进的关键环节。随着业务需求的演变、数据分布的变化以及模型能力的提升,如何高效、安全地更新已部署的LLM成为技术团队面临的重要挑战。传统的全量模型替换方法往往伴随着服务中断风险、资源消耗大以及可能的性能波动等问题。为此,增量微调技术作为一种轻量级的模型更新策略,正逐渐成为2025年LLM部署领域的主流选择。
926 9
|
数据安全/隐私保护 Windows
深度剖析:PDF 工具箱功能,编辑器操作及页面 / 图像提取技巧
PDF24 Tools是一款德国开发的免费PDF工具箱,18年始终免费,支持网页与Windows客户端。内置近50个工具,涵盖编辑、转换、合并、提取、加密等功能,操作简单,可离线使用,是高效处理PDF的理想选择。
1700 0
|
10月前
|
存储 弹性计算 安全
阿里云第九代云服务器g9a实例介绍,可适用于Web、数据库系统、区块链等相关应用
目前,阿里云第九代云服务器ECS g9a实例已正式商业化,且开启了首次活动,g9a实例基于阿里云自研 CIPU 架构,搭配 AMD Turin Classic 处理器,最高睿频 4.1 GHz;是专为数据库、区块链、金融量化以及其他对 CPU 高主频有要求的场景而打造的企业级实例产品。本文对g9a实例做个介绍。
2465 3
阿里云第九代云服务器g9a实例介绍,可适用于Web、数据库系统、区块链等相关应用
|
机器学习/深度学习 人工智能 自然语言处理
AI技术如何重塑客服系统?解析合力亿捷AI智能客服系统实践案例
本文探讨了人工智能技术在客服系统中的应用,涵盖技术架构、关键技术和优化策略。通过感知层、认知层、决策层和执行层的协同工作,结合自然语言处理、知识库构建和多模态交互技术,合力亿捷客服系统实现了智能化服务。文章还提出了用户体验优化、服务质量提升和系统性能改进的方法,并展望了未来发展方向,强调其在客户服务领域的核心价值与潜力。
1042 6
|
人工智能 编解码 安全
阿里云服务器上新,第9代AMD企业级实例g9ae,提升企业AI业务创新与性能突破
近日,阿里云推出的服务器ECS第9代AMD企业级实例-g9ae实例已开启邀测阶段,g9ae实例基于CIPU 2.0架构,搭载AMD Turin处理器,为国内首创物理核设计的“性能旗舰型”算力产品,专为AI时代企业离线数据处理打造。本文为大家介绍g9ae实例的性能及适用场景,以供了解与参考。
|
SQL 存储 开发框架
ASPX+MSSQL注如;SQL盲注
在ASPX与MSSQL环境下,SQL注入和SQL盲注是常见且危险的攻击方式。通过参数化查询、输入验证、最小权限原则以及使用WAF等防御措施,可以有效防止此类攻击的发生。了解和掌握这些技术,对于提升应用程序的安全性至关重要。希望本文能为您提供有价值的信息和指导。
445 23
|
存储 移动开发 JavaScript
React18组件一键转换Vue3组件(持续更新中)
其实现在Vue也是很火的框架随着Vue3的诞生,博主其实最终目标是想整合一套React+一套Vue组件库在一起的,但是重写一遍React的组件很费工作量也不现实,因为我是单人开发,于是就萌生了写一个React组件转换Vue组件的工具,功能性将逐步开发更新到博客,喜欢的可以关注一下
1545 1
React18组件一键转换Vue3组件(持续更新中)