相关疑难解决方法(0)

GlusterFS 无法在启动时挂载

我在同时充当客户端和服务器的 Ubuntu 12.04 机器上运行官方 GlusterFS 3.5 软件包,除了在启动时安装 GlusterFS 卷外,一切似乎都运行良好。这是我在日志文件中看到的:

[2014-06-17 08:20:52.969258] I [glusterfsd.c:1959:main] 0-/usr/sbin/glusterfs: Started running /usr/sbin/glusterfs version 3.5.0 (/usr/sbin/glusterfs --volfile-server=127.0.0.1 --volfile-id=/public_uploads /var/www/shared/public/uploads)
[2014-06-17 08:20:52.998985] I [socket.c:3561:socket_init] 0-glusterfs: SSL support is NOT enabled
[2014-06-17 08:20:52.999048] I [socket.c:3576:socket_init] 0-glusterfs: using system polling thread
[2014-06-17 08:20:53.000373] E [socket.c:2161:socket_connect_finish] 0-glusterfs: connection to 127.0.0.1:24007 failed (Connection refused)
[2014-06-17 08:20:53.000427] E [glusterfsd-mgmt.c:1601:mgmt_rpc_notify] 0-glusterfsd-mgmt: failed to connect with remote-host: 127.0.0.1 (No data available)
[2014-06-17 08:20:53.000442] I [glusterfsd-mgmt.c:1607:mgmt_rpc_notify] 0-glusterfsd-mgmt: Exhausted all volfile servers
[2014-06-17 08:20:53.013793] W [glusterfsd.c:1095:cleanup_and_exit] …
Run Code Online (Sandbox Code Playgroud)

ubuntu glusterfs ubuntu-12.04

8
推荐指数
1
解决办法
9917
查看次数

glusterfs 在集群服务器上启动时挂载 - RHEL 7

我已经在一对服务器上配置了 gluserfs,我可以将它安装在我的客户端机器上。当我将两台机器脱机并从头启动时,我还希望能够在引导时在两台 glusterfs 服务器上挂载 glusterfs 文件系统。

这些服务器使用起搏器设置为集群。除了共享数据库之外,pacemaker 还提供了一个虚拟 IP 地址来挂载 gluster 文件系统。

在两台服务器都使用以下命令启动后,我可以在每个服务器上手动挂载文件系统:

mount -t glusterfs nodea:/gv0 /data
Run Code Online (Sandbox Code Playgroud)

这很棒。但我希望这在启动时自动发生。

所以我尝试在 fstab 中添加一个条目:

nodea:/gv0  /data       glusterfs   _netdev 0 0
Run Code Online (Sandbox Code Playgroud)

当我在集群启动并运行后运行“mount -a”命令时,它会起作用。但是,它在启动时不起作用。(这是客户端机器在启动时挂载 glusterfs 的方式,但集群已启动并正在运行。所以当然它可以在启动时为它们工作。)

我还尝试创建一个 systemd 单元文件来处理启动时 glusterfs 的安装。我的单元文件位于名为“data.mount”的 /etc/systemd/system 中,如下所示:

# Mounting gluster fs at /data

[Unit]
Description = Automount gluster filesystem
After=pcsd.service

[Mount]
What=nodea:/gv0
Where=/data
Type=glusterfs

[Install]
WantedBy = pcsd.service
Run Code Online (Sandbox Code Playgroud)

同样,当两台服务器都通过运行命令“systemctl start data.mount”启动并运行时,这会起作用。如果我只重启集群中的一台机器,它也可以工作。但它不适用于重新启动两台服务器。

如果集群中的两个节点都出现故障,或者如果我出于某种原因想同时重新启动两个节点,我想确保当两台机器重新启动时,glusterfs 已安装在 /data 上。

作为一种解决方法,我在两台机器上的 root 的 crontab 中添加了以下几行:

@reboot sleep 60 && mount -t glusterfs nodea:/gv0 …
Run Code Online (Sandbox Code Playgroud)

glusterfs

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

glusterfs ×2

ubuntu ×1

ubuntu-12.04 ×1