机器规划

IP 主机名 角色
10.101.0.1 ceph01 mon admin mds
10.101.0.2 ceph02 ods
10.101.0.3 ceph03 ods
10.101.0.4 ceph04 ods
10.101.0.5 client client(挂载点)

考虑到高可用性,生产集群应该至少有 3 个监视器。

在每台机添加hosts

10.101.0.1 ceph01
10.101.0.2 ceph02
10.101.0.3 ceph03
10.101.0.4 ceph04

关闭防火墙和SELINUX

每个节点上创建ceph用户并添加sudo权限

useradd ceph
echo "ceph ALL = (root) NOPASSWD:ALL" >/etc/sudoers.d/ceph
echo "Defaults:ceph |requiretty" >/etc/sudoers.d/ceph

在管理节点ceph01上生成ceph用户的ssh公钥并实现免密码登录其他主机

1.所有机器安装epel和ceph源

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm

rpm -ivh https://download.ceph.com/rpm-hammer/el6/noarch/ceph-release-1-1.el6.noarch.rpm

2.在管理节点上安装ceph-deploy(ceph01节点)

yum install -y ceph-deploy

3.在ceph集群安装

部署过程中有错误可以查看日志/var/log/ceph/

3.1切换到ceph用户执行(ceph01节点)

mkdir /home/ceph/ceph-cluster
cd /home/ceph/ceph-cluster 生成集群配置文件
ceph-deploy new ceph01 #上面的命令会生成3个文件
ceph.conf #集群配置文件,此配置可按需修改或不修改也行
ceph.log #日志文件
ceph.mon.keyring #keyring文件,集群验证用

3.2安装ceph(ceph01节点)

ceph-deploy install ceph01 ceph02 ceph03 ceph04 --repo-url=https://download.ceph.com/rpm-hammer/el6/
#此命令将会按顺序在3台机上安装ceph

3.3创建并初始化监控节点(ceph01)

ceph-deploy mon create-initial
#执行此命令后会初始化mon节点,ceph.conf文件中声明了mon节点等信息

3.4添加数据节点(ceph02,ceph03,ceph04)

挂载好要使用的磁盘
mount /dev/sdb1 /data/osd0(另外两个节点类似,不过是osd1,osd2。名称可自定义)

3.5

在管理节点初始化磁盘(ceph01)

ceph-deploy disk zap ceph01:sdb ceph02:sdb ceph03:sdb

在管理节点准备OSD(ceph01)

ceph-deploy osd prepare ceph01:/data/osd0 ceph02:/data/osd1 ceph03:/data/osd2

3.6激活OSD(ceph01)

ceph-deploy osd activate ceph01:/data/osd0 ceph02:/data/osd1 ceph03:/data/osd2

3.7分发配置和密钥
使用ceph-deploy命令将配置文件和管理密钥复制到管理节点和你的Ceph节点。

ceph-deploy admin ceph01 ceph02 ceph03

3.8查看集群状态

sudo ceph health #集群健康状态,返回OK状态
sudo ceph -s #
sudo ceph status #集群状态

4.安装、挂载cephfs

4.1创建mds(ceph01节点)

ceph-deploy mds create ceph04
#如果报如下错误
RuntimeError: config file /etc/ceph/ceph.conf exists with different content; use --overwrite-conf to overwrite
加上--overwrite-conf参数
ceph-deploy --overwrite-conf mds create ceph04 查看mds进程
netstat -tnlp | grep mds
tcp 172.16.100.5: 0.0.0.0:* LISTEN /ceph-mds

4.2创建pool(ceph01节点)

查看pool
ceph osd lspools
新创建的ceph集群默认只有rdb一个pool。这时我们需要创建新的pool 创建两个存储池。MDS需要使用两个pool,一个pool用来存储数据,一个pool用来存储元数据。 ceph osd pool create fs_data #这里的32指的是PG组
ceph osd pool create fs_metadata
查看pool
rados lspools

4.3创建Cephfs(ceph01节点)

ceph fs new cephfs fs_metadata fs_data
#查看
ceph fs ls
#查看MDS状态
  ceph mds stat

4.4在client节点挂载cephfs(client节点)

Client挂载方式有两种:内核kernal方式和fuse方式。(内核挂载方式需要2.6.34及其以后的版本才支持)

使用fuse方式挂载(注意:此方式读写效率很低)

安装ceph-fuse
yum install -y ceph-fuse 复制配置文件
将ceph配置文件ceph.conf从管理节点copy到client节点
scp ceph@ceph01:/etc/ceph/ceph.conf /etc/ceph/ 复制密钥
将ceph的ceph.client.admin.keyring从管理节点copy到client节点
scp ceph@ceph01:/etc/ceph/ceph.client.admin.keyring /etc/ceph/ 查看ceph授权
ceph auth list 创建挂载目录
mkdir /cephfs 挂载到指定目录
将ceph挂载到/cephfs
ceph-fuse -m ceph01: /cephfs(可以挂在多个mon节点保证高可用,ip:6789,ip:6789)

5.rbd块设备映射

使用rbd块设备方式挂载(读写效率高),但需要加载rbd内核模块,2.6.34之前的版本都没有该模块,要把系统内核升级到2.6.34或者更新。

创建一个pool

ceph osd pool create press 

设置pool 的pgp_num

ceph osd pool set press pgp_num 

查看创建的pool

ceph osd lspools

创建一个100G 名为 image 镜像

rbd create -p press --size  image

