【移動應(yīng)用開發(fā)技術(shù)】Nagios 監(jiān)控 SNMP 溫度計(jì)_第1頁
【移動應(yīng)用開發(fā)技術(shù)】Nagios 監(jiān)控 SNMP 溫度計(jì)_第2頁
【移動應(yīng)用開發(fā)技術(shù)】Nagios 監(jiān)控 SNMP 溫度計(jì)_第3頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

【移動應(yīng)用開發(fā)技術(shù)】Nagios監(jiān)控SNMP溫度計(jì)

老板給機(jī)房新買了個(gè)溫度,濕度的感應(yīng)器,問我能不能整合到Nagios里面。我的回答是NoProblem.首先看看他自帶的界面監(jiān)控SNMP,首先得知道他的OID是啥,這個(gè)界面我可以直接下載MIB文件和對應(yīng)的EXCEL文檔。下載以后,重命名MIB為txt文件,然后拷貝到我的nagios服務(wù)器的/usr/share/snmp/mibs目錄下,然后記得添加到配置文件中[root@sydnagios

mibs]#

pwd

/usr/share/snmp/mibs

[root@sydnagios

mibs]#

ls

g*txt

geist_mib.txt

[root@sydnagios

mibs]#

more

/usr/share/snmp/snmp.conf

mibfile

/usr/share/snmp/mibs/geist_mib.txt這樣子,我就可以直接通過名字或者OID來查詢狀態(tài)了。比如說我根據(jù)他的OID查詢濕度和溫度snmpwalk

-v2c

-c

public

10.3.1.142

1.3.6.1.4.1.21239.5.1.2.1.6

GEIST-V4-MIB::internalHumidity.1

=

INTEGER:

29

%

[root@sydnagios

mibs]#

snmpwalk

-v2c

-c

public

10.3.1.142

1.3.6.1.4.1.21239.5.1.2.1.5

GEIST-V4-MIB::internalTemp.1

=

INTEGER:

291

0.1

Degrees等等,濕度是正確的,溫度的Interger是291,他還需要乘以0.1才是正確的溫度。用Nagios自帶的check_snmp試試看,結(jié)果也是這樣,這可不是我想要的,在輸?shù)絅agios之前,我必須把數(shù)據(jù)處理一下[root@sydnagios

mibs]#

/usr/local/nagios/libexec/check_snmp

-H

10.3.1.142

-o

1.3.6.1.4.1.21239.5.1.2.1.5.1

-C

public

-P

2c

SNMP

OK

-

292

0.1

Degrees

|

GEIST-V4-MIB::internalTemp.1=292寫個(gè)簡單的腳本,記得執(zhí)行chomd+x。注意返回值,0表示正常,1表示warning,2表示critical,3表示未知異常#!/bin/sh

snmp=$(/usr/local/nagios/libexec/check_snmp

-H

10.3.1.142

-o

1.3.6.1.4.1.21239.5.1.2.1.5.1

-C

public

-P

2c|cut

-b

11-14)

temp=$((

$snmp/10))

#echo

$temp

#echo

$temp

if

test

$temp

-lt

30;then

echo

"TEMP

OK

-

$temp

Degree

"

exit

0

elif

test

$temp

-lt

35;

then

echo

"TEMP

WARNING

-

$temp

Degree"

exit

1

else

echo

"TEMP

CRITICAL

-

$temp

Degree"

exit

2

fi前段時(shí)間在學(xué)習(xí)python,試了試python的腳本也是工作的#!/usr/bin/env

python

import

os

result=os.popen("/usr/local/nagios/libexec/check_snmp

-H

10.3.1.142

-o

1.3.6.1.4.1.21239.5.1.2.1.5.1

-C

public

-P

2c|cut

-b

11-14").read()

result=float(result)

value=result/10

if

value<30:

print("Temperature

is

OK-%0.1f

Degrees"%value)

exit(0)

elif

value<35:

print("Temperature

is

Warning-%0.1f

Degrees"%value)

exit(1)

else:

print("Temperature

is

Critical-%0.1f

Degrees"%value)

exit(2)command.cfg添加一條命令define

command{

command_name

check_snmp_temp

command_line

/usr/local/nagios/libexec/test.sh

}network.cfg里面添加一個(gè)host和service的定義define

host{

use

generic-ap

;

Inherit

default

values

from

a

template

host_name

MELSENSOR

;

The

name

we're

giving

to

this

switch

alias

MELSENSOR

;

A

longer

name

associated

with

the

switch

address

10.3.1.142

;

IP

address

of

the

switch

parents

MEL3750WIFI

}

define

service{

use

generic-service

;

Inherit

values

from

a

template

host_name

MELSENSOR

servicegroups

network-services

service_description

Temp

check_comma

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論