一文搞懂地域和可用区如何选择
序言: 随着云计算的普及,越来越来的业务会选择上云,上云的第一步往往就是云资源的选购,选购云资源时(尤其是IaaS),通常都必须先选择地域Region和可用区AZ,那么我们应该如何选择呢?这两个概念与日常所说的数据中心又有什么区别呢?
在云时代,理解地域和可用区的概念是非常基础和重要的,在这里我将我所了解到的信息和一些经验记录下来。如有不准确之处,欢迎指正~
定义
地域(Region)定义:
指物理的数据中心所处的地理位置区域。
地域一般分两种类型,通用服务地域和专用服务地域,通用服务地域面向公共租户提供通用云服务,专用服务地域面向特定租户提供专用云服务(如金融专区和政务专区)。
一个地域一般由多个相互独立的可用区组成,可用区之间的距离一般都会间隔一定距离且不超过一定距离,通常是几十公里。
地域特性:
不同地域之间完全隔离,以保证不同地域间最大程度的稳定性和容错性。所以一般情况下,不同地域的云产品不能通过内网通信。
不同地域之间的云产品,可以使用弹性公网IP地址通过公网进行通信。腾讯云上处于不同私有网络的云产品,可以通过云联网进行通信,此通信方式比公网更快速、更稳定。
负载均衡默认只支持同地域流量转发,绑定同地域的云服务器。腾讯云支持开通跨地域绑定功能,可实现负载均衡跨地域绑定云服务器。
可用区(Availability Zone,AZ)定义:
指在同一地域内电力和网络等基础设施互相独立的一个或多个离散的物理数据中心。这些数据中心通常会间隔几十公里,既减少互相之间的访问延迟,又尽可能的避免网络电力等大规模故障同时对多个可用区产生影响,从而提升整个地域的可用性,减少跨可用区的访问延迟。
可用区与物理数据中心不是一一对应。不同用户在同一地域下选择相同的可用区,也可能位于不同的物理数据中心上。
可用区特性:
容灾能力: 可用区之间是完全物理隔离的,具有完备的独立性,能够保证可用区间故障相互隔离(大型灾害或者大型电力故障除外),不出现故障扩散,使得客户的业务持续在线服务。多可用区在容灾能力和可扩展性方面比单个数据中心更强。
通过使用多可用区内的实例,可以保护业务不受单一位置故障的影响,多可用区部署使业务更容易获得高可用性。
网络延迟: 同一可用区内实例之间的网络延时最小。
一个地域中的所有可用区都通过高带宽、低延迟网络与完全冗余的高速专用城域光纤互连,为可用区之间提供高可用、高吞吐量、低延迟的内网互通,客户同一账户下的云资源可以直接使用内网IP实现跨可用区的互通。网络性能足以确保可用区之间的同步复制,满足客户跨可用区构建高可用性系统的需求。
内网互通是指同一账户下的资源互通,不同账户的资源内网完全隔离。
如何选择地域和可用区
地理位置:
地域选择一般根据访问服务的目标客户所在的地理位置选择最为接近的地域,以降低访问的时延,提高访问的速度,提升用户的体验。
可用区选择一般取决于业务对容灾能力和多业务互通的网络时延的要求。
高可用和低时延:
如果业务需要较高的容灾能力,建议将资源分散部署在同一地域的多个不同可用区内。以保证可用区间的故障隔离,实现跨可用区容灾。
如果业务需要实例之间的网络延时较低,建议将资源创建在同一可用区内。
在同地域部署多种云产品资源时,需要考虑不同可用区之间网络通信的延迟,同一可用区内网通信的访问时延相对较低、访问速度相对较快。
业务需要根据实际需求,在可用区间容灾部署和低时延之间找到最佳平衡点。
资源价格和资源余量:
资源的价格不同地域的价格可能会有差异,这个主要取决于当地的电价、带宽费用以及机房的维护成本等,国内地域通常不会有太大的差异。海外的地域会存在较大差异,因为物价水平和带宽费用的差异较大。
资源的剩余量也是重要的因素,比如一些老的可用区没有新机型资源,新的可用区没有老的机型资源。一般这种情况比较容易出现在GPU机型上,因为GPU资源的成本较高,而且GPU型号更迭速度更快,所以云厂商通常不会准备过多的GPU资源部署到每一个可用区。
海外部署:
如果业务需要出海为海外用户提供服务,通常需要选择靠近目标国家和地区的地域。一般不建议跨大区(如亚太访问北美)的地域服务访问,会有较高的访问延迟。
其他因素:
关于经营许可证备案选择地域时您需要考虑某些地区的特殊要求。如有办理经营许可证备案的需求,可能要求购买企业所在地域的资源部署服务。
地域和可用区和数据中心的关系:
文章图片
地域描述含义:
ap-shanghai-1
亚太-华东地区(上海)-上海一区
一台服务器的所属位置示例描述:
地域Region:华东地区(上海)
城市City:上海/张家港/昆山等
可用区AZ:上海三区
数据中心DC:上海移动临港DC
机房:上海移动临港DC1号楼4楼0402
机架:0402-G02
不同层级的延迟差异
文章图片
北上广跨地域的延迟:
文章图片
业务实践: 第一步:先统计上下游的服务机器所在的地域和可用区,一般都会有多个地域和可用区。
第二步:以尽量靠近上下游服务的地域和可用区的原则,确定业务资源部署的地域和可用区,同一个地域尽量有两个及以上可用区可选。
第三步:根据确定的地域和可用区购买和部署资源。如果待选可用区没有目标资源,可选择同城的可用区,尽量避免跨城。
下图是我们业务在确定地域和可用区的时候画的结构图。
文章图片
参考文档: 【一文搞懂地域和可用区如何选择】https://aws.amazon.com/cn/about-aws/global-infrastructure/regions_az/
https://www.alibabacloud.com/help/zh/doc-detail/40654.htm
https://cloud.tencent.com/document/product/213/6091
https://cloud.tencent.com/document/api/1278/55256#RegionInfo
https://support.huaweicloud.com/usermanual-iaas/zh-cn_topic_0184026189.html
https://docs.ucloud.cn/uphost/concepts/az?id=%E5%9C%B0%E5%9F%9F%E4%B8%8E%E5%8F%AF%E7%94%A8%E5%8C%BA
https://www.mtyun.com/doc/products/manage/Region/index#%E5%8F%AF%E7%94%A8%E5%8C%BA%EF%BC%88Zone%EF%BC%89
https://docs.ksyun.com/documents/6965
https://docs.jdcloud.com/cn/virtual-machines/regions-and-availabilityzones
https://developer.qiniu.com/qvm/4190/region-zone
推荐阅读
- 【图解】9张图彻底搞懂堆排序
- mysql|一文深入理解mysql
- 数据技术|一文了解Gauss数据库(开发历程、OLTP&OLAP特点、行式&列式存储,及与Oracle和AWS对比)
- 一文弄懂MySQL中redo|一文弄懂MySQL中redo log与binlog的区别
- c语言|一文搞懂栈(stack)、堆(heap)、单片机裸机内存管理malloc
- 网络|一文彻底搞懂前端监控
- 【SpringCloud-Alibaba系列教程】8.一文学会使用sentinel
- 2020买重疾险看这篇就够了,一文明白重疾险怎么买|2020买重疾险看这篇就够了,一文明白重疾险怎么买,更划算
- 《繁凡的深度学习笔记》|一文绝对让你完全弄懂信息熵、相对熵、交叉熵的意义《繁凡的深度学习笔记》第 3 章 分类问题与信息论基础(中)(DL笔记整理
- 开源生态|GPL、MIT、Apache...开发者如何选择开源协议(一文讲清根本区别)