当前位置:首页 > linux教程 > 列表

monit配置监控启动nginx php mysql redis mongodb 服务器

发布:smiling 来源: PHP粉丝网  添加日期:2014-10-01 17:13:41 浏览: 评论:0 

下面来看一个整理的monit配置监控启动nginx php mysql redis mongodb 服务器例子,我们这样监控之后可以保证服务器永不宕机,是不是非常的不错呀.

启动:monit -Ic /etc/monitrc &

crontab -e

*/600 * * * * /usr/local/bin/monit -Ic /etc/monitrc &

conf 配置:

  1. —————nginx php mysql redis mongodb 配置 完美OK——————– 
  2. # nginx 
  3. check process nginx with pidfile /usr/local/nginx/logs/nginx.pid 
  4. start program = “/usr/local/nginx/sbin/nginx” 
  5. stop program = “/usr/bin/killall nginx” 
  6. if failed host 127.0.0.1 port 80 then restart 
  7. if cpu is greater than 40% for 2 cycles then alert 
  8. if cpu > 60% for 5 cycles then restart 
  9. if 10 restarts within 10 cycles then timeout 
  10. # php5-fpm 
  11. check process php-fpm with pidfile /var/run/php-fpm.pid 
  12. start program = “/usr/local/php5.3/sbin/php-fpm” 
  13. stop program = “/usr/bin/killall php-fpm” 
  14. if failed port 9000 then restart 
  15. if cpu is greater than 40% for 2 cycles then alert 
  16. if cpu > 60% for 5 cycles then restart 
  17. if 10 restarts within 10 cycles then timeout# php5-fpm binary. 
  18. check file php5-fpm-tcp_bin with path /usr/local/php5.3/sbin/php-fpm 
  19. if 10 restarts within 10 cycles then timeout 
  20. if failed checksum then unmonitor 
  21. if failed permission 755 then unmonitor 
  22. if failed uid root then unmonitor 
  23. if failed gid root then unmonitor 
  24. alert root@localhost# Test the init scripts. 
  25. check file php5-fpm-tcp_init with path /usr/local/php5.3/sbin/php-fpm 
  26. if failed checksum then unmonitor 
  27. if failed permission 755 then unmonitor 
  28. if failed uid root then unmonitor 
  29. if failed gid root then unmonitor 
  30. alert root@localhost 
  31. # mysql 
  32. check process mysql with pidfile /var/lib/mysql/localhost.localdomain.pid 
  33. group database 
  34. start program = “/sbin/service mysql start” 
  35. stop program = “/sbin/service mysql stop” 
  36. if failed port 8306 then restart 
  37. if 3 restarts within 10 cycles then timeout 
  38. # redis 
  39. check process redis with pidfile /var/run/redis.pid 
  40. start program = “/usr/local/redis/redis-server /usr/local/redis/redis.conf” 
  41. stop program = “/usr/bin/killall redis-server” 
  42. if failed host 127.0.0.1 port 6379 then restart 
  43. if cpu is greater than 40% for 2 cycles then alert 
  44. if cpu > 60% for 5 cycles then restart 
  45. if 10 restarts within 10 cycles then timeout 
  46. # mongodb 
  47. check process mongod with pidfile /usr/local/mongodb/data/mongod.lock 
  48. start program = “/usr/local/mongodb/bin/mongod –dbpath=/usr/local/mongodb/data/” 
  49. stop program = “/usr/bin/killall mongod” 
  50. if failed port 27017 protocol http and request “/” with timeout 10 seconds then restart 
  51. if 10 restarts within 10 cycles then timeout 
  52. —————-end——————- 
  53. /usr/local/mmonit/bin/mmonit -c /usr/local/mmonit/conf/server.xml -t 
  54. /usr/local/mmonit/bin/mmonit -c /usr/local/mmonit/conf/server.xml start 
  55. monit  -t 
  56. killall monit 
  57. monit -Ic /etc/monitrc & 
  58. telinit q 
  59. ps aux |grep monit 
  60. kill -1 1 
  61. ps aux |grep redis-server 
  62. killall redis-server 
  63. ll /var/run/redis.pid 
  64. /usr/local/redis/redis-server /usr/local/redis/redis.conf & 
  65. ps aux |grep php-fpm 
  66. killall php-fpm 
  67. /usr/local/php5.3/sbin/php-fpm 
  68. ps aux |grep mongod 
  69. killall mongod 
  70. /usr/local/mongodb/bin/mongod –dbpath=/usr/local/mongodb/data/ & 
  71. set mmonit http://monit:monit@142.4.48.50:8080/collector 
  72. set nginx port 80 and 
  73.     use address 142.4.48.50 
  74.     allow localhost 
  75.     allow 142.4.48.50 
  76. http://mmonit.com/wiki/Monit/Nginx 
  77.   location /monit/ { 
  78.         rewrite ^/monit/(.*) /$1 break
  79.         proxy_ignore_client_abort on; 
  80.         proxy_pass   http://192.168.1.10:2812;  
  81.         proxy_redirect  http://192.168.1.10:2812/monit;  
  82.     } 
  83. https://gist.github    .com/franck 
  84. # include /etc/monit.d/* 
  85. # mysql 
  86. check process mysqld with pidfile /var/lib/mysql/localhost.localdomain.pid 
  87.   group database 
  88.   start program = “/etc/init.d/mysql start” 
  89.   stop program = “/etc/init.d/mysql stop” 
  90.   if failed host 127.0.0.1 port 8306 then restart 
  91.   if 5 restarts within 5 cycles then timeout 
  92. # nginx 
  93. check process nginx with pidfile /usr/local/nginx/logs/nginx.pid 
  94.   start program = “/usr/local/nginx/sbin/nginx” 
  95.   stop program = “/usr/bin/killall nginx” 
  96.   if failed host 127.0.0.1 port 80 then restart 
  97.   if cpu is greater than 40% for 2 cycles then alert 
  98.   if cpu > 60% for 5 cycles then restart 
  99.   if 10 restarts within 10 cycles then timeout 
  100. # redis 
  101. check process redis with pidfile /var/run/redis.pid 
  102.   start program = “/usr/local/redis/redis-server /usr/local/redis/redis.conf” 
  103.   stop program = “/usr/bin/killall redis-server” 
  104.   if 10 restarts within 10 cycles then timeout 
  105. check file dump.rdb with path /usr/local/redis/dump.rdb 
  106.   if size > 100 MB then alert 
  107. # php5-fpm 
  108. check process php-fpm with pidfile /var/run/php-fpm.pid 
  109.   start program = “/usr/local/php5.3/sbin/php-fpm” 
  110.   stop program = “/usr/bin/killall php-fpm” 
  111.   if failed host 127.0.0.1 port 9000 then restart 
  112.   if cpu is greater than 40% for 2 cycles then alert 
  113.   if cpu > 60% for 5 cycles then restart 
  114.   if 10 restarts within 10 cycles then timeout 
  115. # php5-fpm binary. 
  116. check file php5-fpm-tcp_bin with path /usr/local/php5.3/sbin/php-fpm 
  117.   if 10 restarts within 10 cycles then timeout 
  118.   if failed checksum then unmonitor 
  119.   if failed permission 755 then unmonitor 
  120.   if failed uid root then unmonitor 
  121.   if failed gid root then unmonitor 
  122.   alert root@localhost 
  123. # Test the init scripts. 
  124. check file php5-fpm-tcp_init with path /usr/local/php5.3/sbin/php-fpm 
  125.   if failed checksum then unmonitor 
  126.   if failed permission 755 then unmonitor 
  127.   if failed uid root then unmonitor 
  128.   if failed gid root then unmonitor 
  129.   alert root@localhost 
  130. # mysql 
  131. check process mysqld with pidfile /var/lib/mysql/localhost.localdomain.pid 
  132.   group database 
  133.   start program = “/sbin/service mysql start” 
  134.   stop program = “/sbin/service mysql stop” 
  135.   if failed host 127.0.0.1 port 8306 then restart 
  136.   if 2 restarts within 6 cycles then timeout 
  137. # mongodb 
  138. check process mongod with pidfile /usr/local/mongodb/data/mongod.lock 
  139.   start program = “/usr/local/mongodb/bin/mongod –dbpath=/usr/local/mongodb/data/” 
  140.   stop program = “/usr/bin/killall mongod” 
  141.   if failed port 27017 protocol http and request “/” with timeout 10 seconds then restart 
  142.   if 10 restarts within 10 cycles then timeout 
  143. #mongodb 
  144. check process mongod with pidfile “/usr/local/mongodb/data/mongod.lock” 
  145.   start program = “/usr/local/mongodb/bin/mongod –dbpath=/usr/local/mongodb/data/” 
  146.   stop program = “/usr/bin/killall  mongod” 
  147.   if failed port 27017 protocol http and request “/” with timeout 10 seconds then restart 
  148.   if 5 restarts within 5 cycles then timeout 
  149. # tomcat 
  150. check process tomcat with pidfile /var/run/tomcat/tomcat.pid 
  151.   start program = “/etc/init.d/tomcat start” 
  152.   as uid solr gid solr 
  153.   stop program = “/etc/init.d/tomcat stop” 
  154.   as uid solr gid solr  //phpfensi.com 
  155.   if failed port 8080 then alert 
  156.   if failed port 8080 for 5 cycles then restart 
  157. set mmonit http://monit:monit@142.4.48.50:8080/collector 
  158. set httpd port 12112 and 
  159.     use address 142.4.48.50 //monit主机的IP 
  160.     allow localhost 
  161.     allow 142.4.48.50 //mmonit主机的IP

Tags: monit配置监控 nginx mongodb

分享到: