云计算 / 存储系统 / 操作系统

Ceph文件系统—CephFS部署教程

温馨提示:本文最后更新于2021-03-02 18:48:11,某些文章具有时效性,若有错误或已失效,请在下方留言或提交工单提交工单
浅时光 · 8月2日 · 2020年 · 本文2333个字,预计阅读6分钟 75081次已读

一、CephFS介绍


Ceph File System文章来源(Source):https://www.dqzboy.com (CephFS) 是与 POSIX 标准兼容的文件系统, 能够提供对 Ceph 存储集群上的文件访问. Jewel 版本 (10.2.0) 是第一个包含稳定 CephFS 的 Ceph 版本. CephFS 需要至少一个元数据服务器 (Metadata Server – MDS) daemon (ceph-mds) 运行, MDS daemon 管理着与存储在 CephFS 上的文件相关的元数据, 并且协调着对 Ceph 存储系统的访问。

Ceph集群创建请阅读本篇文章:

Ceph 存储集群部署

2020-7-12 3
  • 注意:你集群里必须有MDS,不然无法进行下面的操作

二、CephFS创建


  • 要使用 CephFS, 至少就需要一个 metadata server 进程;在admin节点通过以下命令进行创建
[root@ceph-admin ~]# su - cephu 
[cephu@ceph-admin ~]$ cd ~/my-cluster/
[cephu@ceph-admin my-cluster]$ ceph-deploy mds create ceph-node2
#无报错则创建完成

三、CephFS部署


1、部署流程

  1. 在一个 Mon 节点上创建 Ceph 文件系统.
  2. 若使用 CephX 认证,需要创建一个访问 CephFS 的客户端
  3. 挂载 CephFS 到一个专用的节点,以 kernel client 形式挂载 CephFS

2、执行操作

2.1:创建文件系统

  • Mon节点我们三台Node上都创建了,我们在任一Mon节点进行创建;这里我在ceph-node1节点创建
  • CephFS 需要两个 Pools,cephfs-datacephfs-metadata, 分别原文链接:https://www.dqzboy.com存储文件数文章来源(Source):浅时光博客据和文件元数据
[root@ceph-node1 ~]# su - cephu
[cephu@ceph-node1 ~]$ sudo ceph osd pool create cephfs-data 128 128
pool 'cephfs-data' created

[cephu@ceph-node1 ~]$ sudo ceph osd pool create cephfs-metadata 64 64
pool 'cephfs-metadata' created

2.2:创建Ceph文章来源(Source):浅时光博客FS

  • 创建一个CephFS,名称为cephfs,还是在Mon节点操作
[cephu@ceph-node1 ~]$ sudo ceph fs new cephfs cephfs-metadata cephfs-data

new fs with metadata pool 2 and data pool 1

2.3:检查状态

[cephu@ceph-node1 ~]$ sudo ceph fs status cephfs
cephfs 1

2.4:创建用户

  • 在Mon节点创建一个用户,用于访问CephFS;且这个用户有读写的权限
[cephu@ceph-node1 ~]$ sudo ceph auth get-or-create client.cephfs mon 'allow r' mds 'allow rw' osd 'allow rw pool=cephfs-data, allow rw pool=cephfs-metadata'

[client.cephfs]
	key = AQDnTxVf/k2sFhAANbw0QbPuCa7dLCJBDQbr8A==

2.5:检查Key

  • 检查上面步骤生成的Key是否生效
[cephu@ceph-node1 ~]$ sudo ceph auth get client.cephfs

exported keyring for client.cephfs
[client.cephfs]
	key = AQDnTxVf/k2sFhAANbw0QbPuCa7dLCJBDQbr8A==
	caps mds = "allow rw"
	caps mon = "allow r"
	caps osd = "allow rw pool=cephfs-data, allow rw pool=cephfs-metadata"

2.6:检查CephFS和Mds状态

[cephu@ceph-node1 ~]$ sudo ceph mds stat
cephfs-1/1/1 up  {0=ceph-node2=up:active}

[cephu@ceph-node1 ~]$ sudo ceph fs ls
name: cephfs, metadata pool: cephfs-metadata, data pools: [cephfs-data ]

[cephu@ceph-node1 ~]$ sudo ceph fs status

四、CephFS挂载


  • Mon文章来源(Source):https://www.dqzboy.com默然端口:tcp: 6789
  • 这里我们以 kernel client 的方式进行挂载,在客户端服务器进行挂载

1、创建挂载点

[root@ceph-client ~]# mkdir /cephfs

2、挂载目录

[root@ceph-client ~]# mount -t ceph 192.168.66.201:6789,192.168.66.202:6789,192.168.66.203:6789:/ /cephfs/ -o name=cephfs,secret=AQA+bhVfgv2nFRAAE1oYVGUOdjtqfsXlQS2nEw==
  • 参数说明
    • name:为使用cephfs存储的用户
    • secret:为上面在mon节点创建的cephfs对应的用户秘钥

3、自动挂载

[root@ceph-client ~]# echo "192.168.66.201:6789,192.168.66.202:6789,192.168.66.203:6789:/ /cephfs ceph name=cephfs,secretfile=/etc/ceph/cephfs.key,_netdev,noatime 0 0" | sudo tee -a /etc/fstab

4、验证挂载

[root@ceph-client ~]# stat -f /cephfs
cephfs 2




本文作者:浅时光
原文链接:https://www.dqzboy.com/3506.html
版权声明:知识共享署名-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)协议进行许可
转载时请以超链接形式标明文章原始出处和作者信息

1 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!

  1. 大boss未知2020-8-16 · 16:37

    给博主点赞