Monit介紹
你可以用monit來監控進程,尤其對監控守護進程很有用,比如:在系統啟動時間啟動的/etc/init.d;比如:sendmail,ssh,apache,mysql等
1)你可以用Monit來監控files,directories,文件系統,monit可以監控這些項目的改變,比如:時間戳,校驗和改變,文件大小改變,這樣比較安全,比如:你改變了文件的內容,那么它的md5或者sha1校驗碼就會改變。
2)monit可以監控到各種服務器的網絡鏈接,本地或者遠程,TCP還是UDP,Unix DomainSockets 都支持
3)monit可以用來在某些時候測試程序或者腳本,你可以測試程序的返回值,並以此為依據,進行一些必要的操作,比如:執行某一個動作或者發送一個警報
4)Monit可以用來監控一般的系統資源,比如CPU使用,內存,以及負載均值(Load Acerage)
文件准備
monit-5.28.1-linux-x64.tar.gz - 可點擊鏈接進入官網下載
一、使用tar命令解壓
tar -axvf monit-5.3.2-linux-x86.tar.gz
二、拷貝配置文件
cp /usr/local/monit/conf/monitrc /etc
三、修改默認配置
1. Monit默認僅支持localhost訪問,文件中找到以下內容,將localhost修改為0.0.0.0並注釋掉allow localhost這一行
set httpd port 2812 and
use address localhost
修改后配置內容如下

2. 配置監控腳本目錄,取消include注釋

四、創建腳本目錄
mkdir /etc/monit.d
五、定義監控腳本
1.監控PostgreSQL數據庫示例:
vim /etc/monit.d/PostgreSQL
內容如下:
check process PostgreSQL with pidfile /var/lib/pgsql/9.3/data/postmaster.pid group database start program = "systemctl start postgresql-9.3" stop program = "systemctl stop postgresql-9.3" restart program = "systemctl restart postgresql-9.3" if failed host 127.0.0.1 port 5432 then restart if 5 restarts within 5 cycles then timeout
2.監控服務示例:
vim /etc/monit.d/TongShanService
內容如下:
check process TongShanService MATCHING /opt/projects/TongShan/services/TongShan.Services group service start program = "systemctl start tongshan.service" stop program = "systemctl stop tongshan.service" restart program = "systemctl restart tongshan.service" if failed host 127.0.0.1 port 8889 then restart if 5 restarts within 5 cycles then timeout
六、啟動monit
/usr/local/monit/bin/monit
其他常用命令:
/usr/local/monit/bin/monit -t #檢查monit語法 /usr/local/monit/bin/monit reload #重新載入配置 /usr/local/monit/bin/monit start all #啟動所有服務 /usr/local/monit/bin/monit stop all #停止所有服務 /usr/local/monit/bin/monit restart all #重啟所有服務 /usr/local/monit/bin/monit monitor all #啟動對所有服務的監視 /usr/local/monit/bin/monit unmonitor all #禁用對所有服務的監視 /usr/local/monit/bin/monit quit #推出監控守護進程 /usr/local/monit/bin/monit validate #檢查所有服務,如果未運行則啟動
七、最終效果
打開瀏覽器輸入地址:localhost:2812 輸入用戶名密碼

點擊Process可查看詳細監控配置信息(頁面底部支持一鍵啟動、停止、重啟服務):

