ceph 安装 http://docs.ceph.com/docs/master/start/quick-ceph-deploy/

1. 系统要求 centos 7

systemctl disable firewalld
systemctl stop firewalld
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

将如下内容写入到 /etc/yum.repos.d/ceph.repo

[ceph-noarch]
name=Ceph noarch packages
baseurl=https://download.ceph.com/rpm/el7/noarch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc

然后执行 yum update && yum install ceph-deploy

2. 相关依赖

yum install ntp ntpdate

3. 环境相关

3.1 需要在 每一个节点 为 ceph 创建用户, 并设置 sudo 权限, 虽然可以拥有不同的用户名,但是这里为了省事都叫 uceph

useradd -d /home/uceph -m uceph
passwd uceph
echo "uceph ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/uceph
chmod 0440 /etc/sudoers.d/uceph

3.2 切到 uceph 用户,让 admin-node 能无密钥 ssh 到各节点

ssh-keygen
ssh-copy-id uceph@{node1}

4. 安装 EPEL

sudo yum install yum-plugin-priorities

5. 至此,admin-node 以及各 node 都准备好了,下面可以通过 admin-node 把 ceph 安装到各 node 中了。

安装到各节点

6. 首先创建集群, 传入 monitor 的节点

mkdir ceph-cluster
cd ceph-cluster
ceph-deploy new node1[, node2...]

这样 ceph-cluster 目录下就有了一些配置文件:

ceph.conf
ceph.mon.keyring
*.log

修改 ceph.conf 配置里面的 public network 10.0.5.0/mask

7. 执行安装

ceph-deploy install node1 node2 node3

如果安装失败就 yum remove epel-release 然后再重新弄

8. 初始化监控

ceph-deploy mon create-initial
# 失败了就多来几次

得到一些 keyring 文件

  • ceph.client.admin.keyring
  • ceph.bootstrap-mgr.keyring
  • ceph.bootstrap-osd.keyring
  • ceph.bootstrap-mds.keyring
  • ceph.bootstrap-rgw.keyring
  • ceph.bootstrap-rbd.keyring

9. 把 admin key 等分发到各 node 这样以后直接执行命令不需要授权啥的了,有相关工具

ceph-deploy admin node1 node2 node3

10. 创建一个 managere daemon (luminous 版本之后的才需要)

ceph-deploy mgr create node1

11. 添加 osd

# parted -s /dev/sdb mklabel gpt 超大硬盘需要先改成 gpt
ceph-deploy osd create node1:sdb node2:sdb
## 以后想再添加硬盘时也是通过这个命令

12. 验证

[uceph@node1 ceph-cluster]$ sudo ceph health
HEALTH_WARN 64 pgs degraded; 64 pgs undersized [uceph@node1 ceph-cluster]$ sudo ceph -s
cluster f8bb8f53-2331-48a7-9529-63389650e247
health HEALTH_WARN
64 pgs degraded
64 pgs undersized
monmap e1: 1 mons at {node1=10.100.86.51:6789/0}
election epoch 3, quorum 0 node1
osdmap e9: 2 osds: 2 up, 2 in
flags sortbitwise,require_jewel_osds
pgmap v18: 64 pgs, 1 pools, 0 bytes data, 0 objects
68392 kB used, 10151 MB / 10217 MB avail
64 active+undersized+degraded

下面是测试验证环节

13. 创建一个 pool

rbd create foo --size 4 --image-format 2 --image-feature layering

rbd 创建文件异常可参考 http://blog.51cto.com/michaelkang/1786309

14. 挂载和格式化

rbd map foo
sudo mkfs.ext4 -m0 /dev/rbd0
mkdir ~/foo
mount /dev/rbd0 ~/foo

15. The End

