根据此链接:
http://docs.ceph.com/docs/master/start/quick-rbd/
我可以挂载 rbd,它运行正常。我的问题是如何从 fstab 执行此操作?
最终目标是将其安装到/var/lib/mysql
我只找到了 cephfs 挂载的示例,但没有找到 rbd 的示例。
答案1
回答我自己的问题。我最初找到答案的是这里(就在 Noah 将他的链接发布到论坛之前)
基本上,文件 rbdmap(我之前见过但没有意识到它的重要性)是使其运行的关键。
注意:我使用的是 ceph-deploy。这可能很重要,也可能不重要。
初始化脚本 /etc/init.d/rbdmap 和 /etc/ceph/rbdmap 是它的关键。
首先,您需要启用 init 脚本。在 Ubuntu/Debian 下,可以使用以下命令实现。
sudo update-rc.d rbdmap defaults
然后编辑 /etc/ceph/rbdmap 并根据给定的格式添加 rbd 条目。默认情况下,rbdmap 文件包含:
# RbdDevice Parameters
#poolname/imagename id=client,keyring=/etc/ceph/ceph.client.keyring
在其中输入新条目。
对于我的 mysql 磁盘:
rbd/mysql id=admin,keyring=/etc/ceph/ceph.client.admin.keyring
我的 fstab 文件包含:
/dev/rbd/rbd/mysql /mnt/mysql-data ext4 defaults,noatime,_netdev 0 0
启动时会挂载,关机时会卸载。_netdev 参数指定在网络启动并初始化后才会挂载 rbd 设备。