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
- https://www.jianshu.com/p/b6866bf7ad11
- http://docs.ceph.org.cn/dev/quick_guide/
- http://aspirer.wang/?p=1280