Unix의 SNMP 트랩

Unix의 SNMP 트랩

나는 거의 6일 동안 이 문제를 극복하려고 노력해 왔습니다.

나는 2 대의 기계를 가지고 있습니다. 그 중 하나는 관리자 10.201 머신이고 다른 하나는 에이전트(10.226)입니다.

내가 구성한관리자의 snmptrap.conf이와 같은 파일.

authCommunity  execute  public      default  .1
traphandle  default /usr/bin/traptoemail -s localhost -f snmp@localhost root@localhost

그런 다음 snmpd.conf프록시 파일을 다음과 같이 구성했습니다.

###########################################################################
# SECTION: Access Control Setup

rocommunity  public  
rwcommunity  private



###########################################################################
# SECTION: System Information Setup

syslocation  "Izmir, 226. machine "
syscontact  [email protected]

###########################################################################
# SECTION: Trap Destinations

trap2sink  10.0.0.201  162

authuser   read -s v2c guest_user noauth  .1
authuser   read -s usm guest_user noauth  .1
authcommunity read  public  default .1
iquerySecName guest_user
agentSecName  guest_user

monitor   -u guest_user  -r  1  "interface down" -o ifDescr ifOperStatus != 1

하지만 에이전트 시스템의 CPUIdle 속도를 캡처하고 싶습니다. 예를 들어, 이와 같은 snmpwalk 명령을 통해 CpuIdle을 얻을 수 있습니다.

# snmpwalk -v 2c  -c public 10.0.0.226 .iso.org.dod.internet.private.enterprises.ucdavis.systemStats.**ssCpuIdle**.0

에이전트(10.0.0.226)의 CPUIdle 속도가 98을 초과하는 경우 관리자 호스트(10.0.0.201)를 캡처하고 싶습니다.

누구든지 나를 도와줄 수 있나요? .conf문서나 다른 곳 에서 내가 뭘 잘못하고 있는 걸까요 ?

답변1

읽어보니 man snmpd.confnet-snmp가 CPuIdle 속도에 대한 트랩을 보낼 수 없는 것 같습니다.

간단한 해결책은 CPU 유휴 비율의 최고 출력을 확인하고 snmptrap임계값이 초과되면 트랩을 보내는 bash 스크립트를 cron에서 호출하도록 하는 것입니다.

관련 정보