基于ceph RBD的Iscsi target实现分析
runsisi AT hust.edu.cn
2015/06/12
本文总结基于ceph存储后端的iSCSI target实现,针对几种可能的实现思路进行分析,并输出本文档,本文内容组织结构如下:
1. 描述本文的目的及内容;
2. iSCSI使用ceph作为存储后端的基本实现思路;
3. 分别阐述几种可能的实现方式,分析其各自的特点和可能存在的一些技术障碍;
4. 最后简单总结全文。
1. 问题提出
ceph作为一个真正意义上的统一存储系统,有着很好的应用前景,但到目前为止有多种原因限制了其在传统存储应用领域真正大范围的应用,如客户端仅支持GNU/Linux系统,内核态客户端实现也仅会合入高版本的内核中等。而对于iSCSI这种传统的存储应用而言,由于客户端配置简单且足够通用,常见的各种系统(包括操作系统和应用系统)一般都对iSCSI有很好的支持,因此为了扩大ceph的应用范围,特别是应对只支持iSCSI的系统,ceph必须通过某种途径实现对iSCSI的支持。
2. 基本思考方向
ceph集群目前支持三种形式的存储接口:文件、对象、块,其中块接口(即RBD)与SCSI块设备读写所要求的接口一致,因此可以基于ceph的RBD提供SCSI存储系统后端,当然如果有足够信心的话也可以完全抛弃ceph提供的这三种基础接口,而在原始的RADOS接口上开发新的块接口,当然除非原始的RBD接口有重要缺陷,否则暂时还看不到重新发明轮子的必要,注意后文的讨论都将基于这一基本假设。
/Files/runsisi/基于ceph-RBD的iSCSI-target实现分析.pdf