Ceph开发环境搭建

虽然ceph官方给出了ceph的部署文档,但部署一个集群还是要花费一些时间的。对于开发目的或者是实验的环境,没必要部署一个新的集群。ceph社区针对这个问题提供了一个非常友好快速的方法。利用vstart迅速创建一个几乎与实际环境一样的虚拟环境。

1 准备工作

准备代码使用的目录,注意目录要足够大,保证有100G以上可用空间(编译过程占用很多磁盘)


$ git clone https://github.com/ceph/ceph.git
$ git checkout v12.2.5 -b v12.2.5
$ git submodule update --init --recursive

2 编译vstart所需二进制文件

ceph源码根目录执行,默认如果有2个以上的CPU,只使用一半数量的CPU进行编译,可以编辑下这个脚本文件,把get_processors里面的“expr $(nproc) / 2”改成“expr $(nproc) / 1”,使用全部CPU进行编译

$ ./run-make-check.sh

run-make-check.sh 脚本会安装 Ceph 依赖,一切都在调试模式下编译、并进行一系列测试,以验证结果正如所需。

3 启动集群

Ceph 包含一个名为 vstart.sh 的脚本,可以让开发者们在开发系统上用最简部署快速地测试代码。编译成功后,用下列命令开始部署:

$ cd src
$ ./vstart.sh -d -n

使用上面面的命令vstart会给我们创建一个3 monitor,3 mds(1 active,2 stanby),3 osd(3 副本)的集群。

3.1 检查集群状态

[root@localhost build]# ./bin/ceph -s

3.2 检查mds

[root@localhost build]# ./bin/ceph mds dump --format=json-pretty

3.3 检查pool状态

[root@localhost build]# ./bin/ceph osd pool ls detail

3.4 集群配置文件

可以手动修改下面的配置文件,比如日志级别来达到我们想要的效果。

[root@localhost build]# cat ./ceph.conf

4 停止集群

$ ./stop.sh

Reference