一、介绍:

  ceph MDS 是元数据服务器,只有ceph 文件系统(cephFS)才会需要。

  cephFS 在RADOS 层之上 提供一个兼容POSIX 的文件系统。他是用MDS 作为守护进程,负责管理其元素数据并将它和其他数据分开。

  cephfs 需要用到两个pool : fs_data 和fs_metadata。 在初次使用ceph 就能之前需要首先规划 集群一共承载多少存储业务,创建多少个 pool,最后得到每个存储应该分配多少个pg。

  pg 数量计算:

    集群PG总数:

      PG 总数= (OSD  总数* 100 )/最大副本数       (结果舍入到最接近的2的N次方幂的值)             结合本人搭建集群、例: PG总数 = (5*100)/2=250 ≈ 256 个PG。

    集群中 每个pool 的pg 总数:

      PG  总数= ((OSD总数*100)/ 最大副本数 )/ 池数                   本人 规划 共有两种业务存储,平均分 256个PG ,每个业务存储使用 128个。  cephfs 两个pool :fs_data 使用 96个PG   、fs_metadata 使用 32个PG。

  创建池:(语法

    #ceph osd pool create  pool_name gp_num pgp_num

    PGP是为了实现定位而设置的PG,默认情况下单个池的PG总数和PGP总数一致,即 PG_num=PGP_num

二、部署mds

  1、使用 ceph-deploy 在集群中部署MDS

    # ceph-deploy mds create ceph{1,2,3}           在集群中建议配置 ≥1的奇数个 mds 节点,保证高可用。

  2、创建件 cephfs 做需要的pool

    # ceph osd pool create fs_data 96 96

    # ceph osd pool create fs_metadata 32 32

    删除池:

      # 语法: ceph osd pool delete pool_name pool_name  --yes-i-really-really-mean-it

      备注:新版的ceph 默认不允许删除 pool,需要在集群文件 ceph.conf 中配置[mon],增加 mon删除 pool 的权限。建议在真正需要删除pool 时再修改集群文件配置此权限。其他时间请删除权限配置,避免误操作带来重大过错。

        ceph  文件系统(cephfs) -- 初体验-LMLPHP

  3、创建一个cephfs

    《语法》# ceph fs new  <fs_name>   <metadata>  <data>

       例:# ceph fs new cephfs fs_metadata fs_data

三、客户端调用

  Linux 系统:

    在客户端调用,需要集群的信任key:/etc/ceph/ceph.client.admin.keyring  文件中的Key 值:

    # 语法:mount -t ceph mds_node1:6789,mds_node2:6789,mds_node3:6789:/ client_mount_path -o name=admin,secret=Key_value 

    例:

    # mount -t ceph 10.6.32.20:6789,10.6.32.21:6789,10.6.32.22:6789:/ /cephfs_samba -o name=admin,secret=adfasdfasdfsdfasdferfdsgersfdewafdgweradf== 

   查看:

      ceph  文件系统(cephfs) -- 初体验-LMLPHP

  Windows系统:

 windows 系统调用,目前还在探索,后期补充。谢谢

05-19 02:51