关于关于Ceph产品化的一些感悟产品化的一些感悟
Ceph作为一款十年历史的开源分布式产品,其稳定性、可用性确实得到业界的普遍认可。2014年我们基于Ceph给用户提供的
一个管理系统,到目前为止仅出现了两次问题,其中一次是硬件问题,一次是使用方式不当的问题。作为一个开源产品,能够
有如此高的稳定性和可用性,这应该就是Ceph能够获得今天的成绩的首要原因。
关于Ceph的优势,这里简单概括如下:
对各种异常考虑的比较完善, 比如网络抖动、去中心化的心跳机制、恢复机制对复杂异常的考虑;
很少因为代码问题导致程序coredump,也没有出现过内存泄漏问题,说明代码质量还是不错的;
高级功能比较全面,支持块、对象、文件,同时支持副本、EC、tier、scrub等高级特性
不过,好的的产品家家相似,不好的产品各各不同,所以今天,我重点和大家讲讲不好的。随着我们服务的企业客户的不断增
加, Ceph真正应用于企业客户不同场景中所遇到的各种问题也逐步开始暴露。
采用Ceph替代传统SAN的烦恼
在2014年到2015年上半年的时候,杉岩利用Ceph主要给客户提供一些替代IP SAN的解决方案,客户希望利用Ceph的高扩展
性、高可靠性提供一个相对规模较大,性价比较好的通用存储池,降低一些数据量较大、低价值数据的存储成本。这时,就遇
到了各种问题:
不支持标准的块接口
Ceph称提供块接口,但其实它的块接口之支持Qemu-KVM,并不是一个传统的SCSI标准块接口,是无法直接应用于
VMware、Windows和Solaris等系统的。这些系统对接的块存储都是类似于FC SAN或者IP SAN这种提供标准SCSI接口的设
备。将Ceph推向这些传统的企业应用是无法实现对接的。
运维管理手段和工具缺乏
这个问题是Ceph目前直接应用于企业客户最大的问题,易用性和易维护性,SageWeil在今年也提出易用性是未来Ceph的重要
改进方向。杉岩在应用与企业客户中遇到各种问题,然后不断完善产品,其中最典型的问题就是各种硬件备件的更换。
在使用传统存储时,当硬件部件出现问题时,企业的IT运维人员希望尽快更换配件,避免出现更加严重的问题,为此一些企业
都有的备件库,当硬件配件出现问题时,运维人员通过更换配置做简单的操作就可以完成配件的更换。而如果直接使用
Ceph,则可能要面临敲一堆的命令才能完成更换的操作,这是Ceph直接作为企业产品无法接受的。
无法实现数据卷的安全隔离需求
传统的企业存储是一个公共资源,上面运行着多种业务应用,为了防止不同业务应用读取或者破坏非自身业务应用的数据,传
统企业存储通过LUN MASKING/CHAP 协议等,实现存储卷的安全隔离。
而Ceph设计用于云平台,所有的RBD对于云平台的每个主机都是可见可操作的,从而实现虚拟机在整个集群的迁移。所以需
要一套在Ceph之上实现一套类似于LUN MASKING的机制,保证不同业务只能看到和访问分配给自己的存储卷。