Ceph——使用普通用户挂载cephfs

  创建客户端账户

  创建账户

  创建一个名为lxhfs的普通账户,允许获取ceph状态信息,允许对mds元数据有读写权限,语序对存储池cephfs-data cephfs的存储池有读写和执行权限。

cephadmin@ceph-deploy:~/ceph-cluster$ ceph auth add client.lxhfs mon 'allow r' mds 'allow rw' osd 'allow rwx pool=cephfs-data'
added key for client.lxhfs

 

  验证账户

cephadmin@ceph-deploy:~/ceph-cluster$ ceph auth get client.lxhfs
[client.lxhfs]
	key = AQBipY5j9XwqBRAAB09e1wbCpzoHbtJHMfLJlA==
	caps mds = "allow rw"
	caps mon = "allow r"
	caps osd = "allow rwx pool=cephfs-data"
exported keyring for client.lxhfs

 

  创建keyring文件

cephadmin@ceph-deploy:~/ceph-cluster$ ceph auth get client.lxhfs -o ceph.client.lxhfs.keyring
exported keyring for client.lxhfs

 

  验证用户的 keyring 文件

cephadmin@ceph-deploy:~/ceph-cluster$ ll ceph.client.lxhfs.keyring 
-rw-rw-r-- 1 cephadmin cephadmin 149 Dec  6 10:21 ceph.client.lxhfs.keyring

cephadmin@ceph-deploy:~/ceph-cluster$ cat ceph.client.lxhfs.keyring
[client.lxhfs]
	key = AQBipY5j9XwqBRAAB09e1wbCpzoHbtJHMfLJlA==
	caps mds = "allow rw"
	caps mon = "allow r"
	caps osd = "allow rwx pool=cephfs-data"

 

  创建key文件

cephadmin@ceph-deploy:~/ceph-cluster$ ceph auth print-key client.lxhfs > lxhfs.key

  

  验证用户的key文件

cephadmin@ceph-deploy:~/ceph-cluster$ cat lxhfs.key 
AQBipY5j9XwqBRAAB09e1wbCpzoHbtJHMfLJlA==cephadmin@ceph-deploy:~/ceph-cluster$ 

 

  安装 ceph 客户端

  客户端服务器为centos7

  安装epel软件源

[root@ansible ~]# yum install epel-release -y

 

  安装ceph仓库

[root@ansible ~]\# yum install https://mirrors.aliyun.com/ceph/rpm-octopus/el7/noarch/ceph-release-1-1.el7.noarch.rpm
[root@ansible ~]\# yum list ceph-common  --showduplicates |sort -r
ceph-common.x86_64                     2:15.2.17-0.el7                     Ceph 
ceph-common.x86_64                     2:15.2.17-0.el7                     @Ceph
ceph-common.x86_64                     1:10.2.5-4.el7                      base

 

  安装ceph客户端

[root@ansible ~]# yum install ceph-common -y

 

  同步客户端ceph认证文件

  将ceph-deploy节点创建的用户认证文件和ceph配置文件一并发送到客户端/etc/ceph目录下

  keyring的认证文件:主要负责客户端管理ceph的权限认证环文件

  user.key的文件:主要负责允许客户端挂载cephfs的一个凭据权限

root@ceph-deploy:/home/cephadmin/ceph-cluster# scp ceph.conf ceph.client.lxhfs.keyring lxhfs.key 192.168.100.80:/etc/ceph/

 

  客户端验证权限

  指定ceph 的 --user选项 lxhfs用户验证ceph状态

[root@ansible ~]# ceph --user lxhfs -s

 

  客户端通过 key 文件挂载

  创建数据目录

[root@ansible ~]# mkdir /fsdata

  挂载cephfs

[root@ansible ~]# mount -t ceph 192.168.100.35:6789,192.168.100.36:6789,192.168.100.37:6789:/ /fsdata -o name=lxhfs,secretfile=/etc/ceph/lxhfs.key

  参数解释:
  -t ceph:指定文件系统类型,需要服务器安装ceph-common,内核才会支持ceph文件系统。

  192.168.100.35:6789,192.168.100.36:6789,192.168.100.37:6789:/:指定ceph集群的mon节点与ceph-mon服务的端口,挂载源路径为/。

  -o name: 指定ceph用户,指在ceph服务端创建的认证用户名称

  -o secretfile:指定ceph认证用户的key文件

 

  验证挂载

 

  测试文件写入

[root@ansible ~]# tar zcf etc.tar.gz /etc

#测试文件写入
[root@ansible ~]# cp etc.tar.gz /fsdata/
[root@ansible ~]# ll /fsdata/
total 11270
-rw-r--r-- 1 root root 11540279 Dec  6 11:14 etc.tar.gz

#生成500M大文件写入
[root@ansible ~]# dd if=/dev/zero of=/fsdata/testfile bs=1M count=500
500+0 records in
500+0 records out
524288000 bytes (524 MB) copied, 4.41425 s, 119 MB/s

#查看分区使用
[root@ansible ~]# df -h /fsdata
Filesystem                                                     Size  Used Avail Use% Mounted on
192.168.100.35:6789,192.168.100.35:6789,192.168.100.35:6789:/  633G  388M  633G   1% /fsdata

 

  客户端通过 key 挂载

  挂载cephfs

[root@ansible ~]# mount -t ceph 192.168.100.35:6789,192.168.100.36:6789,192.168.100.37:6789:/ /fsdata -o name=lxhfs,secret=AQBipY5j9XwqBRAAB09e1wbCpzoHbtJHMfLJlA==

  参数解释:
  -t ceph:指定文件系统类型,需要服务器安装ceph-common,内核才会支持ceph文件系统。

  192.168.100.35:6789,192.168.100.35:6789,192.168.100.35:6789:/:指定ceph集群的mon节点与ceph-mon服务的端口,挂载源路径为/。

  -o name: 指定ceph用户,指在ceph服务端创建的认证用户名称

  -o secret:指定ceph认证用户的key

 

  验证挂载

 

  开机挂载

  配置/etc/fstab添加cephfs挂载

[root@ansible ~]# vim /etc/fstab
192.168.100.35:6789,192.168.100.35:6789,192.168.100.35:6789:/ /fsdata ceph defaults,name=lxhfs,secretfile=/etc/ceph/lxhfs.
key,_netdev 0 0

  验证挂载

posted @ 2023-01-25 21:36  PunchLinux  阅读(1367)  评论(0编辑  收藏  举报