vlambda博客
学习文章列表

[RAS]系统可靠性设计浅谈

Memory RAS 系列结束后一直没有动笔,一直在想应该写些什么,难道继续去deep dive RAS 功能? RAS难道就仅仅是这些功能嘛?市面上不缺RAS功能deep dive的文章(大部分的确不够通俗),使得大部分的从业人员理解成RAS就是那些RAS功能,理解了各种协议和原理就站在了RAS的巅峰,然而这样真正解决了数据中心的痛点吗?
今天我们就从使用方面,再结合系统/设计等角度简单小聊一下吧。

 

如何设计一个可靠的系统?

下面几个角度供大家参考:

可靠的系统设计

可靠的系统设计是系统可靠性的基石,这里包括各种高速总线接口,低速总线接口,电源以及散热等相关系统设计;只要有任一部分存在问题,会导致系统相关模块不停的报错,纠正甚至宕机。这也是为什么服务器设计需要专业的信号仿真,电源仿真,电气信号测试

可能有人疑惑,是不是系统只要不宕机就可以了,反正有一些纠正甚至冗余机制,报错也没有关系?纠正和冗余机制是处理系统运行后突发的,随机的一些问题,虽然也可以遮掩一部分设计问题,但在验证阶段,我们不把设计问题尽可能的解决,纠正和冗余的能力就下降了,表现出来的现象很可能是其他公司的产品在这种突发情况下只是报可纠正错误,而你的系统则出现不可纠正错误。



健康可靠的系统部件

RAS如木桶原理,一只木桶盛水的多少,并不取决于桶壁上最高的那块木块,而恰恰取决于桶壁上最短的那块,同理,一个系统的部件成千上万,系统RAS指标决定于系统上最不可靠的部件,所以我们必须严格审查我们生产中的各个部件,确认每一个都是健康可靠的。

DIMM--数据中心永远排名前列的故障模块,现在一个2路服务器通常都是几十根DIMM,上百个DIMM颗粒,只要一个颗粒有问题,将会影响系统的可靠性,所以内存的颗粒测试尤其的重要,后面会详细讲解一次内存的颗粒测试;同理还有CPUHDD等等。


[RAS]系统可靠性设计浅谈



精准的故障定位系统

无论互联网和传统企业,云计算和高性能计算,在系统可靠性处理的时候有一些方向性的需求(云计算更偏调度,运维;高性能计算更偏阶段性结果,后续文章再讨论吧);但是无论哪种场景,大家对故障的精准报告定位需求都是一致的,只有故障及时精准定位,才能快速的准备处理问题。

目前的服务器故障都是通过IPMI再到BMC SEL日志呈现出来,随着Silicon IP复杂和RAS功能丰富,IPMI Spec早就已经不能覆盖现在Silicon各种故障信息,所以BMC RAW data dump,线下解析将是互联网数据运维一大趋势。



务实的RAS功能使能

当然, 在这7*24小时的高要求下,还是会有机率会发生问题,这时务实的RAS功能使得系统可靠性事半功倍;系统可靠性的收益并不能随着RAS功能设计成本一样指数型增加,有些对性能也有一定的影响,所以要根据业务场景的需要来务实的选用RAS功能。


[RAS]系统可靠性设计浅谈


故障数据迭代到设计

这是一个数据的时间,我们会积累很多数据中心的故障数据,我们再根据这些故障数据和厂商一起迭代的解决问题;上游厂商那种老中医式出方案的方法已经一去不再了。


系统可靠性和系统验证(尤其各种环境压力测试),系统的使用环境,上线操作流程等均有关系,本次就不一一列举了。浅聊一下,欢迎大家指正;除了上面约的两遍文章,后续也将从Silicon IP故障报告和大家一起聊聊。



最后有几个工作机会给大家分享下,机不可失,有兴趣的小伙伴可以自己联系哦

Job1:字节跳动若干职位,大家可以扫描以下二维码:



JD2:全球五百强企业,工作地点深圳,岗位为学习岗型,需求9人;

需要技能:

1.熟悉CXL协议;
2.熟悉PCIe协议;
3.熟悉InfiniBand协议
4.熟悉其他芯片高速协议
5.熟练掌握芯片前端数字逻辑设计 
6.熟练掌握芯片数字逻辑仿真验证;
7.逻辑思维能力强,主动性强,学习能力强。

7为必要条件,1-6任意满足一个,满足两个条件或以上,优先考虑
薪资待遇:

根据面试结果,待遇丰厚,年薪预计130%-200%或以上


有意者请发简历到[email protected]