云原生时代,阿里云 ESSD 快照服务 助力企业级数据保护( 四 )


云原生时代,阿里云 ESSD 快照服务 助力企业级数据保护
文章图片

文章图片
对数据库应用使用2块盘,2个客户端 , 容量为4TB , 随机写 , iodepth=16 , jobs=1,写入块大小16KB的测试数据库高IOPS场景中 , 快照创建过程中对IO影响测试 , 友商1及友商2的快照创建过程中对IO的性能影响几乎增加了1到3倍 。
云原生时代,阿里云 ESSD 快照服务 助力企业级数据保护
文章图片

文章图片
ESSD云盘快照数据的一致性类型主要分为崩溃一致性和应用一致性 。崩溃一致性要求文件系统及应用程序具有宕机恢复能力 , 其特点是恢复点目标RPO低 , 业务影响小 。但在以下场景无法满足数据备份可靠性高及秒级恢复时间点目标RTO:原子性缺陷风险:文件系统及数据库应用实现事务原子性的实现具有一定的难度 , 可能存在缺陷 。系统顶级会议USENIX上发表的《AllFileSystemsAreNotCreatedEqual》一文阐释了应用程序及内核保证原子性可能存在实现缺陷 。数据丢失风险:主流文件系统默认以性能优先方式工作,崩溃一致性备份存在数据丢失风险 。Linux上ext4文件系统默认数据写入模式为ordered模式 , 文件系统校验修复过程存在数据丢失风险;数据库应用配置为性能优先 , 业务数据有丢失风险 。生成时间长及影响大:传统文件级物理备份方式及备份代理方式依赖于逻辑卷快照的生成 , 耗时长及系统影响大 。备份代理需要安装内核驱动 , 兼容性差及维护成本高;文件备份过程需要读取数据 , 耗费系统CPU及IO资源 。应用一致性快照仅在生成一致性时间点与应用互通 , 无增量数据生成及备份读写操作 。
实现原理:与传统备份方式相比 , 应用一致性快照对用户的价值在于提供云原生的无代理应用一致性快照 , 简化了客户使用传统备份方式所产生的:资源消耗 , 发布复杂性、软件兼容性 , 内核开发 , 软件维护的成本 。采取跨平台插件与专有一致性组件相结合的方式 , 基于文件系统内核及Windows上的VSS机制实现快照期间IO及应用事务的数据静默 , 达到企业应用程序在存储快照中的数据一致性要求 。所采取的生成协议基于影响时长自动恢复IO影响 , 快照一致性类型取决于创建协议提交结果及应用状态 , 优化从上层应用到底层存储的链路长度及一致性组件性能 , 将IO影响时长降低到秒级 。创建频率间隔可根据业务要求做到文件系统一致性秒级完成创建及分钟级应用一致性快照间隔 。
云原生时代,阿里云 ESSD 快照服务 助力企业级数据保护
文章图片

文章图片
从崩溃一致性到应用一致性 , 从单盘一致性快照到多云盘组快照的一致性 , ESSD快照的一致性分类实现完全对标业界块存储公有云全类型的快照一致性分类 。从安全风险及应用支持可扩展性上与友商实现对比 , 实现的原生无代理快照的优势:无常驻服务 , 无公网IP地址及端口开放风险 , 角色安全授权 , 无额外内核驱动参与;支持动态发现逻辑卷及企业应用 。基于ESSD云盘存储快照 , 无代理备份 , 无需维护内核驱动 , 虚拟机内部无数据读取搬运 。
云原生时代,阿里云 ESSD 快照服务 助力企业级数据保护
文章图片

文章图片
通过实际对国内外主要云厂商的快照创建时长及IO影响时长测试 , 基于ESSD系统盘及数据盘的SQLServer数据库应用能够实现秒级写IO阻塞及分钟级快照间隔 , 应用一致性快照的创建时长比友商降低了2到3倍 。应用一致性的整机恢复 , 避免崩溃一致性快照恢复时日志重放过程 , 从而提高了数据库应用的启动速度 。