1.7 Ceph对象存储
对象存储是一种以对象形式而不是传统文件和块形式存储数据的方法。基于对象的存储已经引起了行业界的大量关注。为灵活地使用它们的巨量数据,这些组织正快速采用对象存储解决方案。Ceph是一个众所周知的真正的对象存储系统。
Ceph是一个分布式对象存储系统,通过它的对象网关(object gateway),也就是RADOS网关(radosgw)提供对象存储接口。RADOS网关利用librgw(RADOS网关库)和librados这些库,允许应用程序跟Ceph对象存储建立连接。Ceph通过RESTful API提供可访问且最稳定的多租户对象存储解决方案之一。
RADOS网关提供RESTful接口让用户的应用程序将数据存储到Ceph集群中。RADOS网关接口满足以下特点。
兼容Swift:这是为OpenStack Swift API提供的对象存储功能。
兼容S3:这是为Amazon S3 API提供的对象存储功能。
Admin API:这也称为管理API或者原生API,应用程序可以直接使用它来获取访问存储系统的权限以管理存储系统。
要访问Ceph的对象存储系统,也可以绕开RADOS网关层,这样更灵活并且速度更快。librados软件库允许用户的应用程序通过C、C++、Java、Python和PHP直接访问Ceph对象存储。Ceph对象存储具备多站点(multisite)的能力,也就是说它能为灾难恢复提供解决方案。通过RADOS或者联合网关可以配置多站点的对象存储。下图展现了Ceph中可以使用的各种API系统。