前文我们了解了ceph之上的RBD接口使用相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16753098.html;今天我们来聊一聊ceph之上的另一个客户端接口cephfs使用相关话题;

  CephFS概述

  文件系统是至今在计算机领域中用到的存储访问中最通用也是最普遍的接口;即便是我们前面聊到的RDB块设备,绝大多数都是格式化分区挂载至文件系统之上使用;使用纯裸设备的场景其实不多;为此,ceph在向外提供客户端接口中也提供了文件系统接口cephfs;不同于rbd的架构,cephfs需要在rados存储集群上启动一个mds的进程来帮忙管理文件系统的元数据信息;我们知道对于rados存储系统来说,不管什么方式的客户端,存储到rados之上的数据都会经由存储池,然后存储到对应的osd之上;对于mds(metadata server )来说,它需要工作为一个守护进程,为其客户端提供文件系统服务;客户端的每一次存取操作,都会先联系mds,找对应的元数据信息;但是mds它自身不存储任何元数据信息,文件系统的元数据信息都会存储到rados的一个存储池当中,而文件本身的数据存储到另一个存储池当中;这也意味着msd是一个无状态服务,有点类似k8s里的apiserver,自身不存储数据,而是将数据存储至etcd中,使得apiserver 成为一个无状态服务;mds为一个无状态服务,也就意味着可以有多个mds同时提供服务,相比传统文件存储系统来讲metadata server成为瓶颈的可能也就不复存在;

  提示:CephFS依赖于专用的MDS(MetaData Server)组件管理元数据信息并向客户端输出一个倒置的树状层级结构;将元数据缓存于MDS的内存中, 把元数据的更新日志于流式化后存储在RADOS集群上, 将层级结构中的的每个名称空间对应地实例化成一个目录且存储为一个专有的RADOS对象;

  CephFS架构

  提示:cephfs是建构在libcephfs之上,libcephfs建构在librados之上,即cephfs工作在librados的顶端,向外提供文件系统服务;它支持两种方式的使用,一种是基于内核空间模块(ceph)挂载使用,一种是基于用户空间FUSE来挂载使用;

  创建CephFS

  通过上述描述,cephfs的工作逻辑首先需要两个存储池来分别存放元数据和数据;这个我们在前边的ceph访问接口启用一文中有聊到过,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16727620.html;我这里不做过多说明;

  查看CephFS状态

  1. [root@ceph-admin ~]# ceph fs status cephfs
  2. cephfs - 0 clients
  3. ======
  4. +------+--------+------------+---------------+-------+-------+
  5. | Rank | State | MDS | Activity | dns | inos |
  6. +------+--------+------------+---------------+-------+-------+
  7. | 0 | active | ceph-mon02 | Reqs: 0 /s | 10 | 13 |
  8. +------+--------+------------+---------------+-------+-------+
  9. +---------------------+----------+-------+-------+
  10. | Pool | type | used | avail |
  11. +---------------------+----------+-------+-------+
  12. | cephfs-metadatapool | metadata | 2286 | 280G |
  13. | cephfs-datapool | data | 0 | 280G |
  14. +---------------------+----------+-------+-------+
  15. +-------------+
  16. | Standby MDS |
  17. +-------------+
  18. +-------------+
  19. MDS version: ceph version 13.2.10 (564bdc4ae87418a232fc901524470e1a0f76d641) mimic (stable)
  20. [root@ceph-admin ~]#

  CephFS客户端账号

  启用CephX认证的集群上,CephFS的客户端完成认证后方可挂载访问文件系统;

  1. [root@ceph-admin ~]# ceph auth get-or-create client.fsclient mon 'allow r' mds 'allow rw' osd 'allow rw pool=cephfs-datapool'
  2. [client.fsclient]
  3. key = AQDx2z5jgeqiIRAAIxQFz09BF99kcAYxiFwOWg==
  4. [root@ceph-admin ~]# ceph auth get client.fsclient
  5. exported keyring for client.fsclient
  6. [client.fsclient]
  7. key = AQDx2z5jgeqiIRAAIxQFz09BF99kcAYxiFwOWg==
  8. caps mds = "allow rw"
  9. caps mon = "allow r"
  10. caps osd = "allow rw pool=cephfs-datapool"
  11. [root@ceph-admin ~]#

  提示:这里需要注意,对于元数据存储池来说,它的客户端是mds,对应数据的读写都是有mds来完成操作,对于cephfs的客户端来说,他不需要任何操作元数据存储池的权限,我们这里只需要授权用户对数据存储池有读写权限即可;对于mon节点来说,用户只需要有读的权限就好,对mds有读写权限就好;

  保存用户账号的密钥信息于secret文件,用于客户端挂载操作认证之用

  1. [root@ceph-admin ~]# ceph auth print-key client.fsclient
  2. AQDx2z5jgeqiIRAAIxQFz09BF99kcAYxiFwOWg==[root@ceph-admin ~]# ceph auth print-key client.fsclient -o fsclient.key
  3. [root@ceph-admin ~]# cat fsclient.key
  4. AQDx2z5jgeqiIRAAIxQFz09BF99kcAYxiFwOWg==[root@ceph-admin ~]#

  提示:这里只需要导出key的信息就好,对于权限信息,客户端用不到,客户端拿着key去ceph上认证,对应权限ceph是知道的;

  将密钥文件需要保存于挂载CephFS的客户端主机上,我们可以使用scp的方式推到客户端主机之上;客户端主机除了要有这个key文件之外,还需要有ceph集群的配置文件

  提示:我这里以admin host作为客户端使用,将对应key文件复制到/etc/ceph/目录下,对应使用内核模块挂载,指定mount到该目录读取对应key的信息即可;

  内核客户端安装必要工具和模块

  1、内核模块ceph.ko

  2、安装ceph-common程序包

  3、提供ceph.conf配置文件和用于认证的密钥文件

  1. [root@ceph-admin ~]# ls /lib/modules/3.10.0-1160.76.1.el7.x86_64/kernel/fs/ceph/
  2. ceph.ko.xz
  3. [root@ceph-admin ~]# modinfo ceph
  4. filename: /lib/modules/3.10.0-1160.76.1.el7.x86_64/kernel/fs/ceph/ceph.ko.xz
  5. license: GPL
  6. description: Ceph filesystem for Linux
  7. author: Patience Warnick <patience@newdream.net>
  8. author: Yehuda Sadeh <yehuda@hq.newdream.net>
  9. author: Sage Weil <sage@newdream.net>
  10. alias: fs-ceph
  11. retpoline: Y
  12. rhelversion: 7.9
  13. srcversion: B1FF0EC5E9EF413CE8D9D1C
  14. depends: libceph
  15. intree: Y
  16. vermagic: 3.10.0-1160.76.1.el7.x86_64 SMP mod_unload modversions
  17. signer: CentOS Linux kernel signing key
  18. sig_key: C6:93:65:52:C5:A1:E9:97:0B:A2:4C:98:1A:C4:51:A6:BC:11:09:B9
  19. sig_hashalgo: sha256
  20. [root@ceph-admin ~]# yum info ceph-common
  21. Loaded plugins: fastestmirror
  22. Repository epel is listed more than once in the configuration
  23. Repository epel-debuginfo is listed more than once in the configuration
  24. Repository epel-source is listed more than once in the configuration
  25. Loading mirror speeds from cached hostfile
  26. * base: mirrors.aliyun.com
  27. * extras: mirrors.aliyun.com
  28. * updates: mirrors.aliyun.com
  29. Installed Packages
  30. Name : ceph-common
  31. Arch : x86_64
  32. Epoch : 2
  33. Version : 13.2.10
  34. Release : 0.el7
  35. Size : 44 M
  36. Repo : installed
  37. From repo : Ceph
  38. Summary : Ceph Common
  39. URL : http://ceph.com/
  40. License : LGPL-2.1 and CC-BY-SA-3.0 and GPL-2.0 and BSL-1.0 and BSD-3-Clause and MIT
  41. Description : Common utilities to mount and interact with a ceph storage cluster.
  42. : Comprised of files that are common to Ceph clients and servers.
  43.  
  44. [root@ceph-admin ~]# ls /etc/ceph/
  45. ceph.client.admin.keyring ceph.client.test.keyring ceph.conf fsclient.key rbdmap tmpJ434zL
  46. [root@ceph-admin ~]#

  mount挂载CephFS

  1. [root@ceph-admin ~]# df -h
  2. Filesystem Size Used Avail Use% Mounted on
  3. devtmpfs 899M 0 899M 0% /dev
  4. tmpfs 910M 0 910M 0% /dev/shm
  5. tmpfs 910M 9.6M 901M 2% /run
  6. tmpfs 910M 0 910M 0% /sys/fs/cgroup
  7. /dev/mapper/centos-root 49G 3.6G 45G 8% /
  8. /dev/sda1 509M 176M 334M 35% /boot
  9. tmpfs 182M 0 182M 0% /run/user/0
  10. [root@ceph-admin ~]# mount -t ceph ceph-mon01:6789,ceph-mon02:6789,ceph-mon03:6789:/ /mnt -o name=fsclient,secretfile=/etc/ceph/fsclient.key
  11. [root@ceph-admin ~]# df -h
  12. Filesystem Size Used Avail Use% Mounted on
  13. devtmpfs 899M 0 899M 0% /dev
  14. tmpfs 910M 0 910M 0% /dev/shm
  15. tmpfs 910M 9.6M 901M 2% /run
  16. tmpfs 910M 0 910M 0% /sys/fs/cgroup
  17. /dev/mapper/centos-root 49G 3.6G 45G 8% /
  18. /dev/sda1 509M 176M 334M 35% /boot
  19. tmpfs 182M 0 182M 0% /run/user/0
  20. 192.168.0.71:6789,172.16.30.71:6789,192.168.0.72:6789,172.16.30.72:6789,192.168.0.73:6789,172.16.30.73:6789:/ 281G 0 281G 0% /mnt
  21. [root@ceph-admin ~]# mount |tail -1
  22. 192.168.0.71:6789,172.16.30.71:6789,192.168.0.72:6789,172.16.30.72:6789,192.168.0.73:6789,172.16.30.73:6789:/ on /mnt type ceph (rw,relatime,name=fsclient,secret=<hidden>,acl,wsize=16777216)
  23. [root@ceph-admin ~]#

  查看挂载状态

  1. [root@ceph-admin ~]# stat -f /mnt
  2. File: "/mnt"
  3. ID: a0de3ae372c48f48 Namelen: 255 Type: ceph
  4. Block size: 4194304 Fundamental block size: 4194304
  5. Blocks: Total: 71706 Free: 71706 Available: 71706
  6. Inodes: Total: 0 Free: -1
  7. [root@ceph-admin ~]#

  在/mnt上存储数据,看看对应是否可以正常存储?

  1. [root@ceph-admin ~]# find /usr/share/ -type f -name '*.jpg' -exec cp {} /mnt \;
  2. [root@ceph-admin ~]# ll /mnt
  3. total 3392
  4. -rw-r--r-- 1 root root 961243 Oct 6 22:17 day.jpg
  5. -rw-r--r-- 1 root root 961243 Oct 6 22:17 default.jpg
  6. -rw-r--r-- 1 root root 980265 Oct 6 22:17 morning.jpg
  7. -rw-r--r-- 1 root root 569714 Oct 6 22:17 night.jpg
  8. [root@ceph-admin ~]#

  提示:可以看到我们可以正常向/mnt存储文件;

  将挂载信息写入/etc/fstab配置文件

  提示:这里需要注意,写入fstab文件中,如果是网络文件系统建议加上_netdev选项来指定该文件系统为网络文件系统,如果当系统启动,如果挂载不上,超时后自动放弃挂载,否则系统会一直尝试挂载,导致系统可能启动不起来;

  测试,取消/mnt的挂载,然后使用fstab配置文件挂载,看看是否可以正常挂载?

  1. [root@ceph-admin ~]# umount /mnt
  2. [root@ceph-admin ~]# ls /mnt
  3. [root@ceph-admin ~]# df -h
  4. Filesystem Size Used Avail Use% Mounted on
  5. devtmpfs 899M 0 899M 0% /dev
  6. tmpfs 910M 0 910M 0% /dev/shm
  7. tmpfs 910M 9.6M 901M 2% /run
  8. tmpfs 910M 0 910M 0% /sys/fs/cgroup
  9. /dev/mapper/centos-root 49G 3.6G 45G 8% /
  10. /dev/sda1 509M 176M 334M 35% /boot
  11. tmpfs 182M 0 182M 0% /run/user/0
  12. [root@ceph-admin ~]# mount -a
  13. [root@ceph-admin ~]# ls /mnt
  14. day.jpg default.jpg morning.jpg night.jpg
  15. [root@ceph-admin ~]# df -h
  16. Filesystem Size Used Avail Use% Mounted on
  17. devtmpfs 899M 0 899M 0% /dev
  18. tmpfs 910M 0 910M 0% /dev/shm
  19. tmpfs 910M 9.6M 901M 2% /run
  20. tmpfs 910M 0 910M 0% /sys/fs/cgroup
  21. /dev/mapper/centos-root 49G 3.6G 45G 8% /
  22. /dev/sda1 509M 176M 334M 35% /boot
  23. tmpfs 182M 0 182M 0% /run/user/0
  24. 192.168.0.71:6789,172.16.30.71:6789,192.168.0.72:6789,172.16.30.72:6789,192.168.0.73:6789,172.16.30.73:6789:/ 281G 0 281G 0% /mnt
  25. [root@ceph-admin ~]#

  提示:可以看到我们使用mount -a是可以直接将cephfs挂载至/mnt之上,说明我们配置文件内容没有问题;ok,到此基于内核空间模块(ceph.ko)挂载cephfs文件系统的测试就完成了,接下来我们来说说使用用户空间fuse挂载cephfs;

  FUSE挂载CephFS

  FUSE,全称Filesystem in Userspace,用于非特权用户能够无需操作内核而创建文件系统;客户端主机环境准备,安装ceph-fuse程序包,获取到客户端账号的keyring文件和ceph.conf配置文件即可;这里就不需要ceph-common;

  1. [root@ceph-admin ~]# yum install -y ceph-fuse
  2. Loaded plugins: fastestmirror
  3. Repository epel is listed more than once in the configuration
  4. Repository epel-debuginfo is listed more than once in the configuration
  5. Repository epel-source is listed more than once in the configuration
  6. Loading mirror speeds from cached hostfile
  7. * base: mirrors.aliyun.com
  8. * extras: mirrors.aliyun.com
  9. * updates: mirrors.aliyun.com
  10. Ceph | 1.5 kB 00:00:00
  11. Ceph-noarch | 1.5 kB 00:00:00
  12. base | 3.6 kB 00:00:00
  13. ceph-source | 1.5 kB 00:00:00
  14. epel | 4.7 kB 00:00:00
  15. extras | 2.9 kB 00:00:00
  16. updates | 2.9 kB 00:00:00
  17. (1/4): extras/7/x86_64/primary_db | 249 kB 00:00:00
  18. (2/4): epel/x86_64/updateinfo | 1.1 MB 00:00:00
  19. (3/4): epel/x86_64/primary_db | 7.0 MB 00:00:01
  20. (4/4): updates/7/x86_64/primary_db | 17 MB 00:00:02
  21. Resolving Dependencies
  22. --> Running transaction check
  23. ---> Package ceph-fuse.x86_64 2:13.2.10-0.el7 will be installed
  24. --> Processing Dependency: fuse for package: 2:ceph-fuse-13.2.10-0.el7.x86_64
  25. --> Running transaction check
  26. ---> Package fuse.x86_64 0:2.9.2-11.el7 will be installed
  27. --> Finished Dependency Resolution
  28.  
  29. Dependencies Resolved
  30.  
  31. ==================================================================================================================================
  32. Package Arch Version Repository Size
  33. ==================================================================================================================================
  34. Installing:
  35. ceph-fuse x86_64 2:13.2.10-0.el7 Ceph 490 k
  36. Installing for dependencies:
  37. fuse x86_64 2.9.2-11.el7 base 86 k
  38.  
  39. Transaction Summary
  40. ==================================================================================================================================
  41. Install 1 Package (+1 Dependent package)
  42.  
  43. Total download size: 576 k
  44. Installed size: 1.6 M
  45. Downloading packages:
  46. (1/2): fuse-2.9.2-11.el7.x86_64.rpm | 86 kB 00:00:00
  47. (2/2): ceph-fuse-13.2.10-0.el7.x86_64.rpm | 490 kB 00:00:15
  48. ----------------------------------------------------------------------------------------------------------------------------------
  49. Total 37 kB/s | 576 kB 00:00:15
  50. Running transaction check
  51. Running transaction test
  52. Transaction test succeeded
  53. Running transaction
  54. Installing : fuse-2.9.2-11.el7.x86_64 1/2
  55. Installing : 2:ceph-fuse-13.2.10-0.el7.x86_64 2/2
  56. Verifying : 2:ceph-fuse-13.2.10-0.el7.x86_64 1/2
  57. Verifying : fuse-2.9.2-11.el7.x86_64 2/2
  58.  
  59. Installed:
  60. ceph-fuse.x86_64 2:13.2.10-0.el7
  61.  
  62. Dependency Installed:
  63. fuse.x86_64 0:2.9.2-11.el7
  64.  
  65. Complete!
  66. [root@ceph-admin ~]#

  挂载CephFS

  1. [root@ceph-admin ~]# ceph-fuse -n client.fsclient -m ceph-mon01:6789,ceph-mon02:6789,ceph-mon03:6789 /mnt
  2. 2022-10-06 23:13:17.185 7fae97fbec00 -1 auth: unable to find a keyring on /etc/ceph/ceph.client.fsclient.keyring,/etc/ceph/ceph.keyring,/etc/ceph/keyring,/etc/ceph/keyring.bin,: (2) No such file or directory
  3. 2022-10-06 23:13:17.185 7fae97fbec00 -1 monclient: ERROR: missing keyring, cannot use cephx for authentication
  4. failed to fetch mon config (--no-mon-config to skip)
  5. [root@ceph-admin ~]#

  提示:这里提示我们在/etc/ceph/目录下没有找到对应用户的keyring文件;

  导出client.fsclient用户密钥信息,并存放在/etc/ceph下取名为ceph.client.fsclient.keyring;

  1. [root@ceph-admin ~]# ceph auth get client.fsclient -o /etc/ceph/ceph.client.fsclient.keyring
  2. exported keyring for client.fsclient
  3. [root@ceph-admin ~]# cat /etc/ceph/ceph.client.fsclient.keyring
  4. [client.fsclient]
  5. key = AQDx2z5jgeqiIRAAIxQFz09BF99kcAYxiFwOWg==
  6. caps mds = "allow rw"
  7. caps mon = "allow r"
  8. caps osd = "allow rw pool=cephfs-datapool"
  9. [root@ceph-admin ~]#

  再次使用ceph-fuse挂载cephfs

  1. [root@ceph-admin ~]# ceph-fuse -n client.fsclient -m ceph-mon01:6789,ceph-mon02:6789,ceph-mon03:6789 /mnt
  2. 2022-10-06 23:16:43.066 7fd51d9c0c00 -1 init, newargv = 0x55f0016ebd40 newargc=7
  3. ceph-fuse[8096]: starting ceph client
  4. ceph-fuse[8096]: starting fuse
  5. [root@ceph-admin ~]# df -h
  6. Filesystem Size Used Avail Use% Mounted on
  7. devtmpfs 899M 0 899M 0% /dev
  8. tmpfs 910M 0 910M 0% /dev/shm
  9. tmpfs 910M 9.6M 901M 2% /run
  10. tmpfs 910M 0 910M 0% /sys/fs/cgroup
  11. /dev/mapper/centos-root 49G 3.6G 45G 8% /
  12. /dev/sda1 509M 176M 334M 35% /boot
  13. tmpfs 182M 0 182M 0% /run/user/0
  14. ceph-fuse 281G 4.0M 281G 1% /mnt
  15. [root@ceph-admin ~]# ll /mnt
  16. total 3392
  17. -rw-r--r-- 1 root root 961243 Oct 6 22:17 day.jpg
  18. -rw-r--r-- 1 root root 961243 Oct 6 22:17 default.jpg
  19. -rw-r--r-- 1 root root 980265 Oct 6 22:17 morning.jpg
  20. -rw-r--r-- 1 root root 569714 Oct 6 22:17 night.jpg
  21. [root@ceph-admin ~]#

  将挂载信息写入/etc/fstab文件中

  提示:使用fuse方式挂载cephfs,对应文件系统设备为none,类型为fuse.ceph;挂载选项里只需要指定用ceph.id(ceph授权的用户名,不要前缀client),ceph配置文件路径;这里不需要指定密钥文件,因为ceph.id指定的用户名,ceph-fuse会自动到/etc/ceph/目录下找对应文件名的keyring文件来当作对应用户名的密钥文件;

  测试,使用fstab配置文件,看看是否可正常挂载?

  1. [root@ceph-admin ~]# df
  2. Filesystem 1K-blocks Used Available Use% Mounted on
  3. devtmpfs 919632 0 919632 0% /dev
  4. tmpfs 931496 0 931496 0% /dev/shm
  5. tmpfs 931496 9744 921752 2% /run
  6. tmpfs 931496 0 931496 0% /sys/fs/cgroup
  7. /dev/mapper/centos-root 50827012 3718492 47108520 8% /
  8. /dev/sda1 520868 179572 341296 35% /boot
  9. tmpfs 186300 0 186300 0% /run/user/0
  10. [root@ceph-admin ~]# ll /mnt
  11. total 0
  12. [root@ceph-admin ~]# mount -a
  13. ceph-fuse[8770]: starting ceph client
  14. 2022-10-06 23:25:57.230 7ff21e3f7c00 -1 init, newargv = 0x5614f1bad9d0 newargc=9
  15. ceph-fuse[8770]: starting fuse
  16. [root@ceph-admin ~]# mount |tail -2
  17. fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
  18. ceph-fuse on /mnt type fuse.ceph-fuse (rw,relatime,user_id=0,group_id=0,allow_other)
  19. [root@ceph-admin ~]# ll /mnt
  20. total 3392
  21. -rw-r--r-- 1 root root 961243 Oct 6 22:17 day.jpg
  22. -rw-r--r-- 1 root root 961243 Oct 6 22:17 default.jpg
  23. -rw-r--r-- 1 root root 980265 Oct 6 22:17 morning.jpg
  24. -rw-r--r-- 1 root root 569714 Oct 6 22:17 night.jpg
  25. [root@ceph-admin ~]# df -h
  26. Filesystem Size Used Avail Use% Mounted on
  27. devtmpfs 899M 0 899M 0% /dev
  28. tmpfs 910M 0 910M 0% /dev/shm
  29. tmpfs 910M 9.6M 901M 2% /run
  30. tmpfs 910M 0 910M 0% /sys/fs/cgroup
  31. /dev/mapper/centos-root 49G 3.6G 45G 8% /
  32. /dev/sda1 509M 176M 334M 35% /boot
  33. tmpfs 182M 0 182M 0% /run/user/0
  34. ceph-fuse 281G 4.0M 281G 1% /mnt
  35. [root@ceph-admin ~]#

  提示:可以看到使用mount -a 读取配置文件也是可以正常挂载,说明我们配置文件中的内容没有问题;

  卸载文件系统的方式

  第一种我们可以使用umount 挂载点来实现卸载;

  1. [root@ceph-admin ~]# mount |tail -1
  2. ceph-fuse on /mnt type fuse.ceph-fuse (rw,relatime,user_id=0,group_id=0,allow_other)
  3. [root@ceph-admin ~]# ll /mnt
  4. total 3392
  5. -rw-r--r-- 1 root root 961243 Oct 6 22:17 day.jpg
  6. -rw-r--r-- 1 root root 961243 Oct 6 22:17 default.jpg
  7. -rw-r--r-- 1 root root 980265 Oct 6 22:17 morning.jpg
  8. -rw-r--r-- 1 root root 569714 Oct 6 22:17 night.jpg
  9. [root@ceph-admin ~]# umount /mnt
  10. [root@ceph-admin ~]# ll /mnt
  11. total 0
  12. [root@ceph-admin ~]#

  第二种我们使用fusermount -u 挂载点来卸载

  1. [root@ceph-admin ~]# mount -a
  2. ceph-fuse[9717]: starting ceph client
  3. 2022-10-06 23:40:55.540 7f169dbc4c00 -1 init, newargv = 0x55859177fa40 newargc=9
  4. ceph-fuse[9717]: starting fuse
  5. [root@ceph-admin ~]# ll /mnt
  6. total 3392
  7. -rw-r--r-- 1 root root 961243 Oct 6 22:17 day.jpg
  8. -rw-r--r-- 1 root root 961243 Oct 6 22:17 default.jpg
  9. -rw-r--r-- 1 root root 980265 Oct 6 22:17 morning.jpg
  10. -rw-r--r-- 1 root root 569714 Oct 6 22:17 night.jpg
  11. [root@ceph-admin ~]# fusermount -u /mnt
  12. [root@ceph-admin ~]# ll /mnt
  13. total 0
  14. [root@ceph-admin ~]#

  ok,到此基于用户空间fuse方式挂载cephfs的测试就完成了;

