/ 中存储网

关注细节是解决数据中心多米诺效应的唯一方法

2015-05-30 14:08:25 来源:机房360

对数据中心Data Center的任何调整,都会牵涉到所有设备的处理变化,正可谓如多米诺效应,动一发而触全身。所谓的多米诺效应,是一个叫多米诺的意大利传教士将宋朝时得到骨牌游戏带回了米兰,这种游戏迅速传遍整个欧洲,成为了欧洲人一项高雅运动。多米诺效应喻指在一个相互联系的系统中,一个很小的初始能量就可能产生一系列的连锁反应,最终形成由量变达到质变的过程。

显然我们不希望在数据中心Data Center总会发生这样的事情,不过数据中心Data Center的很多业务正如多米诺骨牌,动一发而触全身。先来看看网络部分,传统网络都是由二三层网络构成,STP/OSPF构成了全网最广泛应用的基础技术。而STP和OSPF都是全网设备参与计算的协议,对于二层设备,任何一个末端节点的设备就算出现了端口的UP/DOWN,都会影响到全网设备的计算。当然STP协议通过复杂的计算管理着这个巨型的二层王国,各种事件和消息都可能会全网传播,有时就会引起全网震荡,这样的多米诺现象在数据中心Data Center里并不少见。OSPF协议是路由学习协议,全网设备要实现全互通,需要OSPF协议维护全网所有网络设备的路由表,当一台设备的路由表发生变化时,它需要通知全网的设备进行路由更新。可见,数据中心Data Center网络作为一个整体,需要对变化的细节做出响应,这样必然带来多米诺效应。为了消除这样的影响,往往通过一部分技术手段去削弱这种变化。比如:STP支持实例的划分,将整个数据中心Data Center网络划分为多个实例,实例之间是隔离的,当网络拓扑发生变化时,仅仅影响实例内的设备,实例之外的设备不受影响。OSPF也可以将设备划分到不一样的区域中,路由分为区域内路由和域间路由,当一个区域内的路由变化时,统一通过边缘路由器发给别的区域,即域间路由。这样就能有效减少全网的协议震荡,保持全网路由稳定。确保数据中心Data Center网络不再发生多米诺效应的方法还有不少,这些技术的宗旨就是将危险消除于摇篮之中。

除了网络,对于服务器设备也是同样。在数据中心Data Center里,服务器的数量最大,服务器主要是计算的功能,一般的数据中心Data Center都会拥有数百甚至数千台的服务器。这些服务器承载着各种各样的业务。很多业务是要很多台服务器共同完成的,所以当一台服务器异常时,可能造成了整个业务无法正常运行。比如在计费系统中,假设计算的服务器出现了故障,造成了消息记录堆积,可能造成了无法进行正常的计费或者记录的信息都是错误的。实际上在一个计费系统中,还有客户前端,后期统计,数据存储等部分,都因为计费服务器的故障而造成了整个系统无法正常运行,产生了多米诺效应。解决这类问题出现的方式是采用集群的技术,即多台服务器虚拟化为一台设备,处理相同的计算机应用,当其中一台服务器故障时,立即由集群中的其它设备接管,应用层根本感知不到这种变化。这种集群技术是现代数据中心Data Center所一定要的,尤其是一部分大型数据中心Data Center,大型数据中心Data Center一般拥有成千上万台的服务器,几乎天天都有设备故障,仅有通过集群技术才能确保业务不受影响。

防火墙是数据中心Data Center安全的保护神,通过防火墙可以有效拦截针对数据中心Data Center的各种攻击。一般有硬件防火墙和软件防火墙之分,硬件防火墙一般用于部署在数据中心Data Center流量出入口的地方,对数据中心Data Center整体流量进行监测。显然万一防火墙故障,带来的影响是严重的,整个数据中心Data Center的业务全部会挂掉,防火墙的过滤规则设计也非常重要,由于针对的是整网的流量,要考虑周全,不合理的过滤规则仍然可能造成了业务无法进行。为了防止防火墙出现故障,一般我们通过部署主备防火墙甚至虚拟防火墙技术,当主用防火墙出现故障时,及时将流量切到备用上来,确保流量不受影响。软件防火墙一般统一安装在所有服务器上,当软件防火墙有BUG,所有的服务器都会受到影响,影响面巨大。软件防火墙可以对具体应用进行全面防护,正是介入到应用层过深,所以防火墙对业务的影响也是很难发现的,这让一部分隐患早期很难被人所发现,等到问题暴露出来已经晚了,已经无法再对业务进行修复,就算卸掉防火墙也无济于事。这时重装系统,重新部署各种应用是唯一的方法,这给数据中心Data Center和维护人员都增加了不少工作量。

当然除了这些重要承载业务的关键设备,还有很多小的隐患,若不及时消除可能带来巨大损失。比如:有的设备内存占用率比较高,尽管不影响业务,但随着占用率的逐步提升,设备的软件应用在申请内存时频繁出现失败,就会不断有业务中断。当发现设备的内存利用率超过50%时,应该引起重视,及时消除。除了内存占用率,设备CPU占用率,设备运行环境温度,各种日志告警,电源风扇异常等小毛病都需要引起足够的重视,当业务正常时,往往忽视这些告警的存在,但长期以往,小问题就会引发大事故。重视细节,才能彻底消除造成了故障的多米诺效应。

“细节决定成败”这句话是对多米诺效应解决方法的最好诠释,仅有重视细节,不放过任何一个小小的隐患,才能避免多米诺效应的事故发生。我们应该避免在数据中心Data Center内部部署易于产生多米诺效应的设备与技术,让数据中心Data Center各个模块之间相互隔离,但又彼此保持着各种联系。模块之间通过各种接口完成业务交互,各模块独立运行,避免对业务产生共振,触发多米诺效应。