如何建立云存储应急演练体系及进行场景设计?

时间:2022-11-11 12:08:41

云存储技术的应用很大程度上降低了企业构建同城和异地容灾的成本,相比于传统存储架构,云存储具有完全不同的业务特征,比如在数据的一致性同步规则和数据更新粒度等方面,这些业务特征和应用模式的明显区别,使云存储的高可用保护及应急体系建设都区别于传统存储。本文将基于云原生和企业云架构体系的视角,分析如何构建云存储演练的标准体系,通过云存储几种常见的高可用容灾技术,梳理在不同故障场景下的应急切换流程,建立符合云存储标准的应急预案。

一、云存储演练的必要性分析

云存储演练的重要性

随着云计算技术的推广,云存储逐渐成为一种有效解决企业海量数据存储和管理问题的方式。针对企业日常生产过程中产生的不同类型非结构化数据,企业可选择相应类型的云存储(包括文件存储、对象存储、块存储等),对非结构化数据进行统一存储和管理。利用分布式存储架构所提供的的软件即存储能力,帮助企业构建了云服务的基础系统服务层,为云上各类的微服务应用提供了云存储和云共享服务。

针对云存储及云平台的基础设施建立应急切换演练机制,能够显著提升企业处理信息安全事件响应能力、降低和预防发生信息安全事件产生的损失,保障业务连续性。针对企业核心数据、核心存储设备,建立一整套完善的应急预案,构建应急处置机制,并验证应急保障预案的有效性等环节,已经成为业务连续性中重要环节。

云存储VS传统存储

云存储相较于传统的存储架构,云存储的容灾服务通常包括为弹性云计算资源、云硬盘设备、分布式存储设备等服务提供容灾的服务。这些服务不仅为上层应用提供了更为灵活的软硬件一体化部署模式,同时也兼具更加健壮的高可用模式,尤其是在开展应急演练方面:可以基于现有云上的业务策略,按需配置云服务器、云存储的保护实例。并通过存储同步复制技术、磁盘映射技术、数据缓存冗余等技术构建云存储的高可用性,为业务提供数据的可靠性以及业务连续性,从而确保容灾备份的RPO为0,在演练过程中,云存储将弹性云服务器的数据、配置信息复制到容灾站点,并支持应用所在的服务器停机期间从另外的位置启动并正常运行,从而提升业务连续性,相比于传统存储,基于云存储的容灾方式,能够更好的降低容灾建设成本。

二、云存储应急场景及标准体系建设

云存储切换演练及场景建设

根据企业业务连续性相关要求,结合云存储的特点和现状,对应急演练的内容、实施过程以及预期效果,梳理云存储的应急演练特别应该注意以下几个方面:

首先,确立组织演练规划小组,并确定演练范围及周期:前期的演练会尽量降低复杂度,在零风险的前提下进行多次小规模演练,提升管理人员的灾难恢复能力。

设计演练场景并制定恢复策略:针对应急预案设立不同的演练场景及相应的恢复策略。

最后进行实战演练及总结:监控并记录整个恢复过程,验证灾难恢复流程及备份数据的有效性。

构建基于云架构的演练标准体系

由于基于云架构的业务平台,采用分布式计算机存储系统,天然形成了数据冗余存储、具有自动恢复机制,提高了存储数据抵抗外界诸如硬件故障、单台存储设备故障等不可抗风险。因此,在构建基于云架构的演练标准体系方面,要投入更多的关注, 覆盖基础设施到应用层,底层环境(物理机、虚拟机、容器)及操作系统(Linux、Windows)、应用容器编排等方面。作者认为构建基于云存储的演练体系应至少应包括:

(1)明确云存储突发事件应急各环节中的角色和责任,提高云存储各项响应和操作能力; 在关注云架构环境中,传统的存储设备管理员转变成devops开发运维工程师,对存储的运维也从硬件层面转变为对应用和微服务的支撑。

(2)利用多手段组合的方式,构建云存储应急演练手段技术体系; 利用真实可模拟的微服务存储故障等突发事件应急环境来训练参演人员,增强参演人员的心适应能力和调整能力,缩短突发事件应急现场的适应期;