查看镜像

rbd -p press info image

客户端块存储挂载:

rbd -p press map image
mkfs.xfs /dev/rbd0
mount /dev/rbd0 /mnt/rbd

卸载map镜像

umount /mnt/rbd
rbd unmap /dev/rbd0

参考文档:

http://www.cnblogs.com/keithtt/p/6410288.html

http://blog.csdn.net/yhao2014/article/details/51394815

https://www.cnblogs.com/jicki/p/5844592.html

CentOS 6.8安装Ceph的更多相关文章

  1. CentOS 7 x64 安装 Ceph

    CentOS 7  x64 安装 Ceph 二, 实验环境 节点            IP                 主机名                  系统 MON         1 ...

  2. [转帖]CentOS 7 x64 安装 Ceph

    CentOS 7 x64 安装 Ceph https://www.cnblogs.com/jicki/p/5801712.html 改天尝试一下. k8s 可以使用ceph 作为 pv和pvc的后端存 ...

  3. 基于CentOS 7.3 安装Ceph Jewel 10.2.9

    https://www.lijiawang.org/posts/intsall-ceph.html 配置说明: 采用了4台centos7.3系统的虚拟机,1台Ceph-Master作为安装节点,NTP ...

  4. CentOS 安装 ceph 单机版(luminous版本)

    一.环境准备 CentOS Linux release 7.4.1708 (Core)一台,4块磁盘(sda.sdb,.sdc.sdd) 192.168.27.130 nceph 二.配置环境 1.修 ...

  5. CentOS 安装 ceph 单机版

    简介 Ceph是一个分布式存储软件. 它支持用3种方式存储数据,分别是:对象存储.块设备存储.分布式文件系统存储. Ceph这个软件,分为3层,最底层是Rados对象存储系统.中间是一个librado ...

  6. centos 7.3 快速安装ceph

    Ceph的部署手册(Centos7.3)     Ceph简介 Ceph是一种为优秀的性能.可靠性和可扩展性而设计的统一的.分布式文件系统. 部署逻辑架构 准备3台主机,并且修改主机名(hostnam ...

  7. rexray在CentOS上不能创建ceph rbd的docker volume问题定位

    背景 我们通过docker的rexray插件来创建ceph rbd设备的docker volume,但总提示创建失败. # docker volume create --driver=rexray - ...

  8. 虚拟机使用ceph-deploy安装ceph

    参考: ceph官网介绍 使用ceph-deploy安装Ceph 12.x 安装虚拟机 首先安装虚拟机环境,虚拟机安装这里不做介绍,本实验使用的镜像为CentOS-7-x86_64-Everythin ...

  9. ceph 安装ceph问题汇总

    1.在不同节点安装ceph时,出现以下异常: 参考这里 ceph deploy RuntimeError: NoSectionError: No section: 'ceph' 解决方法: 在报错的机 ...

随机推荐

  1. C语言转置矩阵算法

    对一个nxn阶的矩阵进行转置,算法如下: #include <stdio.h> #define n 3 void MM(int a[][n]) { int i,j,temp; ;i < ...

  2. How to Build MySQL from Source Code on Windows & compile MySQL on win7+vs2010

    Not counting obtaining the source code, and once you have the prerequisites satisfied, [Windows] use ...

  3. 04_zookeeper的watcher机制

    [watcher简述] * zk针对每个节点的操作,都会有一个监督者:watcher * 当监控的某个对象(znode)发生了变化,则出发watcher * zk中的watcher是一次性的,出发后立 ...

  4. idea引入依赖包报错

    今天在更新项目的时候,maven依赖的一个服务一直报错.查了后发现原来是因为缺少依赖包.但是依赖包明明在我本地啊. 又重新下载,依然如故... 搞了半天,发现自己的依赖包类状态都是不可用的.如下图所示 ...

  5. Android学习——BroadCast(二)

    这篇博文介绍有序广播的使用 有序广播的发送 和普通广播完全相同,只需要更换发送的方式即可 ordered.setOnClickListener(new View.OnClickListener() { ...

  6. 如何有效防止API的重放攻击(转自阿里云)

    API重放攻击(Replay Attacks)又称重播攻击.回放攻击,这种攻击会不断恶意或欺诈性地重复一个有效的API请求.攻击者利用网络监听或者其他方式盗取API请求,进行一定的处理后,再把它重新发 ...

  7. 关于派生类访问基类对象的保护变量的问题 --Coursera

    https://class.coursera.org/pkupop-001/forum/thread?thread_id=350   郭天魁· 6 months ago 在课件中我们知道如下程序是不能 ...

  8. 图的存储结构(邻接矩阵与邻接表)及其C++实现

    一.图的定义 图是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为: G=(V,E) 其中:G表示一个图,V是图G中顶点的集合,E是图G中顶点之间边的集合. 注: 在线性表中,元素个数可以为零, ...

  9. 一款可以安利的MarkDown编辑器

    Typeora一款可以安利的MarkDown编辑器 Typeora是什么? ​ 一款使用MarkDown的本地编辑器集结了MarkDown的所有特点并展现了简洁.高效的特点,关键是免费. 特点: 支持 ...

  10. 我的第一个Python随笔

    自学Python也很长时间了,注册博客园写了第一篇随笔.之前想过很多次,但是始终不知道该怎么开始,内容如何,现在想想,随笔嘛,是自己的想法,也自己的实践,又是自己的锻炼.话不多说,开始今天的正式内容. ...