基于ceph源码的rpm编译、部署、升级、清理说明

在之前写的《ceph-ansible安装部署指南(centos-7.6)》中,主要是直接使用社区发布的release版本,进行部署与安装。但大部分情况是,开发人员自己进行了二次开发或其他代码修改,那每次部署时还使用社区发布的版本部署后再手动替换就很不方便。所以本文档针对这种自编译的Ceph工程提供编译和部署的方式和说明。

首先确定环境可以正常编译Ceph代码,确定方法就是直接在Ceph代码中运行:

bash install-deps.sh

将所有需要安装的依赖都装成后,运行:

bash do_cmake.sh

生成build目录未报错,说明依赖均已安装完成,可以开始下面的rpm编译和部署过程。
部署的版本号是拿社区v14.2.20为例,实际编译时版本号可以修改为其它,主要是需要ceph.spec文件。

<一> 编译rpm包

一、 获取版本信息

下载:

wget https://download.ceph.com/tarballs/ceph-14.2.20.tar.gz

解压后,获取ceph.spec文件。

二、 获取源码

源码可以直接使用我们自己维护的Ceph代码:

git clone XXXXX

三、 安装依赖

安装rpmbuild需要的依赖:

yum install gcc make python-devel openssl-devel graphviz autoconf automake rpm-build redhat-rpm-config libtool

四、 创建rpmbuild目录结构

mkdir rpmbuild/{
   
   BUILD,SOURCES,SPECS,RPMS,BUILDROOT} –pv

或直接rpmdev-setuptree

五、 压缩代码为bz2包

tar jcvf ceph-14.2.20.tar.bz2 ceph-14.2.20/

六、 拷贝ceph.spec到rpmbuild/SPEC中

七、 拷贝ceph-14.2.20.tar.bz2到rpmbuild/SOURCE中

八、 开始编译及生成rpm包

rpmbuild -ba ~/rpmbuild/SPECS/ceph.spec

生成的rpm包均在rpmbuild/RPMS下。

<二> 使用ceph-ansible部署自编译rpm包

一、 挂载源目录

A、在某个非ceph节点的机器根目录下,新建mgtv_ceph_source等一系列目录:

mkdir –p /mgtv_ceph_source/rpm-nautilus/el7

B、将编译好的rpm包,放到/mgtv_ceph_source/rpm-nau

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值