我们使用 GlusterFS 在 2 个使用共享媒体目录和缓存的 Web 服务器上提供分布式文件系统。因此,我创建了 2 个 gluster 卷(media 和 var),并将它们安装在 /var/www/site/media 和 /var/www/site/var/ 中。
每台服务器都运行 gluster 服务器和客户端,这样我们就有了一些冗余,并可以保持数据复制。var 卷的写入和读取非常频繁。
我们遇到的问题是,挂载会随机中断,当您在目录上执行 ls -lah 时,它会显示为 d???????。要解决这个问题,我们要做的就是卸载目录并重新挂载它。
我查看了 glusterfs 日志文件,可以看到挂载何时消失
[2013-05-02 11:32:02.105021] I [client3_1-fops.c:502:client3_1_unlink_cbk] 0-site-media-client-1: remote operation failed: No such file or directory
[2013-05-02 11:32:02.105270] I [client3_1-fops.c:502:client3_1_unlink_cbk] 0-site-media-client-0: remote operation failed: No such file or directory
[2013-05-02 11:32:02.105299] W [fuse-bridge.c:911:fuse_unlink_cbk] 0-glusterfs-fuse: 11806336: UNLINK() /catalog/product/cache/1/image/1000x1000/9df78eab33525d08d6e5fb8d27136e95/v/e/some-stuff-0915740$
[2013-05-02 11:32:02.378497] I [client3_1-fops.c:502:client3_1_unlink_cbk] 0-site-media-client-0: remote operation failed: No such file or directory
[2013-05-02 11:32:02.378625] I [client3_1-fops.c:502:client3_1_unlink_cbk] 0-site-media-client-1: remote operation failed: No such file or directory
我们希望了解导致这些问题的原因并解决这些问题以防止服务中断。
如果您需要更多信息,请随时询问,我会尽我所能提供。
所请求的附加信息如下,两个服务器是相同的:
Ubuntu 12.04.2
Linux VDED-XXX-XXX 3.2.0-39-generic #62-Ubuntu SMP 2013 年 2 月 28 日星期四 00:28:53 UTC x86_64 x86_64 x86_64 GNU/Linux
glusterfs 3.2.5 构建于 2012 年 1 月 31 日 07:39:59
VMWare ESX 服务器
崩溃/断开连接/问题发生时来自 Brick 日志的错误:
站点媒体砖日志:
[2013-05-02 11:32:00.849296] I [server3_1-fops.c:964:server_unlink_cbk] 0-site-media-server: 9109306: UNLINK /catalog/product/cache/1/image/1000x1000/9df78eab33525d08d6e5fb8d27136e95/v/e/some-stuff-091574183930-box.jpg (0) ==> -1 (No such file or directory)
[2013-05-02 11:32:02.86607] I [server3_1-fops.c:964:server_unlink_cbk] 0-site-media-server: 9109345: UNLINK /catalog/product/cache/1/image/1000x1000/9df78eab33525d08d6e5fb8d27136e95/v/e/some-stuff-091574098692.jpg (0) ==> -1 (No such file or directory)
[2013-05-02 11:32:02.105131] I [server3_1-fops.c:964:server_unlink_cbk] 0-site-media-server: 12553441: UNLINK /catalog/product/cache/1/image/1000x1000/9df78eab33525d08d6e5fb8d27136e95/v/e/some-stuff-091574097992-box.jpg (0) ==> -1 (No such file or directory)
[2013-05-02 11:32:02.485694] W [inode.c:1044:inode_path] (-->/usr/lib/glusterfs/3.2.5/xlator/protocol/server.so(server_resolve+0xf8) [0x7f4534639418] (-->/usr/lib/glusterfs/3.2.5/xlator/protocol/server.so(server_resolve_inode+0x70) [0x7f4534639290] (-->/usr/lib/glusterfs/3.2.5/xlator/protocol/server.so(resolve_loc_touchup+0x105) [0x7f4534638425]))) 0-/var/gluster/wwrd-media/inode: no dentry for non-root inode 184269351: 11a65ece-7b4b-4364-a28c-63df686f5648
site-var brick 日志似乎不包含任何错误
答案1
查看日志。由于对该文件夹的写入非常频繁,因此这肯定像是某种竞争条件。在 3.2.* Gluster 版本中报告了一些错误。我建议您升级到 3.3.1,该版本完全支持您的操作系统。许多错误和性能问题都已解决。您也可以从您的版本进行升级。