(8)客户端使用cephfs
admin
2023-03-11 16:42:14
0

Ceph wen件系统的名称是 CephFS ,它是一个 POSIX 兼容的分布式文件系统,并使用Ceph RADOS 存储数据 。要实现 Ceph wen件系统,需要一个正常运行的 Ceph 存储集群,并且至少包含一个 Ceph 元数据服务器( Ceph Metadata Server, MDS) 。
客户端可以通过两种方式使用 Ceph wen件系统:使用本地内核驱动程序挂载 CephFS ,或者使用 Ceph FUSE。

(1)准备一个健康的ceph 集群

[root@node140 mds]# ceph -s
cluster:
id: 58a12719-a5ed-4f95-b312-6efd6e34e558
health: HEALTH_OK

services:
mon: 2 daemons, quorum node140,node142 (age 22h)
mgr: admin(active, since 6d), standbys: node140
osd: 16 osds: 16 up (since 17h), 16 in (since 3d)

data:
pools: 5 pools, 768 pgs
objects: 2.61k objects, 9.8 GiB
usage: 47 GiB used, 8.7 TiB / 8.7 TiB avail
pgs: 768 active+clean

(2)创建元数据目录

[root@node140 ceph]# mkdir /var/lib/ceph/mds/ceph-node140 -pv

(3)为bootstrap-mds客户端创建一个密钥

[root@node140 ceph]# # ceph-authtool --create-keyring /var/lib/ceph/bootstrap-mds/ceph.keyring --gen-key -n client.bootstrap-mds

(4)在ceph auth库中创建bootstrap-mds客户端,赋予权限添加之前创建的密钥

[root@node140 ceph]# ceph auth add client.bootstrap-mds mon 'allow profile bootstrap-mds' -i /var/lib/ceph/bootstrap-mds/ceph.keyring

(5)在root家目录里创建ceph.bootstrap-mds.keyring文件

[root@node140 ceph]#touch /root/ceph.bootstrap-mds.keyring

(6)把keyring /var/lib/ceph/bootstrap-mds/ceph.keyring里的密钥导入家目录下的ceph.bootstrap-mds.keyring文件里

[root@node140 ceph]# ceph-authtool --import-keyring /var/lib/ceph/bootstrap-mds/ceph.keyring ceph.bootstrap-mds.keyring

(7)在auth库中创建mds.a用户,并赋予权限和创建密钥,密钥保存在/var/lib/ceph/mds/ceph-node140/keyring文件里

[root@node140 ceph]# ceph --name client.bootstrap-mds --keyring /var/lib/ceph/bootstrap-mds/ceph.keyring auth get-or-create mds.a osd 'allow rwx' mds 'allow' mon 'allow profile mds' -o /var/lib/ceph/mds/ceph-a/keyring

(8)赋予文件权限

[root@node140 ceph]# chown -R ceph.ceph /var/lib/ceph/mds/ceph-node140

(9)配置文件中添加MDS节点

vim /etc/ceph/ceph.conf
[mds.node140]
host = node140

(10)启动ceph

[root@node140 mds]# systemctl enable ceph-mds@node140
[root@node140 mds]# systemctl start ceph-mds@node140
[root@node140 mds]# systemctl status ceph-mds@node140

(11)其他节点添加MDS

[root@node141 ceph]# vim /etc/ceph/ceph.conf
[mds.node140]
host = node140
[mds.node141]
host = node141

[root@node140 ceph]# scp /var/lib/ceph/bootstrap-mds/ceph.keyring node141:/etc/ceph/
[root@node140 ceph]# scp /root/ceph.bootstrap-mds.keyring node141:/etc/ceph/
[root@node141 ceph]# mkdir /var/lib/ceph/mds/ceph-node141/ -pv
[root@node141 ceph]# cp /etc/ceph/ceph.keyring /var/lib/ceph/bootstrap-mds/
[root@node141 ceph]# ceph auth add client.bootstrap-mds mon 'allow profile bootstrap-mds' -i /var/lib/ceph/bootstrap-mds/ceph.keyring
[root@node141 ceph]# ceph --name client.bootstrap-mds --keyring /var/lib/ceph/bootstrap-mds/ceph.keyring auth get-or-create mds.node141 osd 'allow rwx' mds 'allow' mon 'allow profile mds' -o /var/lib/ceph/mds/ceph-node141/keyring

[root@node141 ceph]# systemctl start ceph-mds@node141
[root@node141 ceph]# systemctl status ceph-mds@node141
[root@node141 ceph]# systemctl enable ceph-mds@node141

(12)#创建cephfs_data pool

[root@node140 mds]# ceph osd pool create cephfs_data 128
pool 'cephfs_data' created

(13)创建cephfs metadata pool

[root@node140 mds]# ceph osd pool create cephfs_metadata 128
pool 'cephfs_metadata' created

