glusterfs 使用 fuse 挂载 glusterfsd 卷,在没有虚拟化的任何硬件节点上都可以正常工作。
但是,我现在尝试将设备安装在容器内
glusterfs --debug -f /etc/glusterfs/glusterfs.vol /storage
并得到以下错误:
fuse: failed to open /dev/fuse: Permission denied
[2009-06-20 18:36:29] D [fuse-bridge.c:2747:init] glusterfs-fuse: fuse_mount() failed with error Permission denied on mount point /storage
ls -al /dev/fuse 是
crw-rw-rw- 1 root fuse 10, 229 20. Jun 16:35 /dev/fuse
和 ls -al /storage 是
drwxr-xr-x 2 root root 4096 20. Jun 17:14 storage
该 HN 的内核已加载保险丝......一个 uname 是
2.6.18-14-fza-amd64 #1 SMP Mon Jan 5 17:36:46 UTC 2009 x86_64 GNU/Linux
有什么建议么?有没有人尝试在 openvz 容器中安装 glusterfs 并启动并运行它?
提前致谢。马库斯
好吧,我自己找到了解决方案(http://wiki.openvz.org/FUSE)
我只需要通过在我的 HN 中执行以下操作来调整我的容器:
...要完成,您需要设置这些
从 OpenVZ 容器中导出 glusterfs 卷。
在Azouk基础架构中,我们还使用 OpenVZ 和 Glusterfs,但不授予 VPSes
sys_admin
特权。如果您对为每个安装 Gluster 的 VPS 授予权限感到不舒服
sys_admin
(大多数管理员可能会这样做),您可以稍微更改 GlusterFS 源代码,以便它将其 xattrs 存储在非特权命名空间中:我已经用 1.4.0qa92 版本对此进行了测试,我们在生产中使用了半年多。
另一种安全挂载的方法是在 HN 上挂载 GlusterFS 卷,然后将目录绑定挂载到 VZ 容器中。这可以通过 config 目录中的容器挂载脚本(vps.mount 或 $ctid.mount)来控制。