我们一般使用BOSH来部署cloudfoundry。使用bosh vms命令来查看各个节点的运行情况,如下所示:
通过这种形式,我们可以一目了然的查看到各节点的运行情况(running,failing等等),而这些信息都是通过Monit来获取的。
什么是Monit?
Monit是一个跨平台的用来监控Unix/linux系统(比如Linux、BSD、OSX、Solaris)的工具。Monit特别易于安装,而且非常轻量级(只有500KB大小),并且不依赖任何第三方程序、插件或者库。然而,Monit可以胜任全面监控、进程状态监控、文件系统变动监控、邮件通知和对核心服务的自定义动作等场景。易于安装、轻量级的实现以及强大的功能,让Monit成为一个理想的后备监控工具。Monit 包含一个内嵌的 HTTP(S) Web 界面,可以使用浏览器方便地查看 Monit 所监视的服务。
BOSH中的Monit
我们可以登录到cloudfoundry的节点上,在每一个节点上我们都可以发现/var/vcap/bosh/bin/monit这个可执行文件,执行
monit -h查看一下monit可以做哪些事:
root@ubuntu:/var/vcap/bosh/bin# ./monit -h
Usage: monit [options] {arguments}
Options are as follows:
-c file Use this control file
-d n Run as a daemon once per n seconds
-g name Set group name for start, stop, restart, monitor and unmonitor
-l logfile Print log information to this file
-p pidfile Use this lock file in daemon mode
-s statefile Set the file monit should write state information to
-I Do not run in background (needed for run from init)
-t Run syntax check for the control file
-v Verbose mode, work noisy (diagnostic output)
-H [filename] Print SHA1 and MD5 hashes of the file or of stdin if the
filename is omited; monit will exit afterwards
-V Print version number and patchlevel
-h Print this text
Optional action arguments for non-daemon mode are