命令记不住

登陆

Ceph 存储 cephFS

02.Ceph存储cephFS

1.存储类型介绍

1.块存储(RBD)

优点:存储速度较快
缺点:不支持共享存储
应用场景:虚拟机硬盘
典型设备:raid,硬盘

2.文件存储CephFS

优点:支持共享存储
缺点:读写速度较慢,需要经过操作系统处理再转为块存储
应用场景:文件共享,多台服务器共享使用同一个存储
典型设备:FTP,NFS

3.对象存储(Object)

优点:具备块存储的读写性能和文件存储的共享特性
缺点:操作系统不能直接访问,只能通过应用程序级别的API访问
应用场景:图片存储,视频存储
典型设备:阿里云OSS,腾讯云COS

2.CephFS文件系统

CephFS是一个基于ceph集群且兼容POSIX标准的文件系统

创建cephfs文件系统时需要在ceph集群中添加mds服务,该服务负责处理POSIX文件系统中的metadata部分,实际的数据部分交由ceph集群的OSD处理

cephfs支持以内核模块方式加载也支持fuse方式加载。无论是内核模式还是fuse模式,都是通过调用libcephfs库来实现cephfs文件系统的加载,而libcephfs库又吊用librados库与ceph集群进行通信,从而实现cephfs的加载

文件共享,支持多节点挂载

3.部署MDS服务

创建实例

ceph-deploy mds create ceph-node01 ceph-node02 ceph-node03

查看节点状态

ceph mds stat

创建存储池

ceph osd pool create cephfs_data 128 //pg_num
ceph osd pool create cephfs_metadata 96 //pg_num
ceph osd pool ls
ceph fs ls

创建文件系统

# 格式:ceph fs new <fs_name> <metadata> <data>
[root@ceph-node01 my-cluster]# ceph osd pool ls
rbd-pool
cephfs_data
cephfs_metadata
[root@ceph-node01 my-cluster]#
[root@ceph-node01 my-cluster]# ceph fs new cephfs cephfs_metadata cephfs_data
new fs with metadata pool 3 and data pool 2
# 查看创建后的cephfs
ceph fs ls
name: cephfs, metadata pool: cephfs_metadata, data pools: [cephfs_data ]

4.挂载并使用

内核模块方式挂载

  • 性能更好

1.安装ceph客户端

yum install -y ceph-common

2.获取账号名与密钥

ceph auth list |  grep -A 1 admin

3.挂载本地目录

# mkdir /data
# mount -t ceph 192.168.6.171:6789,192.168.6.212:6789,192.168.6.141:6789:/ /data -o name=admin,secret=AQAAl01iRk5pIxAAmLmZ5s4/5A9X+VxVBSCj9w==

# df -h
/dev/rbd0                                                  xfs 10G 33M 10G 1% /mnt
192.168.6.171:6789,192.168.6.212:6789,192.168.6.141:6789:/ ceph  188G 0 188G 0% /data

4.取消挂在

umount /data

fuse方式挂载

  • 存在用户态ceph底层请求

1.安装fuse

yum install -y ceph-fuse

2.挂载本地目录

ceph-fuse -m 192.168.6.171:6789,192.168.6.212:6789,192.168.6.141:6789 /mnt

# df -h
/dev/sda1      xfs             2.0G  177M  1.9G   9% /boot
ceph-fuse      fuse.ceph-fuse  188G     0  188G   0% /mnt

3.取消挂载

fusermount -u /cephfs
推荐阅读