ceph块存储学习

目录

ceph的组件和功能

ceph的数据读写流程

ceph存储池学习  

ceph的组件和功能

        Ceph OSD:功能是存储数据,处理数据的复制、恢复、平衡数据分布,并将一些相关数据提供给Ceph Monitor,。
        Ceph Monitor: 功能是维护整个集群健康状态,提供一致性的决策,包含了Monitor map、OSD map、PG(Placement Group)map和CRUSH map。
        Ceph MDS:功能是保存的是Ceph文件系统的元数据。Ceph MDS为基于POSIX文件系统的用户提供一些基础命令。例如:ls、find等命令

ceph的数据读写流程

        数据首先通过客户端,先在本地完成寻址,将数据切片变为object,然后找出存储该object的一组osd,该组osd包含三个osd,其中分为一个主osd和其他的osd,然后先和主osd进行通信,再接着和其他的osd通信,当其他的osd已经完成请求后,会先向主osd发送确认,主osd也完成自己的操作后,向客户端回送确认。

ceph存储池学习  

        首先配置环境,部署好最少三个节点,一个客户端的ceph集群,部署成功后进行下列检查,弹出HEALTH_OK则配置成功。

[root@node4 ~]# ceph health
HEALTH_OK

        创建一个存储池,存储池的名称为testpool

[root@node4 ~]# ceph osd pool create testpool 128 # 创建命令,指定PG值为128
pool 'testpool' created
[root@node4 ~]# ceph osd lspools  # 查看此时存储池信息
1 device_health_metrics
2 rbd
3 testpool

        上传一个对象到testpool存储池,对象的名称为testobject

[root@node4 ~]# ceph osd pool application enable testpool testpool
enabled application 'testpool' on pool 'testpool'
[root@node4 ~]# rados put testobject joshua.txt -p testpool
[root@node4 ~]# rados ls -p testpool
testobject

        创建一个RBD的名称为testimage的image,大小为100M

[root@node4 ~]# rbd create testpool/testimage --image-feature layering --size 100M
[root@node4 ~]# rbd -p testpool ls
testimage

        将testimage映射为块设备

[root@node4 ~]# rbd map testpool/testimage --id admin
/dev/rbd1

        删除testpool存储池(ceph不支持,所以需要开启这个删除功能)

[root@node4 ~]# ceph osd pool delete testpool testpool --yes-i-really-really-mean-it
[root@node4 ~]# ceph osd lspools
1 device_health_metrics
2 rbd
[root@node4 ~]#

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值