本文是在基于5台vmare虚拟机,系统为centos7环境上部署安装ceph集群的整个过程。
官方文档:安装 Ceph — Ceph 文档
准备环境
5台vm,系统:centos7,至少1核1G内存每台,每台node角色的机器至少挂载1块不少于5G的空闲盘为
osd存储。
| 主机名 | IP | 作用 |
|---|---|---|
| admin | 192.168.xxx.101 | admin–安装ceph-deploy |
| node1 | 192.168.xxx.102 | mon/mgr/osd |
| node2 | 192.168.xxx.103 | osd |
| node2 | 192.168.xxx.104 | osd |
| ceph-client | 192.168.xxx.105 | client |
- 给三台node节点添加一块大小5G以上的磁盘。
- IP地址中的xx需要根据自己的vmware分配的nat网段来确定
- 所有节点修改主机名并相互解析
- 关闭所有机器的防火墙和selinux
- 所有节点创建普通用户并设置密码–所有节点都操作
1 | |
6.确保各 Ceph 节点上新创建的用户都有 sudo 权限–所有节点操作
1 | |
- 实现ssh无密码登录(admin节点操作)
1 | |
- 在admin节点用root用户添加~/.ssh/config配置文件,并进行如下设置,这样 ceph-deploy 就能用
你所建的用户名登录 Ceph 节点了
1 | |
9.添加下载源,安装ceph-deploy(admin节点,root用户)
1 | |
- 安装 ntp(所有节点)
- 选择任何一台机器当ntp时间服务器,其他的节点当时间服务器的客户端跟服务器同步时间
1 | |
- 其他所有节点
1 | |
部署ceph集群
没有特别说明以下所有操作均是在admin节点,cephu用户下执行
- 创建cephu操作的目录,所有ceph-deploy命令操作必须在该目录下执行
1 | |
创建集群
首先在这里需要先下载一个包并安装否则会报错
1 | |
创建集群
1 | |
安装luminous-12.2.13在(脚本方式在admin节点)
目标:在node1,node2,node3三个节点上安装ceph和ceph-radosgw主包
方法1:利用官方脚本全自动安装
- 脚本会帮助node1,node2,node3创建epel源和ceph源,且自动安装ceph和ceph-radosgw主包
- 这一步时间很长,容易超时,可以利用手动安装
1 | |
如果ceph和ceph-radosgw安装不上,则采用方法2
测试是否安装完成:分别在node1 node2 node3中确认安装版本为12.2.13
1 | |
方法2:手动部署安装三台机器分别创建:三台node节点相同操作
* 安装epel源
1 | |
* 创建ceph源
1 | |
测试是否安装完成:分别在node1 node2 node3中确认安装版本为12.2.13
1 | |
- 初始化mon:admin节点–cephu用户执行
1 | |
- 赋予各个节点使用命令免用户名权限
1 | |
- 安装ceph-mgr:只有luminous才有,为使用dashboard做准备
1 | |
- 添加osd,各个节点上提供存储空间的磁盘大小不能太小,最好5G以上,注意检查你的磁盘名字
1 | |
命令中/dev/sdb是在各个节点上为osd准备的空闲磁盘(无需分区格式化,如果有分区需要指定具体 分区),通过如下命令查看
1 | |
最后通过如下命令查看集群状态,如果显示health_ok,3个osd up就成功了
1 | |
Dashboard的配置
在node1上操作,把ceph-mgr和ceph-mon安装在同一个主机上,最好只有一个ceph-mgr
1 | |
- 创建管理域秘钥
1 | |
- 开启 ceph-mgr 管理域
1 | |
- 查看ceph的状态:确认mgr的状态为active
1 | |
- 打开dashboard模块
1 | |
- 绑定开启dashboard模块的ceph-mgr节点的ip地址,ip地址为mgr节点的ip地址,也就是node1的ip
地址
1 | |
- web登录:浏览器地址栏输入 mgr地址:7000

配置客户端使用rbd
创建块设备之前需要创建存储池,存储池相关命令需要在mon节点执行–也就是规划好的node1节点
- 创建存储池
1 | |
少于5个osd,pg数量为128
5-10个osd,pg数量为512
10-50个osd,pg数量为4096
- 初始化存储池
1 | |
准备客户端client:客户端操作
另备一台主机,系统centos7用来作为client。主机名为client,ip:192.168.xx.105。修改hosts文件实现和admin节点的主机名互通。为client安装ceph
1 | |
需要进行ceph集群环境内容
需要安装luminous-12.2.13的第2中方式手动安装ceph
- 在admin节点赋予client使用命令免用户名权限
1 | |
- 修改client下该文件的读权限
- 修改client下的ceph配置文件:这一步是为了解决映射镜像时出错问题
1 | |
- client节点创建块设备镜像:单位是M,这里是4个G
1 | |
- client节点映射镜像到主机
1 | |
- client节点mount块设备
1 | |
客户端重起之后,设备需要重新做一下映射(第9步),不然可能会卡死