monit 无法挂载文件系统并显示“执行失败”,请手动操作

monit 无法挂载文件系统并显示“执行失败”,请手动操作

我已将 monit 配置为在未安装 NFS 文件系统时安装它,但是由于某种原因,monit 不会自动安装共享,因此我必须运行monit start myshare才能安装文件系统。

系统通常无法在启动时挂载 NFS 共享(因为远程系统通常同时启动但尚未启动),这就是为什么我希望 monit 不断重试挂载,当远程系统完成启动时,挂载最终会成功。

但是 monit 似乎放弃得太早,停止尝试,这意味着我必须手动运行monit start myshare才能让它再次尝试。这总是成功,表明start命令monitrc是正确的。

我可以在 monit 手册中看到如何限制服务以便它在一定次数的失败后停止尝试,但我看不到如何禁用此功能以便它一直尝试。

这是我的monitrc

set daemon 30
set log syslog
set mailserver ...
check filesystem myshare with path /mnt/myshare
        start program = "/bin/mount /mnt/myshare"
        group nfs

机器启动后显示的内容如下:

$ monit status myshare
Filesystem 'myshare'           
  status                       Execution failed
  monitoring status            Monitored
  monitoring mode              active
  on reboot                    start
  filesystem type              nfs

$ monit start myshare
$ monit status myshare
Monit 5.25.1 uptime: 5d 10h 32m

Filesystem 'myshare'
  status                       OK
  monitoring status            Monitored
  monitoring mode              active
  on reboot                    start
  filesystem type              nfs

我错过了什么?

答案1

您应该检查仅在挂载正常时可用的标志文件,并定期重试

check file myshare-flag with path /mnt/myshare/my-flag-file if does not exist then exec "/bin/mount /mnt/myshare" repeat every 2 cycles

检查标志文件更好,因为该文件仅在安装工作时才会出现。

相关内容