分布式存储系统之Ceph集群CephFS基础使用的更多相关文章

  1. 分布式存储系统之Ceph集群RBD基础使用

    前文我们了解了Ceph集群cephx认证和授权相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16748149.html:今天我们来聊一聊ceph集群的 ...

  2. 分布式存储系统之Ceph集群RadosGW基础使用

    前文我们了解了MDS扩展相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16759585.html:今天我们来聊一聊RadosGW的基础使用相关话题: ...

  3. 分布式存储系统之Ceph集群部署

    前文我们了解了Ceph的基础架构和相关组件的介绍,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16720234.html:今天我们来部署一个ceph集群: 部 ...

  4. 分布式存储系统之Ceph集群CephX认证和授权

    前文我们了解了Ceph集群存储池操作相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16743611.html:今天我们来聊一聊在ceph上认证和授权的 ...

  5. 分布式存储系统之Ceph集群启用Dashboard及使用Prometheus监控Ceph

    前文我们了解了Ceph之上的RadosGW基础使用相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16768998.html:今天我们来聊一聊Ceph启 ...

  6. 分布式存储系统之Ceph集群MDS扩展

    前文我们了解了cephfs使用相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16758866.html:今天我们来聊一聊MDS组件扩展相关话题: 我们 ...

  7. 分布式存储系统之Ceph集群访问接口启用

    前文我们使用ceph-deploy工具简单拉起了ceph底层存储集群RADOS,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16724473.html:今天我 ...

  8. 分布式存储系统之Ceph集群存储池、PG 与 CRUSH

    前文我们了解了ceph集群状态获取常用命令以及通过ceph daemon.ceph tell动态配置ceph组件.ceph.conf配置文件相关格式的说明等,回顾请参考https://www.cnbl ...

  9. 分布式存储系统之Ceph集群存储池操作

    前文我们了解了ceph的存储池.PG.CRUSH.客户端IO的简要工作过程.Ceph客户端计算PG_ID的步骤的相关话题,回顾请参考https://www.cnblogs.com/qiuhom-187 ...

