Ceph对象存储之RGW
2017-02-05
Ceph RGW简介 #
Ceph RGW(即RADOS Gateway)是Ceph对象存储网关服务,是基于LIBRADOS接口封装实现的FastCGI服务,对外提供存储和管理对象数据的Restful API。 对象存储适用于图片、视频等各类文件的上传下载,可以设置相应的访问权限。目前Ceph RGW兼容常见的对象存储API,例如兼容绝大部分Amazon S3 API,兼容OpenStack Swift API。
...Ceph RGW(即RADOS Gateway)是Ceph对象存储网关服务,是基于LIBRADOS接口封装实现的FastCGI服务,对外提供存储和管理对象数据的Restful API。 对象存储适用于图片、视频等各类文件的上传下载,可以设置相应的访问权限。目前Ceph RGW兼容常见的对象存储API,例如兼容绝大部分Amazon S3 API,兼容OpenStack Swift API。
...Ceph可以同时提供对象存储RADOSGW、块存储RBD、文件系统存储Ceph FS。 RBD即RADOS Block Device的简称,RBD块存储是最稳定且最常用的存储类型。RBD块设备类似磁盘可以被挂载。 RBD块设备具有快照、多副本、克隆和一致性等特性,数据以条带化的方式存储在Ceph集群的多个OSD中。
...从Ceph官方文档摘录的架构图如下。RADOS是Ceph中最关键的部分,RADOS是一个支持海量对象的分布式对象存储。
RADOS主要由两部分组成:
在物理结构上RADOS是由大量的存储节点组成,每个节点拥有自己的CPU、内存、硬盘、网络等硬件资源,并运行着操作系统和文件系统,OSD集群就是这些存储节点。、 而节点管理和数据分发策略都由Monitor负责,并为Client提供存储接口。
...配置各个节点的host文件:
1192.168.61.31 c0
2192.168.61.31 c1
3192.168.61.32 c2
4192.168.61.33 c3
管理节点c0上配置Ceph yum源 /etc/yum.repos.d/ceph.repo
1[ceph-noarch]
2name=Ceph noarch packages
3baseurl=https://download.ceph.com/rpm-jewel/el7/noarch
4enabled=1
5priority=2
6gpgcheck=1
7gpgkey=https://download.ceph.com/keys/release.asc
更新软件库并安装 ceph-deploy
...Ceph是一个分布式存储系统,可以提供块存储RBD(Rados Block Device),对象存储RADOSGW(Rados Grateway)、文件系统存储(Ceph Filesystem)。 Ceph消除了对系统单一中心节点的依赖,实现了无中心结构的设计思想。
...Kubernetes的Persistent Volume是对存储的抽象,这个抽象包含两个资源:
PV是集群中的一块网络存储,也是Kubernetes集群的一种资源。 Pod的Volume与PV的区别是:Volume的生命周期和Pod相同,Pod被删除时,Volume和保存在Volume中的数据就被删除了;对于PV,即使挂载PV的Pod被删除了,PV仍然存在,PV上的数据也还在。
...Ceph集群安装完成后,默认的Pool是rbd:
1ceph osd lspools
20 rbd,
一个Ceph集群可以有多个pool,pool是逻辑上的存储池。不同的pool可以有不一样的数据处理方式,例如replica size, placement groups, crush rules,snapshot等等。
...