(3)明确云存储在应急演练各环节关键的功能要素,包括SSD云盘的IOPS、吞吐量和访问时延。并据此从定性和量化两个方面构建科学的演练效果评估指标体系;

(4)针对现行传统存储的应急预案、政策法规及应急流程进行测试和评估,发现缺点和薄弱环节并进行针对性改进; 发现应急资源准备和保障的缺点和薄弱环节;改进各个环节所涉及组织机构之间的协调和沟通能力;

以云原生思维拓宽演练领域

分布式云存储日益复杂,演练领域的确定,也需要拓宽思路,考虑到诸多传统架构中不存在的不确定因素。比如,机器高负载、网络异常、磁盘 IO、节点调度等故障,以及云平台自身的资源、应用服务、容器以及基础设施各环节导致的问题。

以国内某云存储为例,分析云存储相关的各层次下常见故障场景:

如何建立云存储应急演练体系及进行场景设计?

基于上述的故障场景,云存储的容错机制通常包括:

云磁盘缓存

将数据缓存在云磁盘中,对常用的数据进行备份,因此,当用户再次访问同一数据时,就从缓存中访问,大大缩短了访问时间。在云存储容灾中,将数据信息缓存在容灾系统中,可以实现对数据的备份和快速恢复。

其中,数据容灾的缓存技术,通常有2种实现方式:

第一,本地容灾磁盘的饱和计算,该种方法是指通过对单位时间内数据恢复的次数进行统计与计算,替换恢复次数较少的数据块;

第二,对异地数据信息的恢复计算,所谓的异地数据信息恢复计算是指,通过单位时间内数据块恢复的次数确定是否对异地数据块进行替换。

映射技术

映射技术在一般情况下对云磁盘和程序管理之间形成的映射关系进行处理,它是完成信息储存的主要技术,映射关系的出现导致了数据的自动迁移,而自动迁移是由一种指令的触发而形成的自动化操作,如:数据的自动保存、复制和粘贴、删除。

当云磁盘遭到损坏后,将映射技术应用到数据容灾中,容灾系统就会自动接收到该项指令,并对相关数据进行映射操作。在使用映射技术时,还可对磁盘的透明进行替换,建立云存储环境,然后在云存储环境中将映射的数据进行多项复制和备份到容灾系统中,同时,为了避免磁盘的损坏导致数据的永久不可还原性,在数据备份的过程中可以同时创建多个副本。

存储链路冗余

由于数据容灾系统涉及主节点与冗余备份节点,因此将它们连接起来的互联技术在容灾中十分重要。目前,主节点与冗余备份节点之间的连接主要是光纤通道连接,主要是基于SAN的远程复制,即通过光纤通道FC,把2个SAN连接起来,进行远程复制。当灾难发生时,由备份数据中心替代主数据中心保证系统工作的连续性,这种远程容灾备份方式存在的一些缺陷是:实现成本高,设备的互操作性差。

数据连续性保护(CDP)

Continuous Data Protection(CDP)是一个实时的数据备份系统,它自动将应用数据的所有变化实时记录下来。它的关键是将每一个应用数据的变化加上了时间索引。这样,当出现数据丢失、数据损坏或者安全问题时,就可能恢复到最近的完好数据。CDP技术不断进步,在数据损耗的情况下,其允许快速的数据恢复,并把数据还原到生命周期任一指定点。

三、云存储演练流程及应急预案的建立

完善演练程序流程

目前在传统架构的应急演练流程中,企业已意识到应急演练的重要作用,希望通过演练提升自身的应急响应能力。然而在云存储也缺少规范化的演练程序,容易出现演练方案不合理、演练脚本不细致、人员培训不到位、保障准备不充分等问题,导致云存储的演练质量达不到预期要求。针对此问题,应针对云架构的特点,探讨演练持续改进方法和流程,设计一套演练程序管理体系,实现从规划、设计、实施到评估和改进的全方位管理,逐步完善云存储的应急演练流程,使其更有效地验证应急预案的科学性、可行性、有效性。

评估IaaS层、PaaS层是否健壮

通过模拟底层的基础设施或者平台资源负载,验证调度系统的有效性;模拟依赖的分布式存储不可用,验证系统的容错能力;模拟调度节点不可用,测试调度任务是否自动迁移到可用节点;模拟主备节点故障,测试主备切换是否正常。

