基于滴滴云搭建 Ceph 开发环境

相关依赖包安装

安装依赖包

yum install libtool gcc gcc-c++ libuuid-devel keyutils-libs-devel libblkid-devel redhat-lsb libedit-*
 
yum install libatomic_ops-devel snappy-devel leveldb-devel libudev-devel cryptopp-* fuse-devellibaio-devel xfsprogs-devel automake autoconf boost-devel expat-devel

安装调试依赖包

yum install lttng-tools* lttng-ust* lttng*

下载源码

官网下载 http://download.ceph.com/tarballs/

wget http://download.ceph.com/tarballs/ceph_12.2.2.orig.tar.gz

源码编译

解压 Ceph

tar -xvf ceph_12.2.2.orig.tar.gz
cd ceph_12.2.2

安装官方依赖包

./install-deps.sh
./run-make-check.sh

开始编译

编译源码是个漫长的过程,根据机器配置指定。如果是虚拟机可能需要好几个小时。还会出现各种依赖包缺失的情况,非常耗时。

mkdir build
cd build
cmake ..
make -j40 (可以多核编译加快编译速度)
make install

测试环境部署

启动开发集群

此处要注意,必须在 build 目录下面执行启动脚本,否则一直报缺少 libec_jerasure.so,即使配置到系统变量里面也不行。

load dlopen(/libec_jerasure.so): /libec_jerasure.so: cannot open shared object file: No such file or directory。

启动开发集群

cd build
MON=1 MDS=0 OSD=3  ../src/vstart.sh -d -n -x
 
参数说明:
        -m 指出monitor节点的ip地址和默认端口6789;
        -n 指出此次部署为全新部署;
        -d 指出使用debug模式(便于调试代码);
        -r 指出启动radosgw进程;
        --mon_num 指出部署的monitor个数;
        --osd_num 指出部署的OSD个数;
        --mds_num 指出部署的MDS个数;
        --bluestore 指出ceph后端存储使用最新的bluestore;

停止开发集群

cd build
../src/stop.sh all

猜你喜欢

转载自blog.csdn.net/java060515/article/details/86300498