搭建ceph集群、块设备映射到客户端使用

本文档详细介绍了如何在三个节点上搭建Ceph块存储集群,包括环境准备、时间同步、安装ceph组件、初始化集群、配置存储池和创建镜像,以及客户端的配置和使用。通过步骤演示了从硬盘分区到映射块设备到客户端的过程,展示了如何在客户端挂载和使用Ceph块存储。
摘要由CSDN通过智能技术生成

(1)环境准备(默认)
三个节点,每个节点额外添加2块20G硬盘,每个节点一共3块硬盘
装包,主机名解析,系统yum源 ,ceph源,关闭防火墙和selinux ,免密ssh 
node1  | 192.168.4.11/24    集群管理节点
node2  | 192.168.4.12/24 
node3  | 192.168.4.13/24 
client   | 192.168.4.10/24 

(2)时间同步
#2.1配置client为NTP服务器
[root@client1 ~]# yum install -y chrony
[root@client1 ~]# vim /etc/chrony.conf 
 29 allow 192.168.4.0/24
 33 local stratum 10       # 即使没有从一个源同步到时间,也会提供时间服务
[root@client1 ~]# systemctl restart chronyd
  
#2.2配置node1-3为NTP客户端
[root@node1 ~]# for i in node{1..3}
> do
> ssh $i yum install -y chrony
> done
[root@node1 ~]# vim /etc/chrony.conf 
... ...
server 192.168.4.10 iburst      //新添加的
... ...
[root@node1 ~]# for i in node{2..3}
> do
> scp /etc/chrony.conf  $i : /etc
> done
[root@node1 ~]# for i in node{1..3}
>do
>ssh $i systemctl restart chronyd 
>done

#2.3验证时间是否同步
[root@node1 ~]# chronyc sources -v

(3)在各个集群上安装ceph组件软件包
[root@node1 ~]# for i in node{1..3}
> do
> ssh $i yum install -y  ceph-mon  ceph-osd  ceph-mds  ceph-radosgw
> done

(4)在node1上安装ceph集群管理工具
[root@node1 ~]# yum install -y ceph-deploy
[root@node1 ~]# mkdir ceph-cluster      # 创建ceph-deploy的工作目录
[root@node1 ~]# cd ceph-cluster     #类似ansible,先进入目录再进行部署
[root@node1 ceph-cluster]# ceph-deploy new node{1..3}    #部署3个集群 (生成三个文件:配置文件、日志文件、共享密钥)

#4.1 开启COW分层快照的功能
[root@node1 ceph-cluster]# vim ceph.conf   
rbd_default_features = 1     #尾部添加支持分层快照功能

#4.2 初始化集群监控组件
[root@node1 ceph-cluster]# ceph-deploy mon create-initial
[root@node1 ceph-cluster]# systemctl status ceph-mon@node1.service 
[root@node2 ~]# systemctl status ceph-mon@node2.service  
[root@node3 ~]# systemctl status ceph-mon@node3.service 
[root@node1 ceph-cluster]# ceph -s  查看集群状态       #health HEALTH_ERR,此时报错是因为没有硬盘

#4.3 向ceph存储添加硬盘,初始化硬盘。相当于对硬盘进行分区、初始化
[root@node1 ceph-cluster]# ceph-deploy disk zap node1:vdb node1:vdc    (vdb、vdc作为集群ceph的存储硬盘)
[root@node1 ceph-cluster]# ceph-deploy disk zap node2:vd{b,c}
[root@node1 ceph-cluster]# ceph-deploy disk zap node3:vd{b,c}

#4.31 硬盘分区,一个分区固定大小5G,另一个分区使用剩余空间                                            
[root@node1 ceph-cluster]# for i in {1..3}
> do
> ceph-deploy osd create node$i:vd{b,c}
> done
[root@node1 ceph-cluster]#  lsblk   #查看硬盘分区,会显示osd存储及5GB的空间

#4.4 查看osd储存设备是否健康。节点上有几块OSD硬盘,就会有几个进程
[root@node1 ceph-cluster]# systemctl status ceph-osd*
[root@node1 ceph-cluster]# ceph -s             # health HEALTH_OK正常
可以查看osd 设备,mon设备

部署块存储,就是可以提供像硬盘一样设备的存储。
使用块存储的节点,需要对块设备进行分区、格式化、挂载后使用。

(1) 查看存储池。ceph默认创建了编号为0的存储池,名为rbd。
[root@node1 ceph-cluster]# ceph osd  lspools    #查看存储池
0 rbd, 
[root@node1 ceph-cluster]# ceph df   #查看空间大小及存储池状况  (ceph保存3副本,90空间实际只能用30G)

(2)在存储池中划分空间(创建镜像),提供给客户端使用
[root@node1 ceph-cluster]# rbd  create demo-image --size 10G    #建造一个10G的空间镜像给客户端使用
[root@node1 ceph-cluster]# rbd  info demo-image     #查看镜像信息
[root@node1 ceph-cluster]# rbd  list       #查看存储池的空间

#2.1 扩容、缩减、删除(生产环境能不做就不做)
[root@node1 ~]# rbd resize --size 15G demo-img       //resize 调整大小
[root@node1 ~]# rbd resize --size 7G demo-img --allow-shrink
[root@node1 ~]#rbd rm demo-image   #删除

三台机器是一个集群,在哪个机器敲都是一样的操作。

客户端使用块设备
1、装软件;
2、用配置文件连接ceph集群;
3、权限、映射

[root@client1 ~]# yum install -y ceph-common
[root@client1 ~]# ls /etc/ceph/      #装完包之后有一个目录
rbdmap
[root@node1 ~]# scp /etc/ceph/ceph.conf   192.168.4.10:/etc/ceph/    #拷贝配置文件给客户端
[root@node1 ~]# scp /etc/ceph/ceph.client.admin.keyring   192.168.4.10:/etc/ceph/   #拷贝密钥文件给客户端
[root@client1 ~]# rbd list  #查看镜像
此时客户端连接到了ceph集群,客户端的操作就是对ceph集群的操作。客户端看到的是服务器集群的数据。

[root@client1 ~]# rbd map demo-img    // map 映射,把ceph集群的镜像映射到客户端的硬盘
/dev/rbd0
[root@client1 ~]# lsblk    # 将会看到新的名为rbd0的硬盘

# 使用rbd设备 正常使用 
[root@client1 ~]# mkfs.xfs /dev/rbd0 
[root@client1 ~]# mount /dev/rbd0 /mnt/
[root@client1 ~]# df -h /mnt/
文件系统        容量  已用  可用 已用% 挂载点
/dev/rbd0       7.0G   33M  7.0G    1% /mnt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值