衡量容器及微服务的容错能力

通过模拟调用延迟、服务不可用、机器资源满载等,查看发生故障的节点或实例是否被自动隔离、下线,流量调度是否正确,预案是否有效,同时观察系统整体的QPS或RT是否受影响。在此基础上可以缓慢增加故障节点范围,验证上游服务限流降级、熔断等是否有效。最终故障节点增加到请求服务超时,估算系统容错红线,衡量系统容错能力。

验证容器编排配置是否合理

通过模拟杀服务Pod、杀节点、增大Pod资源负载,观察系统服务可用性,验证副本配置、资源限制配置以及Pod下部署的容器是否合理。

验证监控告警的时效性

通过对系统注入故障,验证监控指标是否准确,监控维度是否完善,告警阈值是否合理,告警是否快速,告警接收人是否正确,通知渠道是否可用等,提升监控告警的准确和时效性。

丰富演练场景,创建基于云存储的应急预案

演练场景可以说是业务连续性预案中最为核心的内容。在云架构模式下,针对云存储的演练场景,根据每个故障领域确定演练场景,每个场景下设置演练模板和脚本。再发起演练阶段,只需要选择好演练场景,即可发起。

云存储故障演练可适用于以下典型场景:

1、云存储部署在不同的云平台或者混合云(包括公共云及专有云)场景中,两朵云同时提供服务,灾难场景下进行快速切换,需要统一的容灾管控并确保数据一致性。

2、不同类型的云存储设备,包括文件存储、对象存储、块存储。

针对不同类型的云存储类型及故障场景建立不同的应急预案:

场景一:云存储集群中,单台设备故障无法正常使用

使用技术:数据连续性保护技术(CDP)

RPO =1Day (可恢复 1 天前的备份副本);RTO = 2-3Hour(200G 数据需恢复需 10Min)。

业务恢复步骤:

选择存储卷及备份副本,完成云存储及业务恢复。

场景二:云服务中的文件存储误删除或丢失

使用技术:云磁盘缓存技术

RPO =1Day (可恢复 1 天前的文件);RTO = 30Min-2Hour(200G 数据需恢复需 10Min)。

业务恢复步骤:

选择虚拟机及备份副本,确认丢失文件的路径,选择恢复的目标,完成丢失文件的恢复。

场景三:对象存储损坏或丢失

使用技术:备份一体机 DP 进行恢复

RPO =1Day (可恢复 1 天前的文件);RTO = 30Min-2Hour(200G 数据需恢复需 10Min)。

业务恢复步骤:

选择数据库副本文件进行数据恢复,恢复后确保数据完整性及数据库可用性。

场景四:核心业务系统发生宕机无法快速恢复

使用技术:通过 RP 技术进行恢复

RPO = 30sec ;RTO = 5min。

业务恢复步骤:

选择相应的时间点,进行容灾切换,将备机直接开启,并确认业务是否可以使用。

四、总结

云存储的演练场景是整个演练体系中非常重要的环节,将同业务系统的所有云磁盘放置在一致性组下,业务恢复时选择测试选项。容灾恢复软件会将一致性组下灾备的业务系统全部开启,并允许读写,同时将这些虚机放置在一个孤立的网络下,确保不会对生产环境造成影响。然后由业务人员对灾备的业务系统进行测试,确保灾备业务系统的可用。

针对云存储的应急切换演练能够显著减少和预防企业在云架构模式下发生安全事件,成为企业在数字化转型时代,构建业务连续性方面需要考虑的重要环节,也是减少损失和影响的重要手段之一,受到各行业的高度重视。然而与IT传统架构在应急演练方面的所具备的成熟体系和经验相比,在云架构模式下,对云存储的应急演练起步较晚且存在众多不足,亟需从标准体系、演练领域、演练流程、演练形式、人才等角度进行完善、创新,实现工业信息安全事件应急处置能力的有效提升。

作者:willow,某商业银行系统工程师,专注于银行基础架构设计、系统网络规划与运维管理工作。在虚拟化、容灾备份、自动化运维领域有着丰富的项目实践经验。