0、如果先前安装过ceph,则先卸载

sudo stop ceph-all                                                                         //停止所有CEPH进程
ceph-deploy uninstall [{ceph-node}] //卸载所有ceph程序
ceph-deploy purge [[ceph-node} [{ceph-node}] //删除ceph相关的包
ceph-deploy purgedata {ceph-node} [{ceph-node}] // 删除ceph相关的包
ceph-deploy forgetkeys //删除key

  

1、修改/etc/hosts,使主机名对应本机的IP地址(若选择回环地址127.0.0.1貌似解析不了域名)。注:以下主机名都为monster,读者需将其改为自己的主机名

10.10.105.78    monster
127.0.0.1 localhost

2、创建目录ceph并进入

3、准备两个块设备(可以是硬盘也可以是LVM卷),这里我们使用LVM

   dd if=/dev/zero of=ceph-volumes.img bs=1M count=8192 oflag=direct
sgdisk -g --clear ceph-volumes.img
sudo vgcreate ceph-volumes $(sudo losetup --show -f ceph-volumes.img)
sudo lvcreate -L2G -nceph0 ceph-volumes
sudo lvcreate -L2G -nceph1 ceph-volumes
sudo mkfs.xfs -f /dev/ceph-volumes/ceph0
sudo mkfs.xfs -f /dev/ceph-volumes/ceph1
mkdir -p /srv/ceph/{osd0,osd1,mon0,mds0}
sudo mount /dev/ceph-volumes/ceph0 /srv/ceph/osd0
sudo mount /dev/ceph-volumes/ceph1 /srv/ceph/osd1

  根据上面的命令我们创建了两个虚拟磁盘ceph0和ceph1并分别挂载到/srv/ceph/osd0和/srv/ceph/osd1目录下

4、安装ceph-deploy

sudo apt-get install ceph-deploy

5、创建工作目录,进入并创建集群

   mkdir ceph-cluster
cd ceph-cluster
ceph-deploy new monster //创建一个新集群,并写入CLUSTER.conf和keyring等等

  因为我们是在单节点上工作,因此需要修改一下配置文件

echo "osd crush chooseleaf type = 0" >> ceph.conf
echo "osd pool default size = 1" >> ceph.conf
echo "osd journal size = 100" >> ceph.conf

6、安装Ceph基本库(ceph,ceph-common, ceph-fs-common, ceph-mds)

ceph-deploy install monster

  不过我通过上面的方法安装好像有点问题......于是直接apt-get install ceph也行

7、创建一个集群监视器

ceph-deploy mon create monster

8、收集远程节点上的密钥到当前文件夹

ceph-deploy gatherkeys monster

9、增加OSD,就在我们挂载虚拟磁盘的目录

ceph-deploy osd prepare monster:/srv/ceph/osd0
ceph-deploy osd prepare monster:/srv/ceph/osd1

10、激活OSD

sudo ceph-deploy osd activate monster:/srv/ceph/osd0
sudo ceph-deploy osd activate monster:/srv/ceph/osd1

  [ceph_deploy][ERROR ] RuntimeError: Failed to execute command: ceph-disk -v activate --mark-init upstart --mount /srv/ceph/osd0

  激活时遇到如上所示的错误时,使用命令 sudo chown ceph:ceph /srv/ceph/osd0解决(不过之前做过osd的磁盘,遇到这个问题用这种方法貌似解决不了....)

11、复制 admin 密钥到其他节点

ceph-deploy admin monster

12、验证

sudo ceph health
sudo ceph osd tree

  

Ubuntu 14.04 单机安装 CEPH的更多相关文章

  1. Ubuntu 14.04 中 安装elasticsearch2.*+logstash2.*+kibana

    在Ubuntu 14.04 上安装单机版ELK 2.*(脚本化) 1.判断是否为root权限 if [ "${UID}" -ne 0 ]; then echo "You ...

  2. Ubuntu 14.04中安装最新版Eclipse

    Ubuntu 14.04中安装最新版Eclipse 来源:Linux社区    作者:Linux 1.安装OpenJDK Java 7 如果你的系统中没有安装Java,我们需要按照如下步骤事先安装好 ...

  3. Ubuntu 14.04下安装功能强大的屏幕截图软件 Shutter

    [注释]试用了一下,果然很强大,牛逼 一款功能强大的屏幕截图软件——Shutter,Shutter最基本的就是截图功能了,在设计上可以自由选定区域,同时选定之 后依然可以通过上下左右四个地方来改变选区 ...

  4. 翻译:在Ubuntu 14.04上安装FTP服务器的方法

    说明: 1.原文地址:http://www.krizna.com/ubuntu/setup-ftp-server-on-ubuntu-14-04-vsftpd/ 2.今天要做一个网络日志的迁移程序,搬 ...

  5. 分布式进阶(二)Ubuntu 14.04下安装Dockr图文教程(一)

    当前,完全硬件虚拟化技术(KVM.Xen.Hyper-V 等)能在一个物理主机上很好地运行多个互相独立的操作系统,但这也带来一些问题:性能不佳,资源浪费,系统反应迟缓等.有时候对用户来说,完全的硬件虚 ...

  6. Ubuntu 14.04 下安装 OpenCV

    参考: Installation in Linux Error compiling OpenCV, fatal error: stdlib.h: No such file or directory 图 ...

  7. Ubuntu 14.04 上安装 Gurobi

    参考: Installing Gurobi 7 on Linux Ubuntu 14.04 上安装 Gurobi 1.在gurobi上创建一个账户,并登陆: 2.从gurobi optimizer上下 ...

  8. 怎样在Ubuntu 14.04中安装Java(转)

    想知道如何在Ubuntu 14.04中安装Java?安装Java肯定是安装Ubuntu 14.04后首先要做的几件事情之一(见http://www.linuxidc.com/Linux/2014-04 ...

  9. ubuntu 14.04 lts安装教程:u盘安装ubuntu 14.04 lts步骤

    绿茶小编带来了ubuntu 14.04 lts安装教程,下文详细讲解了u盘安装ubuntu 14.04 lts的步骤,很简单,只需要一个工具就能够轻松使用u盘安装ubuntukylin 14.04系统 ...

随机推荐

  1. No.012:Integer to Roman

    题目: Given an integer, convert it to a roman numeral.Input is guaranteed to be within the range from ...

  2. PHP异常与错误处理机制

    先区别一下php中错误 与 异常的概念吧 PHP错误:是属于php程序自身的问题,一般是由非法的语法,环境问题导致的,使得编译器无法通过检查,甚至无法运行的情况.平时遇到的warming.notice ...

  3. [js开源组件开发]js多选日期控件

    js多选日期控件 详情请见:http://www.lovewebgames.com/jsmodule/calendar.html 它的github地址:https://github.com/tianx ...

  4. access中根据一个表创建另一个

    access中根据一个表创建另一个 SELECT * INTO newTableFROM zD_qlr; SELECT * into mdFROM zd IN 'E:\fz\高阳\大姚\fz\bz\b ...

  5. 参加2015年TOP100会议的零散笔记

    2015年出差很少,感到整个技术都已经荒废了,收到12月份TOP100的会议通知后,还是去充点电吧,不然心慌啊.对于软件大会这种大杂烩式的会议已经没有多少兴趣了,看看这个TOP100组织得有何不同? ...

  6. Python: PDB命令

    1. where(w) 找出当前代码运行位置 2. list(l) 显示当前代码的部分上下文 3. list <line number> 显示指定行的上下文 4. list <lin ...

  7. UIButton在不同状态下显示不同背景色

    参考自:原文地址(内容与原文并无区别,只是自己以后方便使用整理了一下) 1.UIButton的background是不支持在针对不同的状态显示不同的颜色. 2.UIButton的backgroundI ...

  8. 快速排序(java版)

    public class QuickSortTest{ //比较与交换 private static int partition(int[] source, int low, int hight) { ...

  9. iOSQuartz2D-04-手动剪裁图片并保存到相册

    实现效果 操作步骤 绘制一个矩形框,弹出一个alertView,提示是否保存图片 点击"是",将图片保存到相册 在相册中查看保存的图片 效果图 实现思路 在控制器的view上添加一 ...

  10. (第五章)java面向对象之this的作用总结

    this关键字总是指向调用该方法的对象. this可以代表任何对象,当this出现在某个方法体中时,它所代表的对象是不确定的,但它的类型是确定的,它所代表的对象只能是当前类的(在那个类中就是那个类), ...