【分布式系统】CephFS文件系统之MDS接口详解

目录

一.服务端操作

1.在管理节点创建 mds 服务

2.查看各个节点的 mds 服务(可选)

3.创建存储池,启用 ceph 文件系统

4.查看mds状态,一个up,其余两个待命,目前的工作的是node01上的mds服务

5.创建用户

6.复制到client

二.客户端操作

1.查看复制文件

2.创建工作目录

3.在客户端安装 ceph 软件包

4.在客户端制作秘钥文件

5.客户端挂载

方法一:基于内核

方法二:基于 fuse 工具

三.总结


接着之前的部署集群架构

一.服务端操作

1.在管理节点创建 mds 服务

cd /etc/ceph
ceph-deploy mds create node01 node02 node03

2.查看各个节点的 mds 服务(可选)

ssh root@node01 systemctl status ceph-mds@node01
ssh root@node02 systemctl status ceph-mds@node02
ssh root@node03 systemctl status ceph-mds@node03

已经开启了

3.创建存储池,启用 ceph 文件系统

ceph 文件系统至少需要两个 rados 池,一个用于存储数据,一个用于存储元数据。此时数据池就

类似于文件系统的共享目录

ceph osd pool create cephfs_data 128                  #创建数据Pool
ceph osd pool create cephfs_metadata 128              #创建元数据Pool

创建 cephfs

命令格式

ceph fs new <FS_NAME> <CEPHFS_METADATA_NAME> <CEPHFS_DATA_NAME>
ceph fs new mycephfs cephfs_metadata cephfs_data        #启用ceph,元数据Pool在前,数据Pool在后
ceph fs ls                                              #查看cephfs

4.查看mds状态,一个up,其余两个待命,目前的工作的是node01上的mds服务

ceph fs status mycephfs
ceph -s

ceph mds stat

 

5.创建用户

格式

ceph fs authorize  <fs_name>  client.<client_id>  <path-in-cephfs>  rw

账户为 client.zx,用户 name 为 zx,zx对ceph文件系统的 / 根目录(注意不是操作系统的根目

录)有读写权限

ceph fs authorize mycephfs client.zx / rw | tee /etc/ceph/zx.keyring

账户为 client.jlh,用户 name 为 jlh,jlh对文件系统的 / 根目录只有读权限,对文件系统的根目录的

子目录 /test 有读写权限

ceph fs authorize mycephfs client.jlh / r /xy101 rw | tee /etc/ceph/jlh.keyring

6.复制到client

scp zx.keyring jlh.keyring client:/etc/ceph

二.客户端操作

客户端要在 public 网络内

1.查看复制文件

2.创建工作目录

3.在客户端安装 ceph 软件包

yum install -y ceph 

4.在客户端制作秘钥文件

cd /etc/ceph
ceph-authtool -n client.zx -p zx.keyring > zx.key            #把 zx 用户的秘钥导出到 zx.key
ceph-authtool -n client.jlh -p jlh.keyring > jlh.key         #把 jlh 用户的秘钥导出到jlh.key

5.客户端挂载

方法一:基于内核

格式

mount -t ceph node01:6789,node02:6789,node03:6789:/  <本地挂载点目录>  -o name=<用户名>,secret=<秘钥>

示例1

mount -t ceph node01:6789,node02:6789,node03:6789:/ /opt/zx -o name=zx,secretfile=zx.key

验证一下

cp -r /etc/passwd /etc/shadow /etc/yum.repos.d/ /opt/zx/

echo 'zx like xiaojiejie' > zx.txt

示例2

mount -t ceph node01:6789,node02:6789,node03:6789:/ /opt/jlh -o name=jlh,secretfile=jlh.key

同样验证一下

echo 'jlh like dajiejie' > jlh.txt

得更换到别的目录下才能有写的权限

方法二:基于 fuse 工具

在 ceph 的管理节点给客户端拷贝 ceph 的配置文件 ceph.conf 和账号的秘钥环文件

scp ceph.conf ceph.client.admin.keyring client:/etc/ceph

在客户端安装 ceph-fuse

yum install -y ceph-fuse

客户端挂载

创建个空目录

ceph-fuse -m node01:6789,node02:6789,node03:6789 /opt/data/ [-o nonempty]            #挂载时,如果挂载点不为空会挂载失败,指定 -o nonempty 可以忽略

验证

三.总结

CephFS操作

服务端

ceph-deploy mds create  节点列表                   #创建MDS
ceph osd pool create  元数据Pool名  PG数据         #创建元数据Pool
ceph osd pool create  数据Pool名  PG数据           #创建数据Pool
ceph fs new  CephFS名  元数据Pool名  数据Pool名     #创建CephFS
ceph fs authorize  CephFS名  client,用户名    文件系统路径 rw|r  | tee /etc/ceph/XXX.keyring #给用户授权在指定的系统路径中的读写权限

客户端

mount -t ceph    节点列表:6789:文件系统路径      本地挂载点目录    -o name=用户名,secret=密钥信息|secretfile=密钥文件

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值