目標:編寫乙個簡單的nagios指令碼,實現監控client上的nginx程序是否啟動,假如沒啟動的話發出報警。
首先在master上對nagios的配置檔案進行設定,修改services.cfg檔案,在最末尾新增上以下內容:
define service補充一點是對客戶機新增指令碼與master的commands.cfg無關,commands.cfg只定義面對master的本地服務的。本次我們是對客戶機增加服務,因此就無需在master的commands.cfg上定義我們新增的命令了。這個問題當時困擾了我很長時間才發現。
轉到客戶機上,修改nagios上的nrpe.cfg檔案,新增上以下內容:
command[check_nginx]=/usr/local/nagios/libexec/check_nginx.sh解析一下這行文字的含義:
check_nginx,命令的名稱,正如上面所說,需要與master上的servers.cfg中的check_command所引用的名稱一致。
/usr/local/nagios/libexec/check_nginx.sh,這是指令碼在客戶機上的實際位置。
接下來編寫check_nginx.sh這個指令碼,這個指令碼需放在/usr/local/nagios/libexec/下。指令碼內容如下:
#!/bin/bash在這個指令碼中,當檢測到nginx程序正在執行時,指令碼會返回0給nagios,代表nginx正常執行;當檢測到nginx程序不存在時,會返回2給nagios,觸發critical告警。a=`ps -e|grep nginx|wc -l`
if [ -n $a ];then
echo "nginx is running."
exit 0
else
echo "nginx is not running."
exit 2
fi
把指令碼儲存並加上執行許可權,重啟一下
master
的nagios
服務,即可生效。
nagios監控流量指令碼
需求是我們需要對伺服器上的流量進行監控,網路上有個流傳的check traffic.sh,它需要被監控機開啟snmp。但是感覺都使用上了nagios還要開snmp。有點斧子剪刀一起用的感覺,所以就動手寫了個監控流量的shell bin sh usage foundw 0 foundc 0 found...
nagios中xml指令碼模板
nagios是一款開源的免費網路監視工具,能有效監控windows linux和unix的主機狀態,交換機路由器等網路裝置,印表機等。在系統或服務狀態異常時發出郵件或簡訊報警第一時間通知 運維人員,在狀態恢復後發出正常的郵件或簡訊通知。nagios 可以監控的功能有 1 監控網路服務 smtp po...
nagios一鍵安裝指令碼
nagios具有非常強大的報警功能。還可以結合pnp實現時時繪製圖形。可以根據自己的需求定義 nagios的腳控型別,可以說監控服務,nagios已經做到了無所不能 下面給出nagios的安裝腳步。後期會慢慢更新如何編寫腳步定義企業nagios監控系統 腳步的安裝包是已經放到 usr local s...