Ceph快照详解——使用,原理与实现

Ceph快照功能基于RADOS实现,但是从使用方法上分成三种情况:

  1. Pool Snapshot:对整个Pool打快照,该Pool中所有的对象都会受影响。
  2. Self Managed Snapshot:用户管理的快照,Pool受影响的对象是受用户控制的,这里的用户往往是应用,如librbd。常见的形式就是针对某一个rbd卷进行快照。
  3. 用于CephFS的快照。

其中基于CephFS的快照由于CephFS一直是不稳定的功能所以默认关闭并且被描述为实验性质的功能,不推荐使用。即使是在CephFS第一个正式版本的Jewel(2016-06)中,CephFS-snapshot仍然是不推荐使用的功能。

本文将以rbd快照为主对Ceph快照从使用方法到实现原理讲解,cephfs快照的一些细节会作为补充涉及。本文参考了大量的前辈的博客,具体链接见附录。另外实现原理方面会补充部分代码层的实现细节,展示的示例代码引自Ceph 10.2.1。能力所限,可能会有错误,欢迎指正。

Read More

软件定义存储与分布式存储产品调研

1.概念与简介

本文对主流企业的软件定义存储进行基本的调研,主要工作集中于展示这些产品的功能及功能的对比。文章末尾会附上相关产品的技术白皮书/官方网站。

软件定义存储的定义到目前为止还存在着争议,各大企业都结合自己的产品对这一概念进行解释,不过总的思路都是:更多地由软件来驱动并控制硬件资源。

Read More

猴子都能懂的ISCSI参考手册(基于CentOS 7)

1.前言

近段时间iscsi用得蛮多的,奈何这东西好用的中文资料异常之少,大部分又还是Ubuntu的,Centos下安装要麻烦许多,尤其是有添加模块/编译安装的需求的时候,干脆自己整理了一个文档。本文主要包含以下内容:
ISCSI自动安装,ISCSI常见命令,ISCSI常见错误信息,ISCSI挂载Ceph卷与模块扩展和编译安装,以及参考资料。

Read More

OpenStack虚拟机增量快照(基于qemu外置快照)

##实践内容
寻找对通过OpenStack建立的虚拟机进行增量快照,并且使得这些快照可以备份在远程的方法。

##技术方案
通过研究了解到Nova自带的快照功能并不支持增量快照,每次快照会将修改的内容与基础镜像合并然后上传到存储后端,然后决定选择特定的hypervisor进行该功能的实现,本文选取qemu作为后端hypervisor。

通过研究发现Centos 7默认的qemu-kvm版本(1.5.3)不支持外部快照,而内部快照的增量对于备份快照并无价值。经过查阅资料决定通过编译源码的方式安装较新的qemu(2.4.1)来进行外部快照。通过外部快照对虚拟机进行快照并得到保存快照信息的镜像文件,最后通过快照合并功能得到需要包含还原信息的镜像从而达到备份的效果。

Read More