Ceph文件存储配置

要运行文件系统必须创建至少带一个mds的Ceph存储集群
1、部署元数据服务器

ceph-deploy mds create node01 node02 node03

2、查看元数据服务器状态和磁盘信息

ceph mds stat

3、创建两个存储池,一个用于存放元数据,一个用于存放数据

# ceph osd pool create cephfs_data <pg_num>
# ceph osd pool create cephfs_metadata <pg_num>

ceph osd pool create cephfs_data 128 128
ceph osd pool create cephfs_metadata 128 128

4、创建CephFS文件系统

ceph fs new <fs_name> <metadata> <data> {--force}

ceph fs new cephfs cephfs_metadata cephfs_data

5、查看CephFS文件系统

ceph fs ls

6、客户端部署Ceph及其相关工具

rpm -ivh http://mirrors.aliyun.com/ceph/rpm-octopus/el7/noarch/ceph-release-1-1.el7.noarch.rpm
yum -y install ceph-common ceph-fuse

7、服务端使用ceph-authtool生成密码key文件并复制key、keyring和配置文件到客户端

ceph-authtool -p /etc/ceph/ceph.client.admin.keyring > admin.key
scp admin.key client:/etc/ceph
scp /etc/ceph/ceph.client.admin.keyring client:/etc/ceph
scp /etc/ceph/ceph.conf client:/etc/ceph

8、把CephFS挂载为内核驱动
客户端使用密码key文件挂载ceph文件系统,挂载集群任一节点均可

# mount -t ceph {ip-address-of-monitor}:6789:/ /mnt/

mount -t ceph node01:6789:/ /mnt -o name=admin,secretfile=/ect/ceph/admin.key

9、把CephFS挂载为用户空间文件系统(FUSE)
Ceph存储集群默认要求认证,需指定相应的密钥环文件,除非它在默认位置/etc/ceph

ceph-fuse -k /etc/ceph/ceph.client.admin.keyring -m node01:6789 /mnt/

# admin用户挂载(存在/etc/ceph/ceph.client.admin.keyring)
ceph-fuse -n client.admin /mnt/

# 自定义用户挂载
ceph fs authorize cephfs client.foo / rw | tee /etc/ceph/ceph.client.foo.keyring
ceph-fuse -n client.foo /mnt/

# 删除用户
ceph auth del client.foo

10、开机自动挂载

cat >> /etc/fstab<EOF
id=admin,conf=/etc/ceph/ceph.conf /mnt fuse.ceph defaults 0 0
EOF

mount -a

集群维护

1、查看存储池使用统计信息

rados df
ceph df
ceph -s

2、删除文件系统,需卸载并停止所有节点mds进程

umount /mnt/
systemctl stop ceph-mds.target # node01
systemctl stop ceph-mds.target # node02
systemctl stop ceph-mds.target # node03
ceph fs rm cephfs --yes-i-really-really-mean-it
ceph fs ls

3、删除存储池

ceph osd pool delete cephfs_metadata cephfs_metadata --yes-i-really-really-mean-it
ceph osd pool delete cephfs_data cephfs_pool --yes-i-really-really-mean-it

4、重新启动所有节点mds进程

systemctl start ceph-mds.target # node01
systemctl start ceph-mds.target # node02
systemctl start ceph-mds.target # node03
posted @ 2021-07-07 20:42  wanghongwei-dev  阅读(220)  评论(0编辑  收藏  举报