标签(空格分隔): ceph,ceph安装,ceph运维


centos7系统,aarch64架构下安装最新版本的ceph(13.0.0),x86架构的环境无需修改脚本即可。

一,物理环境:

内核版本:

[root@localhost ~]# uname -r
4.11.0-3.hxt.aarch64

可以看到内核版本是aarch64

操作系统:

[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (AltArch)

可以看到操作系统是arm架构的cenots7

cpu内核数:

[root@localhost ~]# cat /proc/cpuinfo | grep "processor" | wc -l
48

可以看到内核共有48核,make的时候全部用上加快速度,太少的内核数make就会非常非常耗时

内存大小:

[root@localhost ~]# free -g
total used free shared buff/cache available
Mem: 63 0 33 0 29 53
Swap: 15 0 15

可以看到内存为63g,make的时候非常吃内存,一开始是32g可是make到百分之九十多内存耗尽出错,又加了32g才make成功

二,下载源码:

1. 安装git:

[root@localhost ~]# yum install -y git

2.克隆源码:

[root@localhost ~]#  git clone --recursive https://github.com/ceph/ceph.git

此处需要等待较长时间。需要说明的是如果想要使用下面的脚本安装必要的库和工具,那么就必须从git上克隆源码不可。由于公司网速较慢,一开始我通过下载github上提供的ceph的源码压缩包进行安装,而且,网上看到确实有人通过下载压缩包进行源码安装的。结果在安装必要的库和工具这一步就会提示error,发现是检查git版本的问题,通过注释掉这一部分,发现还是不行。也就是说这种方法安装需要修改较多的代码,所以,最简单有效的方法就是git克隆了

三,安装ceph:

安装之前需要根据当前主机的系统和架构修改一下,安装依赖包的脚本才可以

1.修改install_deps.sh:

[root@localhost ~]# vi install_deps.sh

因为主机os为centos7,架构为aarch64,所以需要把脚本中的x86_64修改为aarch64。需要找到下面这一行:

$SUDO yum-config-manager --add-repo https://dl.fedoraproject.org/pub/epel/$MAJOR_VERSION/x86_64/

修改为:

$SUDO yum-config-manager --add-repo https://dl.fedoraproject.org/pub/epel/$MAJOR_VERSION/aarch64/

此处我走了很多弯路,卡在yum源这里很久,最终确认yum源配置和资源库没有问题。可是执行脚本提示缺少一些安装包,我手动下载安装后再次执行脚本出现,nss和nspr相关的版本错误,始终提示required xx版本,installed xx1版本,反正就是当下安装的版本无法被更新。

尝试手动卸载相应的包,然后下载更新的版本安装,结果还是不行。最终问题定位应该就是yum源的问题:因为手动安装了一些非官方rpm包,同时又使用了多个yum源所致。

2.安装必要的库和工具:

先进入ceph目录:

[root@localhost ~]# cd ceph

脚本安装必要的库和工具:

[root@localhost ceph]# ./install-deps.sh

3.编译:

用脚本构建:

[root@localhost ceph]# ./do_cmake.sh

构建成功,进入build目录:

[root@localhost ceph]# cd build

使用全部内核进行make:

[root@localhost build]# make -j48

4.安装:

make成功后进行安装:

[root@localhost build]# make install

确认是否安装成功:

[root@localhost build]# ./bin/ceph -v
*** DEVELOPER MODE: setting PATH, PYTHONPATH and LD_LIBRARY_PATH ***
ceph version 13.0.0-3540-g4b64756 (4b64756166cf3ffcbc114def98fb7953c59ea566) mimic (dev)

至此已经安装成功,下面就可以开始使用了

参考文档:

http://docs.ceph.com/docs/master/install/build-ceph/

源码编译安装ceph的更多相关文章

  1. 源码编译安装 ganesha

    源码编译安装 ganesha 简介 系统环境:CentOS 7.5 ceph:luminous nfs-ganesha:v2.6 stable 安装步骤 安装依赖 首先需要安装编译会用到的公共库 1 ...

  2. 十四.自定义yum仓库、源码编译安装

    pc7:192.168.4.7 1.自定义yum仓库1.1 源码仓库下:/root/tools/other]# createrepo .]# ls ntfs-3g-2014.2.15-6.el6.x8 ...

  3. SSH/SSL 源码编译安装简易操作说明

    环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当 ...

  4. 源码编译安装 MySQL 5.5.x 实践

    1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...

  5. 烂泥:mysql5.5数据库cmake源码编译安装

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...

  6. Centos7.X 源码编译安装subversion svn1.8.x

    说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...

  7. centos6.5环境源码编译安装mysql5.6.34

    centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...

  8. centos 6.5源码编译安装subversion 1.8.10

    一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网 ...

  9. Linux环境PostgreSQL源码编译安装

    Linux环境PostgreSQL源码编译安装 Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 数据存放目录: /var/post ...

随机推荐

  1. 开发中Dialog多弹窗管理

    随着项目的不断迭代,加上产品经理大法(这里加一个弹窗提示,这里加一个引导….)各种弹窗在应用启动时候需要展示, 然而它们出现的时机还有可能重叠.我勒个擦...有没有一种优(tou)雅(lan)的方式来 ...

  2. MailUtils 测试邮件是否发送

    import java.util.Properties; import javax.mail.Message; import javax.mail.Session; import javax.mail ...

  3. python tesseract-ocr 基础验证码识别功能(Windows)

    一.环境 windows 7 x64 Python 3 + 二.安装 1.tesseract-ocr安装 http://digi.bib.uni-mannheim.de/tesseract/ 2.py ...

  4. Lucene快速入门

    1. 什么是lucene lucene是Apache的一个全文检索工具,使用lucene能快速实现全文检索功能.Lucene是一个工具包,你可以调用它的函数, 但它不能独立运行,不单独对外提供服务. ...

  5. MS SQL GUID

    (转自:http://blog.csdn.net/maonongwu/article/details/6327093) GUID介绍 GUID(Global unique identifier)全局唯 ...

  6. PHP内核研究

    深入理解PHP内核:Think In PHP Internals(TIPI)是一个开源项目 ,分享PHP内部实现的细节,如内核,扩展等.官网见:http://www.php-internals.com ...

  7. 《Ubuntu入门基础》第三篇

    创建虚拟磁盘

  8. Linux 工具套件 —— binutils、readelf

    readelf:Linux 下专门针对 ELF 文件格式的解析器: 0. binutils GNU Binutils gnu binutils 一套二进制工具的集合,主要包含:ld(gnu linke ...

  9. (效果二)js实现两个变量值的交换

    ES5: var a = 12,b=13,c; c = a; a = b; b = c; console.log(a,b);//13,12 通过设置第三方变量交换赋值来实现   ES6 var a = ...

  10. 使用 event.preventDefault 拦截表单的提交

    event.preventDefault() 方法 W3C 官方的定义是:取消事件的默认动作,不单单可以拦截表单的提交,<a>标签的跳转, <input>标签的输入等等默认动作 ...