整体目标
配置 ceph-ansible,以在部署节点
servera
上部署 CephFS (MDS)。部署 CephFS,再验证安装是否成功。
启用 CephFS 快照功能。
在
servera
上,使用内核客户端将 CephFS 文件系统挂载到/data
上。挂载应该在servera
重新启动后继续存在。创建
/data/docs/
目录,并将/usr/share/dict/words
文件复制到其中。创建挂载点的快照,并将它命名为mysnap
。删除/data/docs/words
文件(但您应该仍然能够从快照中读取这个文件)。
配置Ceph-Ansible
将 mdss
主机组添加到 /etc/ansible/hosts
Ansible 清单文件。将 servera
包含在这个组中。
使用 /usr/share/ceph-ansible/group_vars/mdss.yml.sample
模板文件,在同一目录中创建 mdss.yml
文件。确保您将 admin
用户 keyring 文件部署到 servera
。
cd /usr/share/ceph-ansible/group_vars
site.yml
文件调用 Ansible,以按照前面执行的配置来执行 CephFS 部署。$ ansible-playbook site.yml检查集群运行状态。以
ceph
用户身份登录 serverc
,并运行 ceph -s 命令。启用 CephFS 快照功能。完成后,从 serverc
注销。
ceph mds set allow_new_snaps true --yes-i-really-mean-it
提取与 client.admin
用户关联的 secret key,将它保存为 /etc/ceph/admin.secret
,并且加设保护。使用这个密钥,对 mount 命令进行 Ceph 集群的身份验证。
[ceph@servera ~]$
ceph auth get-key client.admin > /etc/ceph/admin.secret[ceph@servera ~]$
chmod 600 /etc/ceph/admin.secret
创建 /data
挂载点,再使用 client.admin
用户挂载 CephFS 文件系统。
$
sudo mkdir /data$
sudo mount -t ceph serverc:/ /data -o name=admin,secretfile=/etc/ceph/admin.secret$
sudo chown ceph:ceph /data
卸载文件系统,再编辑 /etc/fstab
,使它在重新启动后继续存在。
[ceph@servera ~]$
sudo vi /etc/fstab
...
serverc:/ /data ceph name=admin,secretfile=/etc/ceph/admin.secret,_netdev 0 0
创建 /data/docs/
目录,并将 /usr/share/dict/words
文件复制到该目录中。创建挂载点的快照,并将它命名为 mysnap
。删除 /data/docs/words
文件(但您应该仍然能够从快照中读取这个文件)。
创建 /data/docs/
目录,并将 /usr/share/dict/words
文件复制到该目录中。
[ceph@servera ~]$
mkdir /data/docs[ceph@servera ~]$
cp /usr/share/dict/words /data/docs
创建挂载点的快照,并将它命名为 mysnap
。
[ceph@servera ~]$ mkdir /data/.snap/mysnap
检查 /data/.snap/mysnap/docs/
目录的内容。words
文件必须可用。完成后,从 servera
注销。