文章作者:宋贞,云杉网络高级研发工程师
Ceph生成差量文件的三种方式
1)导出某个image从创建到此刻的变化 例如,将pool/image1从创建到此刻的差量保存至image1diff文件
rbd export-diff pool/image1 image1diff
2)导出某个image从创建到某快照时刻的变化 例如,将pool/image1创建时和快照snap1的差量保存至image1s1diff文件
rbd export-diff pool/image1@snap1 image1s1diff
3)导出某个image此刻和某快照时刻的变化 例如,将现在pool/image1和快照snap1的差量保存至image1s1diff2文件
rbd export-diff pool/image1 –from-snap snap1 image1s1diff2
Ceph导入差量文件的三种方式 对应生成差量文件的三种方式,有三种导入差量文件的方式。导入的前提是先创建一个image2,然后将diff文件导入这个image。
1)导入image从创建到某一时刻的diff
rbd import-diff image1diff pool/image2
此时,image2和生成diff时image1相同
2)导入image从创建时到某快照时刻的diff
rbd import-diff image1s1diff pool/image2
此时,image2和创建snap1后的image1相同,即image2也有一个叫做snap1的快照
3)导入image从某快照时刻到某时刻的diff
rbd import-diff image1s1diff2 pool/image2
执行的前提是image2有一个叫做snap1的快照
第一次备份
1. 在备份中心创建一个image作为base
rbd create dest-pool/image1 -s 1
2. 在主数据中心创建一个image的快照
rbd snap create source-pool/image1@snap1
3. 以第二种导出方式生成差量文件
rbd export-diff source-pool/image1@today image1-snap1-diff
4. 将导出的差量文件传输到备份中心,使用scp或netcat工具 5. 以第二种导入方式将差量文件导入base image
rbd import-diff image1-snap1-diff dest-pool/image1
6. 备份完成
第二次之后的备份
1. 在主数据中心查找image最近一次的快照,并确认备份中心是否存在同名快照
rbd snap ls dest-pool/image1 | grep snap1
2. 若存在,在主数据中心创建image的新快照
rbd snap create source-pool/image1@snap2
3. 以第三种导出方式生成差量文件,所用的snap即第1步中找到的快照snap1。每次的diff都是相对于上一次备份而言的,即实现了增量备份
rbd export-diff --from-snap snap1 source-pool/image1@snap2 image1-snap1-snap2-diff
4. 将导出的差量文件传输到备份中心 5. 以第三种导入方式将差量文件导入image
rbd import-diff image1-snap1-snap2-diff dest-pool/image1
6. 备份完成
创建备份时,会在原始image上创建一个快照,通过比较新建快照和上一次备份的快照形成差量文件,将这个差量文件导入到backup image即完成了备份。由上面Ceph处理差量文件的方式可知,这个快照也会存在于backup image上,也就是说每个备份对应的是backup image上的一个快照。数据去重压缩 考虑到不同数据中心间数据传输的带宽压力,运维命令将对备份文件进行压缩去重处理后,再发送到备份数据中心。选取三种压缩算法的对比结果如下(以35G的差量文件为例)。基于压缩比例和压缩时间的综合考虑,2Cloud采用gzip算法作为压缩算法。
快照数量管理 考虑到快照数量对磁盘性能的影响,运维命令会在备份完成后将虚拟机前一天的快照删除,仅保留当天快照用于下次备份时生成差量文件。
电信\IDC运营商为企业提供云端的灾备服务 面对用户从托管转向云,电信\IDC运营商纷纷建设和开拓云业务,除了基础云服务之外,可发挥其多地域数据中心及带宽的优势,推出云环境下针对虚拟机的异地灾备服务,提供更高SLA的数据保障。
企业私有云中关键数据的灾备与恢复 传统的灾备方案依托SAN存储及专业软件来实现。相比传统方案,运用x86服务器本地磁盘,基于Ceph RBD的快照技术即可实现异地灾备;同时,Ceph分布式存储的多副本机制,在本地数据中心也能保障数据高可用,从而极大地降低企业实现数据全面保护的门槛和成本。