CephFS && RBD 挂载使用说明

CephFS 挂载使用说明

1. 内核挂载

1.1 简介

CephFS 内核模块(kernel driver)是Linux 内核的一部分,内核挂载CephFS 可以获得原生的内核性能。

1.2 内核模块的支持情况

特性 kernel 版本 说明
Inline data 3.19+
Quota 4.17+ Mimic Ceph 引入
多FS 4.7+ 不建议生产环境使用
多活MDS 4.14+
快照 4.17+

** 若需要使用以上特性,需要使用相应版本及以上的Linux 内核。

1.3 客户端配置

若在新的未配置客户端节点,需要先执行依赖安装和cephx 认证相关配置:

  1. ceph-common 已经安装,依赖安装:yum install ceph-common
  2. 在客户端侧从monitor节点获取集群配置:scp root@<monitor>:/etc/ceph/ceph.conf /etc/ceph/ceph.conf
  3. 修改集群配置文件的permissions:chmod 644 /etc/ceph/ceph.conf

** 集群内节点可以可以跳过这一部分。

1.4 挂载步骤

  1. 创建挂载点:mkdir /<mnt>/<mycephfs>

  2. 挂载cephfs:mount -t ceph <192.168.0.1:6789,monhost2:6789,...>:/ /<mnt>/<mycephfs> -o name=admin,secret=<AQATSKdNGBnwLhAAnNDKnH65FmVKpXZJVasUeQ==>
    a)可以将secret放在secretfile中:创建admin.secret 文件,并将secret 直接复制到文件中。挂载命令:mount -t ceph <192.168.0.1:6789,monhost2:6789,...>:/ /<mnt>/<mycephfs> -o name=admin,secretfile=/etc/ceph/admin.secret
    b)如果是多fs,指定-o mds_namespace=othefs即可,不建议多fs,不可用于生产环境

  3. 解除挂载:umount /<mnt>/<mycephfs>

2. 用户态挂载

用户态挂载的好处是独立存储集群CephFS,便于升级。

2.1 挂载步骤

  1. 组件安装:yum install ceph-common ceph-fuse

  2. 创建默认配置目录:mkdir -p /etc/ceph

  3. scp 配置文件:scp <user>@<server-machine>:/etc/ceph/ceph.conf /etc/ceph/ceph.conf

  4. scp cephx user keyring,对mds 有所有权限:scp <user>@<server-machine>:/etc/ceph/ceph.client.admin.keyring /etc/ceph/ceph.client.admin.keyring

  5. 文件权限修改:chmod 644 /etc/ceph/ceph.conf chmod 644 /etc/ceph/ceph.client.admin.keyring

  6. 挂载:ceph-fuse -n client.admin -m u1:6789 /<mnt>/<mycephfs>

  7. 解除挂载:umount /<mnt>/<mycephfs>fusermount -u /<mnt>/<test>/

RBD 使用说明

Ceph RBD 有两种使用方式:librbd 库的方式对外提供接口,用于上层组件对接和开发对接;或是Linux kernel 模块的方式,通过用户空间的RBD 等命令配置并对外提供块存储服务,本说明即是。

1.1 内核模块的支持情况

  • Kernel RBD(KRBD) 有很多选项可以配置,根据不同的内核版本略有差别,一般使用可以不用关心,使用默认值即可。
  • rbd 的参数--image-format 有两个配置可选,默认是2,但是需要3.10 以上的内核版本。若需要可配置的条带化参数,需要支持fancy striping,则需要内核版本4.17+。
  • 后端rbd cli创建image 建议:rbd create --size {size} {pool_name}/{image_name} --image-feature=layering,exclusive-lock。所以至少保证内核版本3.10及以上,对于内核版本不支持的特性,解决方法有两个:1)disable 相关特性:rbd feature disable <rbd_pool>/<image> <feature1> <feature2> 2)使用更高版本的内核,目前默认特性3.10+ 内核就可以。

1.2 客户端配置

若在新的未配置客户端节点,需要先执行依赖安装和cephx 认证相关配置:

  1. 内核是否支持:modprobe rbd 无异常输出即表示支持kernel rbd
  2. 依赖安装:yum install ceph-common
  3. 创建默认配置目录:mkdir -p /etc/ceph
  4. scp 配置文件:scp <user>@<server-machine>:/etc/ceph/ceph.conf /etc/ceph/ceph.conf
  5. scp cephx user keyring:scp <user>@<server-machine>:/etc/ceph/ceph.client.admin.keyring /etc/ceph/ceph.client.admin.keyring
  6. 文件权限修改:chmod 644 /etc/ceph/ceph.conf && chmod 644 /etc/ceph/ceph.client.admin.keyring

** 集群内节点可以可以跳过这一部分。

1.3 客户端挂载步骤

  1. 创建rbd image:rbd create -p <rbd> <image01> --size <10240> --image-feature layering,注意image-feature。

  2. 查看rbd image 信息:rbd info <image01> -p <rbd>,rbd ls -p rbd

  3. 在客户端节点利用内核RBD MAP 至本地块设备 : rbd map rbd/<image01> -m <server-machine> --id <admin> --keyring /etc/ceph/ceph.client.admin.keyring 默认映射至设备/dev/rbd{0}。若客户端为集群内节点,可省略参数指定:rbd map rbd/<image01>

  4. rbd showmapped

1.3.1 本地挂载使用

接上面,

  1. 格式化,创建文件系统:mkfs.xfs /dev/<rbd0>

  2. 创建挂载目录:mkdir /mnt/rbd0

  3. 挂载:mount /dev/<rbd0> /mnt/rbd0
    df -h /mnt/rbd0

  4. umount: umount /dev/<rbd0>

  5. unmap: rbd unmap image01

posted @ 2020-09-29 14:56  TuringM  阅读(1851)  评论(0编辑  收藏  举报