不同的行业业务类型,其互联网应用对于IT系统容灾有不同的要求。总体来说,更短的RTO(Recovery Time Objective,业务系统所能容忍的业务停止服务的最长时间)和更小的RPO(Recovery Point Objective,业务系统所能容忍的数据丢失量),与容灾系统建设带来的成本增加、管理维护难度的增加,是一个互联网应用做容灾方案设计时需要综合考虑的问题。 就部署在公有云的中小型互联网应用而言,主要需要预防的基础IT环境故障包括产品实例级故障和数据中心级故障(如右图示)。丁丁云就这两种级别的故障推出容灾解决方案,从产品实例级,帮助用户了解在丁丁云部署业务系统时,如何解决关键业务环节的高可用问题;从数据中心级,帮助用户根据自己的业务容灾需求(RTO和RPO),在丁丁云上选择合适的跨可用区容灾方案,特别是数据同步方案。
可用区:是同一地域(如杭州region)范围下,电力和网络互相独立的物理区域(一般是一个物理机房),目标是能够保证可用区间故障相互隔离(大型灾害或者大型电力故障除外),不出现故障扩散;可用区物理距离一般在 30公里左右,隔离一般自然灾害影响;同地域可用区之间通过裸光纤直连,跨可用区间的网络延迟一般为1-3ms,可以当做内网使用。一般跨可用区的容灾,已经基本满足除特定行业(如金融)外的业务容灾需求。
丁丁云的每个服务区域(region),都建成了环状城域网,城域骨干层接入阿里巴巴电商骨干网络,与其他丁丁云区域节点互联,如果多服务区域节点间需要高速稳定的数据通信,可以直接通过丁丁云云通道进行;同时,海外区域中目前已经投入运营的新加坡和香港节点,均提供合作国际运营商的优质回国线路,美国节点提供连通杭州节点的云通道服务,实现稳定高速的国际互联。随着国际数据中心的陆续上线,丁丁云将成为覆盖全球的国际化业务支撑平台。
除了将业务容灾完全架设在丁丁云的多可用区、或者多区域节点上,很多用户还希望能够利用丁丁云与本地IDC形成一套业务容灾机制、甚至在丁丁云与其他公有云服务商之间形成这种相互容灾的机制。丁丁云虚拟专用网服务VPC,提供了标准的丁丁云专线接入和LAN2LAN的VPN接入解决方案,根据数据通信要求选择专线或VPN接入,将丁丁云打造成企业IDC的延伸段,可以很方便形成一套混合云的业务容灾机制。
应对可用区级网络、电力等故障风险,形成应用系统跨可用区的高可用方案
应对单体硬件设备故障、或产品实例级故障,形成应用系统产品实例级的高可用方案
北京某信息公司,App系统用户分布比较广且对访问延时的要求较高(100毫秒以内),如果整个业务只使用某个区域的一个数据中心的架构,会导致部分用户的访问延迟较大,用户体验差。为了解决这个问题,公司将业务及数据库按照区域拆分(拆分为北京及杭州两个业务中心),每个RDS实例的表结构完全一致,但是区域的数据库要保持一致,是通过DTS的双向实时同步功能实现。采用这套双活架构,不仅解决了整个业务系统的容灾问题,而且可以保证90%的App用户平均访问延迟在60ms以内,并且业务具有良好的扩展性。