`
酷的飞上天空
  • 浏览: 518300 次
  • 性别: 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监控工具(客户端)

    centos6.5 monit 监控 性能 程序自动化监控

    monit使用说明.docx

    Monit是unix系统上用于管理监视进程、文件、目录及设备的工具。Monit提供自动维护和修复功能,并能在出错时执行相应的关联的行为。比如monit可以开启一个进程(当它没有正常运行),重启一个进程(如果它没有反应)...

    monit 服务端监控

    monit软件可监控软件部署服务端口及名称,使用方便切软件规模小

    monit服务监控管理工具

    用于监控管理linux系统内进程、文件、服务等内容的程序,且提供web可视化界面。

    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/...

    centos7安装monit

    监控进程,守护进程,实时拉起进程,监控工具脚本,用于程序拉起,监控程序状态,程序停止,启动等功能.....

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

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

    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") // 轮询间隔 ...

    Ansible-monit.zip

    Ansible-monit.zip,配置monit的ansible角色。还将设置ssh、ntp和cron.anxs-monit的基线监视,ansible是一个简单而强大的自动化引擎。它用于帮助配置管理、应用程序部署和任务自动化。

    capistrano-unicorn-monit:为 Unicorn 配置监控

    使用 capistrano 部署独角兽的监控配置 安装 将此行添加到您的应用程序的 Gemfile: group::development do gem 'capistrano-unicorn-monit', github: 'bypotatoes/capistrano-unicorn-monit' end 然后执行: $ ...

    monit_bin:从源代码安装monit并使用LWRP添加几个工具

    monit_bin 食谱 从源安装monit。 包括设置工具monitensite、monitdisite。 为创建的配置添加 LWRP。... 这些工具控制 monit 设置,如 a2ensite、a2disite。 把你的配置文件放到/etc/monit/conf.ava

    dogpack:Monit集群管理工具

    狗包 Monit群集管理工具。 正在开发中。执照MIT许可证。 版权所有(c)2013

    监测应用monit

    Monit是一款功能非常丰富的进程、文件、目录和设备的监测软件。它可以自动修复那些已经停止运作的程序,特使适合处理那些由于多种原因导致的软件错误。

    foreman-monit:将 Procfile 流程定义导出到监控控制文件的命令行工具

    工头::监控 小命令行也可以从 Procfile 导出到监控控制文件 安装 将此行添加到应用程序的 Gemfile 中: ...您必须提供 --user、--env 和 --app 来指定将运行进程的用户,RAILS_ENV 使用通用应用程序标识符来相应地命

    monit:ASYD 的 Monit 分叉

    # 是一个免费的开源实用程序,用于管理和监控 UNIX 系统上的进程、程序、文件、目录和文件系统。 Monit 进行自动维护和修复,并可以在错误情况下执行有意义的因果操作。# 系统要求 内存和磁盘空间。 至少需要 1 兆...

    ansible-monit:Monit的Ansible角色

    监控 Ansible角色,用于安装Monit并设置服务监视。 用法(示例) 典型的最小用法: - role : monit 在不安装和使用自定义服务的情况下配置monit: - role : monit monit_setup : configure monit_custom_...

    monit-dashboard:Web仪表板,可一目了然地监控所有monit服务器

    监控面板 描述 一目了然的Python Web应用程序可获取一堆服务器的仪表板。 屏幕截图 每个Monit服务器未找到警报时的主视图: 一个Monit代理正在报告服务器上的错误: 展开服务器,上面有错误的问题: 它是如何...

    dokku-monit:用于监控应用程序的 Dokku 插件

    dokku-monit Dokku 插件,用于监控应用程序。...这还远未完成,但可以作为如何将 monit 与 dokku(外部)一起使用的概念证明。 理想情况下,将添加以下内容: 使用dokku plugins-install自动安装dokku plugi

    Monit是一个免费的开源实用程序,用于管理和监视UNIX系统上的进程、程序、文件、目录和文件系统。Monit进行自动维.zip

    Monit是一个免费的开源实用程序,用于管理和监视UNIX系统上的进程、程序、文件、目录和文件系统。Monit进行自动维.zip

Global site tag (gtag.js) - Google Analytics