简介: 本文次要论述 CDS 产品中 OSS 服务在容灾方面的部署状态以及实现的其本原理。容灾性能能够保障用户一份数据在多个中央存在冗余备份,当某个机房呈现极其异样(比方物理损毁)状况下,数据也不会呈现失落;也能够保障当某个机房呈现不可用(比方断电)时,用户向外提供的性能也根本不受影响。
前言
对象存储服务(Object Storage Service,OSS)是阿里云推出的一种海量、平安、低成本、高牢靠的云存储服务,适宜寄存任意类型的文件;容量和解决能力反对任意弹性扩大,并提供多种存储类型以供选用户依据本人的业务个性去抉择,能够帮忙客户全面优化存储老本;提供数据持久性可达到 99.9999999999%(12 个 9),可用性可达 99.995%。
为了更好的将私有云的这种线上能力输入到线下,让线下客户也能享受到上述微小的技术红利;同时,也为了帮忙线下客户无效的升高硬件部署老本,阿里云推出了 Cloud Define Storage(CDS)。本文次要论述 CDS 产品中 OSS 服务在容灾方面的部署状态以及实现的其本原理。容灾性能能够保障用户一份数据在多个中央存在冗余备份,当某个机房呈现极其异样(比方物理损毁)状况下,数据也不会呈现失落;也能够保障当某个机房呈现不可用(比方断电)时,用户向外提供的性能也根本不受影响。
容灾原理
OSS 蕴含一个十分重要的后盾服务即数据复制服务 DRS(Data Replication Service)。当用户为 Bucket 开明了数据复制服务时(每一个数据复制服务的规定咱们称之为复制边), 每当用户上传一个文件,DRS 服务都会收到告诉,而后 DRS 服务会主动异步的将该文件“搬运”到数据复制规定中的目标端,整个过程对用户齐全通明,用户无需干预。
上图是一个跨区域复制的例子,用户为源 Bucket 开明了数据复制服务并配置好了目标端 Bucket 后,DRS 会主动将数据从源 Bucket 复制到指标端 Bucket。
部署架构
简略介绍一下 CDS 线下部署的物理概念。从大到小逐层顺次为 Cloud(云)、Region(地区)、AZ(可用区)、Cluster(集群),Bucket(桶)。能够用图阐明如下。里面一层能够包含一个或者多个外面一层。
上面以一朵云上面的多 Region 部署架构更为具体阐明,同一个 Region 外部的两个集群 Bucket 之间能够做同城容灾,两个不同 Rregion 外部的两个集群 Bucket 之间能够做异地容灾。
容灾状态
依据用户不同的容灾场景需要,OSS 提供了不同的容灾状态,次要分为同城容灾,异地容灾 (跨区域复制),跨云复制和两地三核心 四种场景。当初别离一一介绍他们的特点。
1、同城容灾
同城容灾的零碎架构如下所示:
集群 A 和集群 A’ 别离部署在同一个 Region 的两个 AZ,集群布局时候这两个集群就被布局成互为容灾集群。当在任何一个集群创立 Bucket 时候,后盾都会为这个 Bucket 在两个集群之间开明好双向的数据复制边(也就是两条复制边),数据通过 Bucket 写入到任意一个集群,都能被 DRS 主动异步的复制到另外一个集群。当 Bucket 所在的以后集群产生故障时候,能够通过运维平台一键切换将 Bucket 以后所在的集群切换到另外一个集群。因为 Bucket 的名字雷同,用户拜访 OSS 服务的 Endpoint 也雷同,因而用户不须要批改拜访 OSS 的域名;整个切换过程对用户通明,基本上不会影响到用户的业务。
同城容灾在用户的应用方面上,是一种十分不便的容灾状态。
2、异地容灾
异地容灾的零碎架构图如下:
异地容灾也叫跨区域复制。因为集群的部署对用户不可见,因而没有画出外部集群部署,只画出了和用户应用相干的 Bucket、Region 和 Endpoint。
如上图所示,同一朵云上面的 Bucket 名字是不能雷同的,BucketA 和 BucketB 别离创立在不同的 Region 下面,即 RegionA 和 RegionB,这两个 Region 的域名不雷同,别离记为 RegionA-endpoint 和 RegionB-endpoint。用户拜访两个 Bucket 的域名就别离是 BucketA.RegionA-endpoint 和 BucketB.RegionB-endpoint。两个 Bucket 之间也开明了两条复制边,数据在任何一个 Region 的 Bucket 写入,都会被 DRS 服务主动异步的复制到另外一个 Region 的 Bucket。当某个 Region 呈现整体服务不可用时候,用户须要本人切换业务拜访 OSS 的域名,从一个 Bucket 的 Endpoint 切换到另外一个 Bucket 的 Endpoint,以保障用户本人的业务不受到影响。
和同城容灾状态相比,异地容灾尽管出现异常时候须要本人切换拜访 OSS Bucket 的域名,但因为数据能够备份在两个不同的 Region,所以数据具备更高的安全性。
3、跨云复制
跨云复制的零碎架构如下:
和异地容灾相比,跨云复制惟一不同的是两个 Bucket 别离部署在两朵云上,提供不同云之间的数据复制服务,以满足用户更多的容灾部署状态和需要。因为是两朵云,所以 Bucket 名字是能够雷同,但两朵云上面的 Region 的域名仍旧是不雷同的。
用户应用这种模式的容灾,当一朵云碰到异样时候,也须要用户本人切换拜访 OSS Bucket 的域名,从一朵云切换到另外一朵云上。
4、两地三核心
两地三核心有两种状态。一种是同一朵云上面的两地三核心,即两个 Region 都是同一朵云上面的;另外一种状态是跨云的两地三核心,即其中一个 Region 在一朵云上,另外一个 Region 在另外一朵云上。因为理论部署中,跨云的两地三核心部署状态要多些,因而以跨云的两地三核心举例说明。
严格来说,跨云的两地三核心是属于跨云复制的一种,只是一个 Bucket(bucketA) 是同城容灾类型,另外一个 Bucket(bucketB) 部署在另外一朵云上,是同城容灾和跨云复制的组合; 既 A 和 A’ 之间是同城容灾,A/A’ 和 B 之间是跨云。在任何一个集群写入数据 (A、A’、B),数据最初都会在所有的三个集群中都存在,是目前为止备份级别最高的一种容灾状态。
如上图所示,源端 BucketA 外部对应两个集群,当一个集群出现异常时候,能够通过一键切换切换到另外一个集群下面,用户不须要扭转拜访 OSS 的 Bucket 域名;当其中一朵云整体出现异常时候,用户也能够通过批改拜访 OSS Bucket 域名形式,切换到另外一朵云下面。此种部署状态使数据分布在两个中央,三个集群(简称两地三核心),具备更好的数据安全性。
组合容灾
组合容灾是对于用户发明复制边的一种配置模式,次要是为了向用户提供更多的应用场景。次要分为一对多、多对一、源目一体模式。理论应用过程中,能够是这三种模式的某种或者多种的组合。
1、一对多
如下图所示,向 BucketA 写入数据,数据会主动异步复制到 BucketB 和 BucketC,即一个源端 Bucket 对应多个指标端 Bucket。
2、多对一
如下图所示,向 BucketB 或者向 BucketC 写入数据,数据会主动异步复制到 BucketA,即多个源 Bucket 对应雷同的指标端 Bucket。
3、源目一体
如下图所示,用户写入 BucketA 的数据会异步复制到 BucketB,用户写入 BucketB 的数据会异步复制到 BucketC;须要留神的是,用户写入 BucketA 的数据不会通过这种模式被传递复制到 BucketC。BucketB 即作为数据复制的指标端,也作为数据复制的源端,所以咱们简称为源目一体。
将来瞻望
容灾是用户应用数据过程中最根本的利用需要,只有做好了容灾,数据才可能在不同异常情况下都有备份不会呈现数据失落状况。OSS 通过十多年的技术积淀和打磨,对外提供了丰盛的容灾性能能够满足不同用户、不同场景的不同需要,目前曾经被宽泛的利用于银行、政企等客户,严格保障了客户的数据安全。在数据容灾方面,阿里云的 CDS-OSS 是具备外围竞争力的。
同时,CDS-OSS 的容灾性能仍在继续一直的打磨之中,将来会有更多新性能、新个性提供给用户,继续为用户带来价值。
原创作品:阿里云存储 禅居
系列文章传递门:
- 【CDS 技术揭秘系列 总篇】阿里云的云定义存储来了 https://developer.aliyun.com/article/792044?spm=a2c6h.13148508.0.0.3eef4f0ecyZOjQ
- 【CDS 技术揭秘系列 01】阿里云 CDS-OSS 容灾大揭秘 https://developer.aliyun.com/article/792000?spm=a2c6h.13148508.0.0.3eef4f0ecyZOjQ
版权申明: 本文内容由阿里云实名注册用户自发奉献,版权归原作者所有,阿里云开发者社区不领有其著作权,亦不承当相应法律责任。具体规定请查看《阿里云开发者社区用户服务协定》和《阿里云开发者社区知识产权爱护指引》。如果您发现本社区中有涉嫌剽窃的内容,填写侵权投诉表单进行举报,一经查实,本社区将立即删除涉嫌侵权内容。