我刚刚安装了7个KVM guest虚拟机,全部运行Ubuntu 12.04 LTS 64bit Minimal服务器,从Ubuntu官方仓库中testingglusterfs 3.2.5。 其中两个镜像对(即replica 2 ),其中五个是客户端。 我对这个文件系统还不熟悉,想获得一些“亲身体验”。
这个设置大部分是平淡无奇的,直到我把每个glusterfs客户端的/etc/fstab放入以下代码:
192.168.122.120:/testvol /var/local/testvol glusterfs defaults,_netdev 0 0 ,其中192.168.122.120是第一个“glusterfs服务器”的IP地址。
如果我在CLI上发出manaul mountall或mount.glusterfs 192.168.122.120:/testvol /var/local/testvol , mount显示该卷已成功导入。 但是,一旦客户端重新启动,它恢复后,音量不会被安装!
我search了互联网,并find了这篇文章 ,但由于我没有运行同一个节点上的客户端和服务器,恕我直言,这不是严格适用。
所以,作为一个“ sleep 3 && mount.glusterfs 192.168.122.120:/testvol /var/local/testvol ”,我把sleep 3 && mount.glusterfs 192.168.122.120:/testvol /var/local/testvol放到每个客户节点的/etc/rc.local 。 据我所知,似乎可以在每个节点上安装卷。
但这是相当丑陋的,我将不胜感激暗示如何正确解决这个glusterfs-non-boot-time-mount问题。
请注意,尽pipe所有节点的/etc/hosts已经填充了其主机名,但我使用了第一个“glusterfs服务器”的IP地址。 我认为使用IP地址更加健壮。
–Zack
一个潜在的解决scheme可以添加更多的nobootwait和直接io模式到fstab,尝试这样的事情:
serverip:/vol mountpoint glusterfs defaults,nobootwait,_netdev,direct-io-mode=disable 0 0
另外,检查你的/etc/init/mounting-glusterfs.conf并添加:
exec start wait-for-state WAIT_FOR=networking WAITER=mounting-glusterfs-$MOUNTPOINT
我希望这有助于我在过去遇到类似的问题,并解决使用上述组合/configuration。
我想知道是否添加一些日志logging到你的fstab可能会帮助给你更多的信息? 请参阅pipe理员指南中的fstabconfiguration选项: http : //www.gluster.org/wp-content/uploads/2012/05/Gluster_File_System-3.3.0-Administration_Guide-en-US.pdf
6.1.2.2。 自动安装卷自动安装Gluster卷•要安装卷,请编辑/ etc / fstab文件并添加
以下行:
HOSTNAME-OR-IPADDRESS:/VOLNAME MOUNTDIR glusterfs defaults,_netdev 0 0例如:
server1:/test-volume /mnt/glusterfs glusterfs defaults,_netdev 0 0安装选项
使用mount -t glusterfs命令时,可以指定以下选项。 请注意,您需要用逗号分隔所有选项。
- backupvolfile服务器=服务器名称
- fetch-attempts = N(其中N是尝试次数)
- log-level = loglevel log-file = logfile
- 直接-IO模式= [启用|禁用]
- ro(只读安装)acl(用于启用posix-ACL)
- 蠕虫(使WORM安装 – 一次写入,多次读取)
- selinux(在GlusterFS mount上启用selinux
例如:
mount -t glusterfs -o backupvolfile-server=volfile_server2,fetchattempts=2,log-level=WARNING,log-file=/var/log/gluster.log server1:/testvolume /mnt/glusterfs
我倾向于认为使用IP而不是名称更简单,更可靠。