标签(空格分隔): 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. js 小秘密

    1.RegExp 对象方法 test检索字符串中指定的值.返回 true 或 false. 支持正则表达式的 String 对象的方法

  2. shell read

    #!/bin/bash read -p "Enter your account:" acct #提示用户输入用户名read -s -p "Enter your passw ...

  3. python random使用生成随机字符串

    应用python random标准库做一个随机生成密码的程序,可以随机生成任意多个字符.(基于python2.7,如果是python3需要修改下) 案例: #-*-coding:utf-8 -*-#a ...

  4. 复制文件夹的方法 .net

    void CopyDirectory(string SourcePath,string DestinationPath) { //创建所有目录 foreach(string dirPath inDir ...

  5. day26 CRM search && 增删改查

    代码:https://github.com/liyongsan/git_class/tree/master/day26/LuffyCRM ORM查询之Q学习 http://www.cnblogs.co ...

  6. Flask安装配置

    倒腾了一下午了,还是不太顺利,顺便记录一下. 硬件环境:win8.1 64位 + python2.7.9 32位 安装easy_install 需要先下载ez_setup.py(需要复制该链接中的内容 ...

  7. 28-THREE.JS 扇形圆形

    <!DOCTYPE html> <html> <head> <title></title> <script src="htt ...

  8. 【python】self用法详解

    在介绍Python的self用法之前,先来介绍下Python中的类和实例我们知道,面向对象最重要的概念就是类(class)和实例(instance). 类是抽象的模板,比如学生这个抽象的事物,可以用一 ...

  9. mongodb倒排索引

    这周主要都花时间搞mongodb上了,业务场景是上游产出几个城市的全量道路code值,每个城市的数据量大概在100w~200w之间,每条数据对应好几个feature,形如: { code: 0, fe ...

  10. NSSet基本使用

    int main(int argc, const char * argv[]) { @autoreleasepool { //创建一个集合对象 注:如果集合中写了两次或多次同一个对象 打印只能看到一个 ...