云端问道19期方案教学-将本地冗余转换同城冗余,提升业务稳定性
摘要:今天分享内容是的阿里云对象处理 OSS 如何通过将本地冗余转换同城冗余的具体操作,以及相关的内容讲解,其内容都是基于在阿里云上的公开链接以及公开文档给大家进行了内容的介绍。主要分为以下五部分。
1. 背景介绍
2. 存储冗余概述
3. 创建同城冗余存储 Bucket
4. 转换 Bucket 的存储冗余类型
5. 补充内容
01. 背景介绍
在开始深入探讨之前,让我们先简要回顾一下背景,解释为何今天会提及数据的本地冗余向同城冗余的转变过程。众多云上及传统客户对于数据容灾与业务容灾均抱有强烈需求。从容灾视角来看,数据容灾是业务容灾的基石,唯有确保数据既不丢失也不出错,才能保障企业或组织的业务得以正常恢复与切换。在此过程中,如何确保数据的有效性与可靠性至关重要。许多云上及线下客户都曾遭遇人为操作失误,这类情况通常通过备份和复制功能来构建数据安全体系。另一方面,自然灾害如火山、地震、泥石流,乃至城市基础设施建设中意外挖断光缆等不可抗力因素,也对数据可靠性提出了更高要求,以保障业务连续性。在此背景下,阿里云分享存储作为云上统一存储服务,其同城冗余功能能够提供机房级容灾能力。当遭遇断网、断电或灾难事件导致某个机房不可用时,同城冗余能力能确保在其他地点继续提供一致性的数据服务能力。整个切换过程基于底层技术能力实现,客户在运营层面毫无感知,业务不会中断,数据也不会丢失,能够满足大多数客户关键业务系统的 RTO 及RPO 需求。
今天的介绍将分为三个部分。首先,我们将探讨前面提及的阿里云对象存储OSS提供的同城冗余功能。关于同城冗余,我们将详细介绍不同的存储冗余类型,并通过具体实践展示如何从本地冗余转换为同城冗余。此外,除了同城冗余, OSS 还提供跨区域复制和云备份能力,构成了一个十分完善的整体解决方案。
第一步,我们来介绍一下阿里云对象存储的冗余类型。您可以在阿里云云市场上找到对象存储 OSS ,通过产品导航栏进入存储部分,找到对象存储这款产品。在产品文档中,您可以查看到存储类型的转换信息。
在这个过程中,可以在 OSS 产品文档中找到存储冗余相关的文档地址,具体位置在“操作指南”下的“数据管理”栏目中,进一步点击进入“存储冗余”目录。接下来,我们首先来介绍一下两种不同冗余类型之间的区别。
02. 存储冗余概述
首先,本地冗余与另一种冗余类型的共同点在于,它们都基于 OSS原生能力。这两种冗余类型都通过 OSS 的数据编码技术来实现数据的可靠性。
2.1 本地冗余
本地冗余,即 LRS(Local Redundancy Storage),采用的是单AZ(可用区域)的数据冗余机制。它意味着客户的数据会被存储在同一个可用区内的多个设施设备上。简而言之,数据会在同一机房内的不同硬盘上存储,利用硬盘或机架的不同位置,以确保在数据失效时能够保持数据的持久性和可用性。
2.2 同城冗余
另一种我们今天重点介绍的是同城冗余。同城冗余采用多可用区的数据冗余机制,目前主要是三 AZ (可用区域)的配置。这意味着客户的数据会在同一个地域内的多个可用区进行存储。当某个可用区不可用时,同城冗余依然能够保障数据的正常访问。例如,在同一座城市或同一地区拥有不同的机房,这样可以极大地降低因火灾、水电故障或整个可用区出现故障而导致的数据安全风险。在同城冗余中,除了能够容忍硬盘和机架故障外,它还具有容忍单个 AZ 故障的能力,从而确保数据的可靠性。
此外,与后面将要介绍的跨区域复制不同,同城冗余在实现过程中,整个 Bucket 的名称是保持不变的,底层会自动进行切换。因此,在使用和操作过程中,用户无需考虑 Bucket 的更改。由于 Bucket名称不变,基于该 Bucket 生成的文件域名和文件请求链接也不会发生变化,对业务完全没有影响。
2.3 存储冗余类型对比
接下来,我们比较一下这两种不同存储冗余类型的差异。首先,众所周知, OSS 提供了五种存储类型,包括标准、低频、归档、冷归档以及深度冷归档存储。值得注意的是,同城冗余目前仅支持其中的三种类型:标准、低频以及归档存储,因此在使用过程中需要特别关注这一点。
此外,两者在数据持久性和服务可用性保证能力方面也存在差异。本地冗余提供的是 11 个 9 的数据持久性,而同城冗余则提供了更高的 12 个 9 的数据持久性。在服务可用性上,同城冗余的标准存储类型达到了业界最高的 99.995% ,这一点也是其显著优势之一。
03. 创建同城冗余存储 Bucket
在创建同城冗余过程当中会遇到的注意事项,以及支持的相关操作。
3.1 注意事项
在使用过程中,我们会注意到,目前同城冗余支持的 Bucket 地域仅限于 11 个地区。如果需要在这些地区之外实现同城冗余的能力,建议大家采用跨区域复制的功能。通过区域间的数据复制,可以提升数据容灾能力。此外,需要重点关注的是,本地冗余的通用费用相对较高,因此大家在考虑费用时需要特别注意这一点。
在同城冗余方面,无论是标准存储还是低频存储,其价格都要高于本地冗余。具体来说,标准同城冗余的价格是 0.15元/GB/月,而本地冗余的价格则是 0.12元/GB/月。同时,在低频存储上,两者也存在不同的价格。然而,在归档存储类型中,两者的价格则是相同的。这样的定价策略旨在通过技术红利的提升,鼓励大家更好地使用同城冗余的能力。我们希望在成本相同的情况下,大家能够享受到更优质的数据安全保障。
3.2 操作步骤
在提及操作流程时,大家可以通过多种方式进行创建,包括通过控制台、阿里云 SDK 、命令行工具以及 API 接口。这些方式都支持大家进行相关操作的创建。
04. 转换 Bucket 的存储冗余类型
但是,在转换过程中,目前仅支持通过 OSS 控制台和 REST API 的方式来进行。通过命令行工具或 SDK 是无法完成转换的。因此,稍后我会与大家一同通过控制台的方式来实现存储冗余类型的转换。
4.1 前提条件
接下来,我为大家介绍几个前提条件。首先,关于存储冗余支持的地域,目前主要以这 11 个地区为主,大家可以参考文档上的相关说明。其次,同城冗余的转换形式和趋势是单向的,即 Bucket 的冗余类型必须为本地冗余, OSS 仅支持从本地冗余转换为同城冗余,而不能从同城冗余转换回本地冗余。这一点需要注意。
另外,关于 OSS 的类型,标准、低频和归档存储类型都可以通过Bucket 的方式来实现转换。但是,需要注意的是,虽然 Bucket 里的文件可以包含深度冷归档类型,但在进行转换后, Bucket 里的深度冷归档和冷归档文件仍然会保持为本地冗余。这是因为目前深度冷归档和冷归档类型还不支持转换为同城冗余的场景和能力。希望这一点大家能够理解。
4.2 注意事项
(1)转换形式:我们不支持从同城冗余存储转换为本地冗余存储。
(2)时间问题:目前,许多客户已经开始进行转换过程。在控制台中,您可以看到每个转换都会创建一个相关任务。这些任务需要排期进行,而且转换过程需要花费一定时间。转换时间的长短与Bucket 的存储量、文件数量以及碎片数量密切相关。因此,如果Bucket 中存在大量碎片,我们建议您使用生命周期管理功能来清理这些碎片。具体的清理方式以及生命周期的设置,在之前的培训课程中已有详细介绍,您可以参考之前的课程来了解如何通过生命周期管理实现存储类型转换以及碎片清理。
(3)转换费用:需要注意的是,转换过程本身是不收取费用的。但是,由于本地冗余和同城冗余的价格存在差异,转换完成后可能会产生额外的费用。
(4)跨区域复制:在跨区域复制功能方面,如果两个Bucket设置了跨区域复制关系,当其中一个 Bucket 的存储冗余类型发生转换时,另一个 Bucket 的存储冗余类型并不会自动转换,需要您手动进行操作。
OSS-HDFS 服务:此外,对于已经开通了 OSS-HDFS 服务的Bucket,如果您将其转换为同城冗余存储, OSS-HDFS 服务仍然会保持为本地冗余存储,而不是同城冗余存储。
05. 补充内容
关于几个相关的知识点介绍,在文档中已有详细阐述。在这里,我再补充几个大家可能会遇到的问题。
首先,对于经常使用 OSS 的中长尾客户来说,资源包和预留空间是他们非常关心的问题。很多用户会询问,同城冗余是否可以使用资源包或预留空间来抵扣费用。在资源包方面,是可以购买标准同城冗余和低频同城冗余的资源包来抵扣费用的。但是,预留空间只能抵扣中国内地各区域标准本地冗余的存储容量或快照存储容量,无法抵扣同城冗余的费用。
其次,关于转换过程是否会对业务产生影响的问题,前面已经提到,转换是在底层自动进行的。用户只能看到转换的排队时间,而无法感知到整个转换过程。因此,转换过程不会对业务产生任何影响。
另外,关于转换时间,这需要根据用户的具体数据量来确定。同时,很多用户也会询问,同城冗余相比本地冗余,除了容灾能力更强之外,速度上是否会有所提升。从 OSS 的角度来看,存储类型和冗余类型本身都具有相同的性能,因此在性能上不会有所提升。如果需要在性能上有所提升,可以参考我们在群内分享的小贴士,了解如何通过 OSS 的其他方式来提升数据相关的性能。
我的分享到此结束,谢谢大家。