2019独角兽企业重金招聘Python工程师标准>>>
准备一台机器:
root@test3:~# cat /proc/version Linux version 3.13.0-32-generic (buildd@kissel) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014
一·、下载ceph源码
准备下载ceph的源代码 http://ceph.com/resources/downloads/,初学者尽量在官网下载,如果在git上下载有时可能会缺少文件,导致编译不通过。
二、编译源码
1. 下载源码后,将源码包(ceph-0.94.3.tar.gz)导入到 虚拟机中,然后解压源码包
root@cci-test3:~/blog#:tar -xvf ceph-0.94.3.tar.gz
.............................................
ceph-0.94.3/config.sub#
ceph-0.94.3/py-compile
ceph-0.94.3/README
root@cci-test3:~/blog# ls
ceph-0.94.3 ceph-0.94.3.tar.gz
root@cci-test3:~/blog#
2. 安装ceph需要依赖的的库
root@cci-test3:~/blog#:apt-get install autotools-dev autoconf automake cdbs gcc g++ git libboost-dev libedit-dev libssl-dev libtool libfcgi libfcgi-dev libfuse-dev linux-kernel-headers libcrypto++-dev libcrypto++ libexpat1-dev pkg-config
root@cci-test3:~/blog#:
3. 安装库完成后,进入ceph源码根目录
root@cci-test3:~/blog/ceph-0.94.3#:./autogen.sh
...................
root@cci-test3:~/blog/ceph-0.94.3#:./configure
...............
root@cci-test3:~/blog/ceph-0.94.3#: make -j5
..........
root@cci-test3:~/blog/ceph-0.94.3#:
编译成功,这个编译的时间会持续的比较久
4. 编译代码结束后,进入src目录
root@cci-test3:~/blog/ceph-0.94.3/src/#:MON=1 MDS=0 ./vstart.sh -d -n -x
......
root@cci-test3:~/blog/ceph-0.94.3/src/#:./ceph -s
*** DEVELOPER MODE: setting PATH, PYTHONPATH and LD_LIBRARY_PATH ***cluster 05f0dc34-4a98-498a-9e89-06decaba704chealth HEALTH_OKmonmap e1: 1 mons at {a=192.168.138.95:6789/0}election epoch 2, quorum 0 aosdmap e9: 3 osds: 3 up, 3 inpgmap v2689: 8 pgs, 1 pools, 0 bytes data, 0 objects54178 MB used, 48713 MB / 105 GB avail8 active+clean
root@cci-test3:~/blog/ceph-0.94.3/src/#
5. 调试集群已经启动成功,可以使用命令停止集群
root@cci-test3:~/blog/ceph-0.94.3/src/# ./stop.sh
6. 接下来就可以更改代码了,修改代码后可以重新编译,然后启动集群。查看编译后的集群。
osd目录:~/blog/ceph-0.94.3/src/dev/
log目录:~/blog/ceph-0.94.3/src/out/
总结:按着上面的步骤修改代码调试代码就很方便了,大家可以放开手脚去调试测试代码了。接下来会深入代码去分析,敬请期待