介绍
Ceph是开源的分布式存储系统,Ceph可以部署在多台服务器上,通过多台服务器并行处理来对外提供高性能的读写块。ceph具有良好的可扩展性和可靠性,其应用范围包括块存储 ,文件存储,对象存储。Ceph 存储集群至少需要一个 Monitor、Manager 和 OSD(对象存储守护程序)。
Monitor
Monitor主要功能是维护集群状态的映射,包括监视器映射、管理器映射、OSD 映射、MDS 映射和 CRUSH 映射。这些映射是 Ceph 守护程序相互协调所需的关键集群状态。在Monitor节点上可以通过CEPH命令查看当前集群具体状态。
Manager
Manager负责跟踪运行时指标和 Ceph 集群的当前状态,包括存储利用率、当前性能指标和系统负载。
OSD
CEPH的OSD主要负责存储数据,处理数据复制、恢复、再平衡,并通过检查其他 Ceph OSD 守护程序的检测信号,向 Monitor和Manager提供一些监视信息。
架构
CEPH可以根据不同的应用范围使用不同的方式进行存储,其中对象存储在访问底层radosgw对象主要可以分为两大类:(1)通过cls模块,自己注册回调函数进行访问(2)通过librados,使用librados接口进行访问。
vstart部署
(1)从github下载CEPH 源码。
(2)拉取子模块。 git submoudle update --init --recuresive
(3) 由于编译CEPH需要cmake模块,如果没有安装需要编译安装cmake。
(4)构建CEPH,在ceph目录下执行./do_camke.sh
(5)在构建的build的目录下,执行make,编译ceph。
(6)启动集群:在build目录下执行 MDS=0 MON=1 OSD=1 RGW=1 MGR=1 ../src/vstart.sh --without-dashboard -f -n
(7) 查看集群状态,在bulid目录下执行,bin/ceph -s
(8)可使用SDK或s3cmd等方式将文件存入该集群。