1、启用CephFS

CephFS文件系统至少需要两个存储池,一个用于数据存储,一个用于元数据存储。

  • 启用MDS服务,MDS目前仅支持主备模式部署,因此仅有一个节点为active,其余节点均为standby

    1. ]$ ceph-deploy mds create ceph-mon2 ceph-mon3
    2. ]$ ceph mds stat
    3. cephfs:1 {0=ceph-mon2=up:active} 1 up:standby
  • 创建数据存储池

    ]$ ceph osd pool create cephfs_data 128
    
  • 创建MeataData存储池

    ]$ ceph osd pool create cephfs_metadata 128
    
  • 启用存储池为CephFS

    ]$ ceph fs new cephfs cephfs_metadata cephfs_data
    

    2、挂载CephFS

    CephFS有两种挂载方式,内核驱动kernel driver和用户驱动fuse

    2.1、内核挂载

  • 添加用户jerry,指定jerry仅对/jerry有读写权限。

    ]$ ceph auth get-or-create client.jerry mon 'allow r' mds 'allow r, allow rw path=/jerry' osd 'allow rw'
    [client.jerry]
      key = AQCVtyxbal5PABAA+9CjbdyXsUiFdbvmFiZPIg==
    
  • 用户管理 ```bash

    获取用户信息

    ]$ ceph auth list client.qiyuesuo key: AQCdRVBhHZrxJhAAGEZUiy9bxOiZTsfYAQPzUw== caps: [mds] allow r, allow rw path=/fs_qiyuesuo caps: [mon] allow r caps: [osd] allow rw pool=cephfs_data

    删除用户

    ]$ ceph auth del client.fapiao

    修改用户权限

    ]$ ceph auth caps client.lucy mon ‘allow r’ mds ‘allow r, allow rw path=/lucy, allow rw path=/jerry/jerry_share’ osd ‘allow rw’


- yum安装ceph依赖包
```bash
]$ rpm -ivh https://mirrors.aliyun.com/ceph/rpm-nautilus/el7/noarch/ceph-release-1-1.el7.noarch.rpm
]$ yum install ceph-common
  • Linux内核在2.6.34以后的版本才支持rbd模块。可以使用以下命令检查

    ]$ lsmod | grep rbd
    # 如没有加载,可使用以下命令加载模块
    ]$ modprobe rbd
    
  • 客户端主机添加用户key文件

    vim /etc/ceph/ceph.client.admin.keyring
    [client.qiyuesuo]
    key = AQCdRVBhHZrxJhAAGEZUiy9bxOiZTsfYAQPzUw==
    
  • 创建挂载点,挂载CephFS

  • https://www.csdn.net/tags/NtzaUgwsNTQxMjYtYmxvZwO0O0OO0O0O.html

    ]$ mkdir /fs_qiyuesuo
    ]$ mount -t ceph mds1.stbchina.cn,mds2.stbchina.cn:/ /data/fs_qiyuesuo/ -o name=qiyuesuo,secret=AQCdRVBhHZrxJhAAGEZUiy9bxOiZTsfYAQPzUw==
    
  • 如果要指定secret文件,可以使用secretfile指令

    ]$ cat /etc/ceph/secretkey
    AQCge1Fh+gKYCBAAPKNt0uH91/78/zw5WQO9UA==
    ]$ mount -t ceph mds1.stbchina.cn,mds2.stbchina.cn:/ /data/fs_qiyuesuo/ -o name=qiyuesuo,secretfile=/etc/ceph/secretkey
    
  • 添加至fstab

    mds1.stbchina.cn,mds2.stbchina.cn:/ /data/fs_qiyuesuo ceph name=qiyuesuo,secretfile=/etc/ceph/secretkey,noatime,_netdev 0 2
    

    2.2、ceph-fuse挂载

  • 安装依赖环境

    ]$ yum -y install epel-release
    ]$ rpm -ivh https://mirrors.aliyun.com/ceph/rpm-nautilus/el7/noarch/ceph-release-1-1.el7.noarch.rpm
    
  • 安装ceph-fuse

    ]$ yum install -y ceph-fuse
    
  • 配置客户端访问key

    ]$ vi /etc/ceph/ceph.client.admin.keyring
    [client.user]
    key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==
    
  • ceph-fuse挂载

    ceph-fuse -m <mons_IP1>:6789,<mons_IP2>:6789,<mons_IP3>:6789 -r <ceph集群中的目录> <宿主机目录> -o nonempty
    # ceph-fuse -m 192.168.18.3:6789,192.168.18.4:6789,192.168.18.5:6789 -r /pvc-volumes /root/cephfsdir -o nonempty