ceph 安装记录的更多相关文章

  1. 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL

    前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...

  2. 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用

    关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用   工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...

  3. sourceinsight安装记录

    sourceinsight安装记录 此文章为本人使用sourceinsight一个星期之后的相关设置步骤记录和经验记录,以备以后查验,网上的相关资料都也较为完善,但是对于新手还是有一定困难的,所以在这 ...

  4. openerp安装记录及postgresql数据库问题解决

    ubuntu-14.04下openerp安装记录1.安装PostgreSQL 数据库    a.安装         sudo apt-get install postgresql    安装后ubu ...

  5. Matlab安装记录 - LED Control Activex控件安装

    Matlab安装记录-LED Control Activex控件安装 2013-12-01  22:06:36 最近在研究Matlab GUI技术,准备用于制作上位机程序:在Matlab GUI的技术 ...

  6. Arch Linux 安装记录

    Arch Linux 安装记录 基本上参考wiki上的新手指南,使用arch 2014.6.1 iso安装 设置网络 有线网络 Arch Linux 默认开启DHCP. 静态ip 首先关闭DHCP:s ...

  7. redis5.0.3单实例简单安装记录

    redis5.0.3单实例简单安装记录 日常需要测试使用,索性记录下来,免得临时又麻烦的找资料. yum -y install make gcc-c++ cmake bison-devel ncurs ...

  8. mysql5.7安装记录

    mysql安装记录 版本5.7 windows系统 一.缺少my.ini文件 [mysql]# 设置mysql客户端默认字符集default-character-set=utf8 [mysqld]#设 ...

  9. Liunx/RHEL6.5 Oracle11 安装记录

    1.创建用户组 groupadd oinstall #创建用户组oinstall groupadd dba #创建用户组dba useradd -g oinstall -g dba -m oracle ...

随机推荐

  1. mac os x之解决npm安装包失败,或者nodejs工程缺少依赖

    在国内做开发,由于各种各样的原因,导致网络总是那么不好,对于我们前端开发者,在使用npm的时候很可能因为网络问题导致包安装失败,然后我们又匆匆启动项目,导致缺少依赖等各种问题,下面将会介绍一个淘宝的n ...

  2. Spring structs2 hibernate 整合(ssh)

    ssh项目jar包 项目内容: 1. 加入 Spring 1). 加入 jar 包2). 配置 web.xml 文件3). 加入 Spring 的配置文件.(application.xml) 2. 加 ...

  3. Java面试总结mysql

    1.根据部门号从高到低,工资从低到高列出每个员工的信息. SELECT * FROM  User ORDER BY deptid DESC ,salary 2.用一条sql语句查询出每门课都大于80的 ...

  4. jsp03( javabeans)

    1.javabean简介 Javabeans就是符合某种特定规范Java类.使用Javabeans的好处是[解决代码的重复编写],减少代码冗余,功能区分明确,提高代码的维护性. 2.javabean的 ...

  5. Sass 基本特性-运算 感觉满满都是坑

    Sass中的基本运算 一.加法 在 CSS 中能做运算的,到目前为止仅有 calc() 函数可行.但在 Sass 中,运算只是其基本特性之一.      sass做加法运算是可以不考虑参数带单位,但需 ...

  6. 「6月雅礼集训 2017 Day5」吃干饭

    [题目大意] 询问[L,R]中选若干个数异或起来得到的答案集合大小.多组数据. 对于50%的数据,$R - L \leq 10^4$ 对于100%的数据,$R - L \leq 10^{18}, T ...

  7. {转}用ADMM求解大型机器学习问题

    [本文链接:http://www.cnblogs.com/breezedeus/p/3496819.html] 从等式约束的最小化问题说起:                               ...

  8. [一] sqlinject bypass

    http://103.238.227.13:10087/?id=1 由源码来看是没有办法注入的,几乎都是过滤了的.但是经过测试加<>符号会被直接替换为空. 那么就可以借助此进行bypass ...

  9. frp 使用入门

    1.下载安装对应系统版本 https://github.com/fatedier/frp/releases/ 2.将下载的frp移动到系统软件目录 mv frp/ /usr/local 3.配置frp ...

  10. Linux 入门记录:三、Linux 文件基本操作管理

    一.复制文件.目录 使用 cp 命令复制文件或目录: $ cp 源文件(夹)目标文件(夹) 常用参数: -r 递归复制整个目录树 -v 显示复制过程的详细信息 二.移动.重命名文件或目录 通过 mv  ...