(14)创建cephfs

[root@node140 mds]# ceph fs new cephfs cephfs_metadata cephfs_data
new fs with metadata pool 7 and data pool 6

(15) 查看cephfs

[root@node140 mds]# ceph fs ls
name: cephfs, metadata pool: cephfs_metadata, data pools: [cephfs_data ]

[root@node140 mds]# ceph mds stat
cephfs:1 {0=node140=up:active}

客户端使用内核驱动程序挂载cephfs

(1)服务器节点查看ceph.client.admin.keyring

[root@node140 ceph-node140]# cat /etc/ceph/ceph.client.admin.keyring
[client.admin]
key = AQB9w2BdnggFIBAA7SR+7cO/PtZl9PTlriBL1A==
caps mds = "allow "
caps mgr = "allow
"
caps mon = "allow "
caps osd = "allow
"

[root@docker38 ceph]# vim admin.key #复制ceph.client.admin.keyring,内容到客户端
[root@docker38 ceph]# chown 600 admin.key

(2)挂载使用

[root@docker38 ceph]# mount -t ceph node140:6789:/ /mnt -o name=admin,secret=AQB9w2BdnggFIBAA7SR+7cO/PtZl9PTlriBL1A==

(3)centos7开机挂载

[root@docker38 ~]# vim /etc/rc.local
mount -t ceph node140:6789:/ /mnt -o name=admin,secret=AQB9w2BdnggFIBAA7SR+7cO/PtZl9PTlriBL1A==
如果开机不自动执行 /etc/rc.local
[root@docker38 ~]# chmod +x /etc/rc.d/rc.local

客户端通过FUSE方式挂在cephfs

(1)客户端安装ceph-fuse软件包

[root@docker38 ceph]# yum -y install ceph-fuse

(2)创建挂载目录

[root@docker38 ~]# mkdir /ceph/cephfs -pv

(3)从服务器断,将客户端密钥复制到/etc/ceph/

[root@node140 ceph]# scp ceph.client.admin.keyring root@10.10.204.38:/etc/ceph/

(4)挂载cephfs

[root@docker38 ~]# ceph-fuse -m node140:6789 /ceph/cephfs/

(5)查看挂载

[root@docker38 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 46G 24G 22G 54% /
devtmpfs 4.8G 0 4.8G 0% /dev
tmpfs 4.9G 0 4.9G 0% /dev/shm
tmpfs 4.9G 8.9M 4.8G 1% /run
tmpfs 4.9G 0 4.9G 0% /sys/fs/cgroup
/dev/sda1 1014M 255M 760M 26% /boot
10.10.202.140:6789:/ 2.8T 0 2.8T 0% /mnt
tmpfs 984M 0 984M 0% /run/user/0
ceph-fuse 2.8T 0 2.8T 0% /ceph/cephfs

(6)开机自动挂载

[root@docker38 ~]# vim /etc/rc.local
ceph-fuse -m node140:6789 /ceph/cephfs/

相关内容

热门资讯

紧张关系进一步升级,巴西外交部... 【环球网报道】美国《纽约时报》当地时间25日报道称,据美巴两国官员透露,巴西政府阻止了一个美国代表团...
泽连斯基:俄拟再招募3万朝鲜士... 据凤凰卫视报道,乌克兰总统泽连斯基7月25日声称,俄罗斯打算再向朝鲜招募3万名士兵,以支援俄军对乌克...
警察涉嫌猥亵他人,切莫等被害人... 针对媒体报道民警牛某某涉嫌猥亵他人一事,亳州市公安局发布情况通报表示,已“立即成立调查组,全面开展调...
哈萨克斯坦总统说了一番话,普京... 资料图看了视频,确实是非常罕见一幕。一个国家领导人,当面规劝普京结束战争。我看到,这番话一出口,普京...
台风“红霞”成为今年以来登陆我... 根据中央气象台、广东省气象台消息,今年第12号台风“红霞”的中心已于今天(26日)3时50分前后在广...
业界热议AI安全护栏升级路径 ● 本报记者 郑萃颖 近年来,人工智能(AI)技术快速发展,相关安全问题也引发各界关注。接受中国证券...
RISC-V:当开源架构遇见智... 2026年,RISC-V正站在新的历史节点。智能体的崛起、数据中心算力范式的重构,RVA23、RIS...
网络电视不小心按成蓝屏了 1、重新检查并连接好电视机的信号源输入即可。2、检测电视机的信号源输入,如线路、接口松动,则重新连接...
问问海尔的冰箱款式怎么样 最佳回答 海尔冰箱的款式还是很多的,你可以去专卖店看一看,也可以去京东上或者是天猫上看一看,京东和天...
美的中央空调面板按了没反应 美的中央空调面板按了没反应可能有多种原因,以下是一些常见的解决方法:1. 检查电源:确保空调面板已接...