`
酷的飞上天空
  • 浏览: 521792 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

使用monit工具对thin进程的监控

阅读更多

monit可以对服务器进程进行监控,如果发现服务器进程挂掉,则能根据配置进行重启。

下载地址

http://mmonit.com/monit/download/ ,大小为612K.

 

现在完成后进行安装

chmod 775 monit-5.1.1.tar.gz

tar -zxf monit-5.1.1.tar.gz

cd monit-5.1.1

./configure

make

make install

 

安装完成,然后拷贝配置文件到etc目录下

cp monitrc /etc/monitrc


进入到etc目录

打开monitrc文件,可以找到一些配置的例子

 

我测试的配置如下

set daemon  60       #设置monit检查的间隔时间,单位是秒。

with start delay 10 #monit进程启动10秒后才进行监控
set httpd port 2812 and  #设置访问的端口号,即使用浏览器访问的端口
     use address localhost  # only accept connection from localhost
     allow localhost        # allow localhost to connect to the server and
     allow admin:monit      # require user 'admin' with password 'monit'
     allow @monit           # allow users of group 'monit' to connect (rw)
     allow @users readonly  # allow users of group 'users' to connect readonly

include /etc/monitrc_thin #将thin的monit配置包含进来, 也可以直接写在此配置文中. monitrc_thin是我新建的文件。

 

monitrc_thin的文件内容如下

  check process thin3000 with pidfile /root/www/lbs/tmp/pids/thin.3000.pid
    start program = "/usr/local/bin/thin start -c /root/www/lbs -e production -p 3000 -d -s 1" with timeout 60 seconds
    stop program  = "/usr/local/bin/thin stop -c /root/www/lbs -s 1 -p 3000" with timeout 60 seconds
    if failed port 3000 protocol http 
         and request "/"
         with timeout 30 seconds
       then restart
     group thin
  check process thin3001 with pidfile /root/www/lbs/tmp/pids/thin.3001.pid
    start program = "/usr/local/bin/thin start -c /root/www/lbs -e production -p 3001 -d -s 1" with timeout 60 seconds
    stop program  = "/usr/local/bin/thin stop -c /root/www/lbs -s 1 -p 3001" with timeout 60 seconds
    if failed port 3001 protocol http 
         and request "/"
         with timeout 30 seconds
       then restart
     group thin

 

这里我是用两个thin进程进行的尝试。

 

对配置的文件正确性进行测试

monit -t

如果配置有误,则根据提示进行更改。直到显示配置OK为止

 

下面启动monit对进程进行监控

进入rails的项目根路径,我这里为root/www/lbs

启动thin进程:   thin start -s 2 -p 3000 -e production  # 也可跳过此步,由monit监控进行启动

启动monit:   monit

 

打来浏览器访问,  localhost:2812 .  输入用户名admin和密码monit, 可以查看被监控的进程的状态,以及内存和cpu使用率等。

 

随便kill一个被监控的thin 的进程,然后观察 localhost:2812 的进程的状态变化。 看配置是否生效。

 

注意:即使monit -t 没有显示错误,但不代表配置文件一定没有问题,只是说monit可以执行此配置文件而已,对配置文件中配置的start和stop命令是否能执行成功不做判断,

 

其他monit的使用教程

http://www.sucai.com/Tech/List5/21082.htm

 

补充:

1.with start delay 10 #monit进程启动10秒后才进行监控, 这个默认好像是240秒. 如果你想启动monit后立即能访问上面的localhost:2812怎把这项设置为1

2.localhost:2812无法访问,参考下面配置

本机访问

set httpd port 2812 and  #设置访问的端口号,即使用浏览器访问的端口
     use address localhost  # 如果这里的值为localhost则只允许本机访问
     allow localhost        #允许本机访问,使用localhost:2812进行访问
     allow admin:monit      # require user 'admin' with password 'monit'

局域网访问

set httpd port 2812 and  #设置访问的端口号,即使用浏览器访问的端口
     use address 192.168.1.11# 此处填写本机的局域网ip
     allow localhost        # 允许本机访问,使用localhost:2812进行访问

     allow 192.168.1.22  #允许局域网内ip为192.168.1.22的机器访问,访问地址为192.168.1.11:2812

     allow 192.168.1.88  #允许局域网内ip为192.168.1.88的机器访问,访问地址同上

     allow 192.168.1.1/255.255.255.0 # 允许局域网内所有机器访问
     allow admin:monit      # require user 'admin' with password 'monit'
外网访问

set httpd port 2812 and  #设置访问的端口号,即使用浏览器访问的端口
     use address 12.12.12.12# 此处填写本机的外网ip

     allow 11.11.11.11#允许外网ip为11.11.11.11的机器访问,访问地址为12.12.12.12:2812
     allow admin:monit      # require user 'admin' with password 'monit'

分享到:
评论

相关推荐

    monit服务监控管理工具

    Monit 是一款强大的开源服务监控管理工具,专为Linux系统设计,它允许用户对系统中的进程、文件、目录、网络服务等进行实时监控,并在发现问题时自动修复或通知管理员。这款工具不仅提供了命令行接口,还包含了一个...

    monit 服务端监控

    Monit 是一款强大的系统监控工具,它允许用户对运行在Linux或Unix系统上的服务、进程、文件、目录、网络资源等进行实时监控。通过Monit,你可以轻松地检测和管理服务器上的各种状态,如内存使用、CPU负载、磁盘空间...

    monit使用说明.docx

    Monit 是一款强大的系统管理工具,专为Unix系统设计,用于监控和管理进程、文件、目录和设备。它具备自动修复功能,可以在检测到错误时执行预设的响应操作,如启动、重启或关闭进程。此外,Monit 还能监控文件、目录...

    centos7安装monit

    Monit 是一个开源的系统和进程监控工具,它可以在Linux系统中用来监控系统服务、文件、目录、网络接口等,并在出现问题时进行自动修复或通知管理员。CentOS 7是基于RHEL(Red Hat Enterprise Linux)的一个流行的...

    如何借助Monit搭建服务器监控系统-.docx

    Monit 提供了成熟的监控功能,包括进程状态监控、文件系统变化监控、电子邮件通知、针对核心服务的可定制操作等。 二、Monit 的优点 Monit 集安装简易、轻量级实现和功能强大于一身,是一款再理想不过的备用监控...

    4 个使用率非常高的 Linux 监控工具(csdn)————程序.pdf

    Monit可以监控进程状态、网络端口和文件系统,当监控的目标出现异常时,可以采取相应的行动,如自动重启服务或发送告警通知。此外,Monit还提供了一个简单的Web界面,方便远程管理和监控多台服务器。 这四个工具各...

    dogpack:Monit集群管理工具

    `dogpack` 是一个专为监控和管理服务器集群而设计的工具,它利用了 `Monit` 这一强大的系统和进程监控软件。Monit 允许用户监控系统资源如 CPU 使用率、内存消耗、磁盘空间以及网络服务的状态,当检测到异常时,它...

    monit-4.9.tar

    Monit 是一款在 Unix-like 系统中广泛使用的开源监控工具,主要用于监控系统服务、文件、目录、程序以及网络资源的状态。"monit-4.9.tar" 是这个软件的一个特定版本,通常以 tar 归档文件的形式提供,用于在各种 ...

    monit-5.4.tar.gz

    Monit 是一个开源工具,用于管理系统进程、文件系统、网络接口和系统状态。在Linux和Unix-like系统中,Monit 可以监控指定的服务是否正常运行,并在出现问题时自动修复或重启服务,确保系统的稳定性和可靠性。这个...

    monit-docker:Docker化监控

    在 conf.d 中添加要监视的服务/进程的配置比如可以在conf.d中添加nginx监控为 check process nginx with pidfile /var/run/nginx.pid start program = "/etc/init.d/nginx start" stop program = "/etc/init.d/...

    monit_bin-源码.rar

    Monit 是一个开源的系统监控工具,用于管理进程、文件、目录、设备、网络接口等。它可以在系统异常时自动修复问题,确保服务的稳定运行。`monit_bin-源码.rar` 提供了 Monit 的源代码,这对于开发者和系统管理员来说...

    monit-5.0.1.tar.gz_monit-5.0.1.tar.gz

    - 监控进程:确保关键服务(如Apache、MySQL等)正常运行。 - 文件和目录监控:检测文件和目录的改变,防止未经授权的修改。 - 系统资源监控:如CPU、内存使用率,以及磁盘空间。 - 网络监控:监测网络连接和服务...

    Ansible-ansible-role-monit.zip

    Monit 是一个开源的系统监控工具,能够监控系统进程、文件、目录、网络服务等,并在出现问题时进行自动修复或报警。通过Monit,你可以确保你的服务始终处于运行状态,如果出现异常,如进程崩溃或资源消耗过高,Monit...

    Linux 进程看护程序

    Monit是一个轻量级的进程和系统监控工具,除了看护进程外,还可以监控资源使用情况,如内存、CPU等。Monit允许用户自定义检查条件和恢复动作。 ### 使用示例 例如,使用Systemd创建一个看护程序,首先创建一个`....

    统信UOS系统安装nmon监控教程

    本教程将指导你如何在统信UOS系统上安装并使用nmon监控工具。首先,我们需要准备nmon的安装包,这里提供的是nmon_16g+debian-3_arm64.deb,这是一款针对64位架构的Debian兼容版本的nmon。在统信UOS上,由于其底层也...

    守护进程_查看进程

    在实际应用中,为了实现更高级的进程监控和管理,我们可以使用一些工具,如`monit`、`supervisord`或`systemd`的journal日志系统。这些工具不仅可以帮助我们查看进程状态,还可以设置警报、自动恢复服务等。 总结来...

    mmonit监控工具(服务端)

    通过mmonit,你可以监控CPU利用率、内存使用、磁盘空间、网络连接、进程状态等关键指标,及时发现并处理系统问题,确保服务的稳定运行。同时,mmonit还提供了报警功能,当系统状态超出预设阈值时,会通过邮件或其他...

    docker-monit:用于monit的Docker映像

    监控的基本图像docker-monit是一个映像,已配置为可直接使用或用作监控守护程序更多自定义应用程序的基础。 docker-monit可用于从提取该图像包括监控版本5.13概述此映像将monit安装到以下位置: / opt / monit Monit...

    GO语言实现的后台服务守护进程

    processName := iniConfig.Read("Monit","ProcessName") // 监控进程 programPath := iniConfig.Read("Monit","ProgramPath") // 启动路径 sleepTime := iniConfig.ReadInt("Monit", "SleepTime") // 轮询间隔 ...

Global site tag (gtag.js) - Google Analytics