nagios監控linux主機監控記憶體指令碼

2021-09-22 13:05:33 字數 1999 閱讀 8726

閱讀目錄

回到頂部

工作包括兩部分監控端(一二三)和被監控端(四)

回到頂部

nrpe.cfg中新增命令索引

1

command[check_used_mem]=/usr/local/nagios/libexec/check_used_mem.sh 80 90

說明:實際記憶體使用量超過80%警告;超過90%嚴重警告

回到頂部

參考指令碼check_used_mem.sh

warn=$1critical=$2all=`free | sed -n '

2p' | awk ''`

used=`free | sed -n '

3p' | awk ''`

let

"c=$used*100/$all

"if [[ $c -lt $warn ]]

then

echo

"used mem/total < $warn% [used:$used, total:$total:$all]

"exit 0

elif [[ $c -lt $critical ]]

then

echo

"used mem/total ≥$warn% [used:$used, total:$total:$all]

"exit 1

else

echo

"used mem/total ≥$critical% [used:$used, total:$total:$all]

"exit 2fi

解釋:

1. 1、1、

2分別指輸入的第

一、二個引數,比如:

del.sh指令碼內容為

#/bin/bash

echo $1

2. free用來檢視記憶體的使用情況

[root@xen_202_12 /]# free -m

total used

free

shared buffers cached

mem:

3072

2459

6120

2071803

-/+ buffers/cache: 447

2624

swap:

1913

01913

關係:total = used + free

第3行:

-/+ buffers/cache的意思:

-buffers/cache 的記憶體數: 447 (等於第1行的 used - buffers - cached)

+buffers/cache 的記憶體數: 2624 (等於第1行的 free + buffers + cached)

注:此處的記憶體數在用上面式子計算後,在大小上有一點點出入(還不知道是什麼原因)。

可見-buffers/cache反映的是被程式實實在在吃掉的記憶體,而+buffers/cache反映的是可以挪用的記憶體總數。

3. sed -n '2p'指的是查詢第二行

4. awk ' 指的是第二列,其中預設以空格分隔。可以利用-f指定分隔符

$echo 1b234b56b7 | awk -f 'b'

''234

5. 實用,《用來比較字串;-lt用來比較數字

回到頂部

1

/usr/local/nagios/bin/nrpe-c/usr/local/nagios/etc/nrpe.cfg -d

回到頂部

define service

nagios 監控 linux主機的資訊

監控linux主機的程序數量資訊 有需要監控linux centos 主機上某個程序的數量,比如 監控 mysql mmm monitor主機上的 usr lib mysql mmm monitor checker 程序數量。如果正常的話,monitor 應該啟動5個程序。相關資訊如下 root 1...

nagios監控windows主機

監控windows 系統中某個特定服務是否啟動 修改這個要被監控的windows系統在 nagios伺服器上對應的 配置檔案。比如 usr local nagios etc objects oa server.cfg 增加要偵聽的服務配置 define service其中 office task 就...

nagios 監控 虛擬主機

nagios 預設使用是ip方式來監控,問題如果是基於網域名稱的虛擬主機,ip不可訪問,只能用網域名稱訪問,如何監測?執行check http 可以發現 h 是使用 h來監控虛擬主機的。如何實現呢 在nagios的services.cfg 中 原先監控 修改 check command check ...