2019年3月3日阿里云华北2地域可用区C部分ECS服务器故障的消息相比大家都知道了,这次故障着实给不少用户带来不小的麻烦,那么问题来了,云服务器不是不会出问题么?可用性不是能达到99.9%么,云盘不是能达到99.9999999%的9个9个可靠性么?下面我们来了解一下关于云计算方面的知识。

阿里云宕机事件原因 从阿里云宕机来看如何部署云服务器更安全(1)

从阿里云发布的公告看,里面有3个关键字,地域、可用区和ECS,首先我们来看看这是什么东西?

地域就是地区,英文表示就是Region,指的是物理的数据中心,通常我们在阿里云或者亚马逊等云计算平台上购买实例的时候都要选择地域,可以简单的理解为我们的服务器存放位置,地域的选择要接近目标客户的所在位置,比如你的目标客户都在美洲,那你的地域就选到美国去,这样用户访问你的资源延迟就更低,从阿里云的官网上可以看到,阿里云在国内和海外都有不同的地域,国内比如有华东1、华东2、华北1、华北2、华北3等7个地域,海外比如香港、亚太、美国、欧洲、中东等都有部署。

阿里云宕机事件原因 从阿里云宕机来看如何部署云服务器更安全(2)

下面我们看看啥事可用区,应为表示就是Zone,可用区就是在同一地域内电力和网络相互独立的物理区域,同一地域的可用区内的内网是互通的,可用区之间能做到故障隔离,如果你的业务要求有较高的容灾能力或者网络延迟要求较高,那你就要考虑是否把实例放到同一可用区了。

这次的故障出现在华北2区域,这个区域是2013年推出的,该区域数据中心位置在北京,区域下有7个可用区,故障就出现在可用区C了。

再来看ECS,什么是ECS?ECS英文全称是Elastic Compute Service,是一种弹性的可伸缩的计算服务,可以简单理解为一台服务器。每个云计算平台的叫法都不一样,阿里云叫ECS,亚马逊AWS叫EC2,腾讯云叫CVM,不管叫什么,其实就是一台云服务器。

好了,了解了上述基本信息后我们看看如何在云平台上架构安全的业务,不管你什么平台、不管这个平台如何宣称他的安全性,但是你要知道安全性和稳定性是相对的不是绝对的,没有绝对的安全、没有绝对的稳定。国内国外这些大的平台还是比较可信的。要根据你的业务选用不同的部署方式。

阿里云宕机事件原因 从阿里云宕机来看如何部署云服务器更安全(3)

通常在我们的业务部署过程中都会有个侧重点,比如这个业务对速度要求很高、有的是对数据的完整性要求很高、有的是对稳定性要求很高,那么这就要根据你的侧重点来构建自己的架构了。

对于速度要求很高的业务,在部署云的时候就要充分考虑地域,你要评估你的客户大致都分布在什么位置,也行有些人会有疑问,我的客户遍布全国甚至全球那怎么办,不用着急,各大云平台都有自己的方案,处理选择地域外像其他的比如多线接入、CDN等等都可以拿来使用,这里我们先不考虑那些因素的。如果你的客户主要分布在北方,那么你就要选择华北区域,通常我们的业务从安全性和稳定性考虑都是要分开的,比如用户系统、订单系统、数据库等等都是要分布在不同的ECS实例上去的,这样可以避免由于某个模块出现故障导致的整个系统瘫痪。

在实际生产系统中,重要的系统一定要部署在两台以上,避免出现单点故障,部署在两台以上那就有把这2台部署在统一地域下的不同可用区了,因为不同的可用区之间的电力、网络是独立的,而内网又是互通的,所以部署在同一地域下的不同可用区是最最经济实用的。这次的故障就发生在发生在可用区C,如果你的业务部署在两个不同的可用区,那么这次故障是不会给您带来太多麻烦的。所以,核心业务要部署在不同的可用区内,千万不要有单点故障存在。

问题又来了,我把核心业务部署在同一地域的不同可用区内,万一这个地域出现灾难性事件了,我的业务不是照样要中断么,是的,一定的!怎么解决呢,很简单,不是有很多地域么,你可以把业务部署在不同的地域啊,比如中国部署个,美国部署个,不就解决了么?是那么回事,可是不同的地域距离这么远,数据延迟是不是很大呢?嗯,是的,延迟肯定是有的,这就要根据你的业务来定了,看你的侧重点在哪?根据你的侧重点来选择不同的地域、可用区和ECS实例。

总之在云计算平台上选型时一定要注意下面的问题:

1. 没有绝对的安全和可靠,这些都是相对的,但这些又比你自己托管在IDC机房的安全性和可靠性高很多。

2. 云平台下部署业务,并不是买一台云服务器部署上去就完事了,要根据自己的业务情况选择不同的部署方案。

3. 数据备份是重中之重,数据备份要有冷备、热备、本地备份、异地备份,更重要的是数据备份要具有可用性,而且一定要有可用性,不然出了问题把你的腿拍烂了都没用。

以上是本人的一些浅显看法,如有不妥之处欢迎拍砖。

,