随机推荐

  1. Ngnix初步学习

    Nginx下载与安装(Linux) nginx下载 1.root用户下进入/usr/local/src su root cd /usr/local/src 2.下载nginx所需包 # nginx w ...

  2. Java开发学习(二十一)----Spring事务简介与事务角色解析

    一.Spring事务简介 1.1 相关概念介绍 事务作用:在数据层保障一系列的数据库操作同成功同失败 Spring事务作用:在数据层或业务层保障一系列的数据库操作同成功同失败 数据层有事务我们可以理解 ...

  3. 感谢有你!Apache DolphinScheduler 项目 GitHub star 突破 8k

    本周伊始,Apache DolphinScheduler 项目在 GitHub 上的 Github Star 总数首次突破 8K.目前,Apache DolphinScheduler 社区已经拥有 C ...

  4. DolphinScheduler 功能开发:⼯作流级别任务空跑(后端),测试工作流是否正确执行...

    点击上方 蓝字关注我们 ✎ 编 者 按 在今年由中国科学院软件研究所主办的开源软件所供应链点亮计划-开源之夏活动中,有不少小伙伴提交了关于 DolphinScheduler 的项目,本期是来自成都信息 ...

  5. 【深入学习.Net】.泛型集合【体检管理系统】

    基于泛型List的体检管理系统(蜗牛爬坡) 第五章[体检管理系统] 一.项目展示图(基于.net core6.0) 二.首先准备两个Model类 HealthCheckItem(项目类):Name(项 ...

  6. 【RocketMQ】事务的实现原理

    事务的使用 RocketMQ事务的使用场景 单体架构下的事务 在单体系统的开发过程中,假如某个场景下需要对数据库的多张表进行操作,为了保证数据的一致性,一般会使用事务,将所有的操作全部提交或者在出错的 ...

  7. java-运算符与判断

    运算符: 1)算术运算符:+-*/%,++,-- 进行加.减.乘.除.取余数.自增.自减 2)关系运算符:>,<,>=,<=,==,!=    boolean类型 判断两个整形 ...

  8. Canvas 非线性图形(一):文本

    基础 画布除了绘制图形以外还可以绘制文本,画布中的文本可以设置字体大小.字体格式.对齐方式(横向和纵向对齐方式),并且还可以制作很炫酷的文本,比如渐变文字. 文本有以下三个属性,控制文本的字体大小.字 ...

  9. Excel 文本函数(一):LEFT、RIGHT 和 MID

    文本函数 LEFT.RIGHT 以及 MID 是非常常用的,它们用于截取文本字符串. LEFT(text, [num_chars]) 是从文本字符串的左边开始截取:RIGHT(text, [num_c ...

  10. XYX错误集

    (频数递减) # 数据范围:没开Long Long (*inf^2) # while 打成了 if ,if 打成了 while(*inf^2) # 换根DP:两个dfs调用错误 (*inf) # ZK ...