无法使用 Vagrant 从主机端口通过 HTTP 访问 monit 守护进程

无法使用 Vagrant 从主机端口通过 HTTP 访问 monit 守护进程

我想使用 monit 来监控我的 Ubuntu VM(精确 32)上的服务,但我无法从主机(本地)机器通过 HTTP 访问 monit 守护进程。

我在 /etc/monit/monitrc 中启用了以下设置:

set httpd port 2812 and
  use address localhost
  allow localhost
  allow vagrant:vagrant_pwd

并在 Vagrantfile 中将虚拟机中的端口 2812 转发到主机,如下所示:

config.vm.forward_port 2812, 2812

我已经通过 ssh 进入虚拟机并运行确认 monit 正在虚拟机上运行:

sudo /etc/init.d/monit status

并可以通过运行以下命令在 VM 中使用 HTTP 访问 Monit 守护进程

curl -u vagrant:vagrant localhost:2812

但是当我在主机浏览器(firefox)上输入localhost:2812时,没有任何响应。

关于如何实现这个功能你有什么想法吗?

答案1

这个答案对我有帮助: https://stackoverflow.com/a/5999945/262972

当我将 monitrc 设置为以下内容时,我能够连接到 33.33.33.10:3737

set httpd port 3737 and
    use address 0.0.0.0
    allow admin:"password"

答案2

我在我的 Debian 机器上遇到了同样的问题。

我发现,如果我在对 monitorc 文件进行任何修改后执行命令“monit reload”,httpd 服务器就可以正确启动。

所以也许您需要的只是每次对配置文件进行更改时执行“monit reload”。

相关内容