云计算:区域与可用性
2019-02-24 12:21:52区域
云计算中最顶层的概念,就是区域(Region)了。在大家的日常认知中,它当然是一个地理概念。而在云计算行业中,区域对应的则是云计算厂商在某个地理位置提供的所有云服务的组合,是厂商对外提供云服务的基本单位和容器。
如何选择云上“区域”?
- 首要的考量因素,当然在于区域的地理位置本身。
- 第二个考量因素,非常重要而又容易被忽视,那就是区域之间云服务的差别。
- 第三个区域选择的考量因素,则是成本因素。即便是同一种服务的价格,在不同区域也往往是不相同的。
多区域架构
多区域架构,它指的是部分关键应用,为了追求最佳的用户体验和高可用性,需要把多个区域的资源和能力结合起来进行构建。
在骨干网的加持下,通过合理架构完全可以让多个区域的云服务融为一体。**借助云的力量,小厂也能轻松拥有巨头的分布式部署能力。 **
在应用架构层面,多区域并不意味着,我们需要把某区域的资源依葫芦画瓢复制到其他区域,而是可以**根据实际情况各司其职,让不同区域担任不同的角色,联动起来达到业务目的。 **
比如,我们可以将面向消费者服务的触点部署到多个区域,就近服务各地区的互联网流量,而偏后台的数据分析和 BI 服务,则可以安置在性价比较高的非一线城市区域,业务数据可通过骨干网不断回传。这是一种经典的分工模式 。
当然,多区域架构固然诱人,我们也不应当走向另一个极端:轻率、随意地拓展区域。因为每一个区域的增加,都会相应增加应用架构的复杂性和流量费用,也给我们的维护工作带来负担,这些额外的成本可能会抵消多区域架构带来的好处。
可用区
除了“区域”之外,“可用区”(Availability Zone)这个术语同样是非常重要的概念。因为看上去和区域有点相似,经常会把它们等同看待。事实并非如此。
可用区是区域的下级概念,是指一个具备完整而独立的电力供应、冷却系统、网络设施的数据中心单元。一个区域通常由多个可用区高速互联组成。区域内的可用区一般位于同一个城市,之间相距往往在一百公里以内。
所以物理上的“数据中心”和“机房”概念,若要严谨地对应到云端,其实是在可用区这个层面。
那一个区域看上去拥有一个数据中心就足够了,为什么还要建造多个可用区呢?
- 首要的原因,当然是为了解决区域内高可用性问题,这也正是“可用区”名字的由来。尽管数据中心内部有着非常精密的运作系统和冗余机制,但地震、火灾、雷击等极端情况下,仍有可能造成数据中心级别的故障。
- 区域需要多个可用区的另一个原因,在于区域本身有扩展的需求。一些区域由于早期的容量规划和成本控制原因,很可能在若干年的运营后就会变得资源紧张、后劲不足。
所以反过来讲,可用区的数量也可以成为一个衡量区域规模的重要指标。数量越多,意味着这个区域规模越大。在选择区域的时候,这个指标也可以作为重要参考。课堂总结与思考
总结
- 区域是云计算的顶层概念,云服务以区域为单位对外开放;
- 区域选择需要考虑多种因素,包括但不限于地理位置、服务丰富性、开服时间、资源成本、可用区数量等;
- 可用区是区域之下的重要层级,代表独立的数据中心,一个区域内往往有多个可用区;
- 妥善将资源分布到不同可用区,可实现故障隔离,提升架构的可用性。