저는 Icinga의 완전 초보자이며 이에 대한 해결책을 찾기 위해 이미 여러 번의 필사적인 시도를 시도했습니다. 마침내 성능 데이터를 제공하기 위해 check_snmp_int.pl을 가져온 후 이 데이터를 JasperReports 및 Graphite에 제공하려고 했습니다. 몇 시간 동안 필사적으로 검색했지만 답을 찾을 수 없었습니다. check_snmp_int.pl이 성능 확인을 위해 데이터를 저장하는 위치를 찾을 수 없는 것 같습니다.
나는 다음과 같은 일을 하고 있다: 우분투 14.04 Icinga2 버전:r2.5.4-1 IcingaWeb2 버전 2.3.4
나는 이미 check_snmp_int.pl 플러그인을 설치했습니다.
object CheckCommand "check_snmp_int" {
import "plugin-check-command"
command = [PluginDir + "/check_snmp_int.pl"]
arguments = {
"-H" = "$snmp_address$"
"-C" = "$snmp_community$"
"-p" = "$snmp_port$"
"-2" = {set_if = "$snmp_v2$"}
"-o" = "$snmp_oid$"
"-f" = {set_if = "$snmp_perf$"}
"-w" = "$snmp_warn$"
"-c" = "$snmp_crit$"
}
}
제가 플러그인으로 구현한 서비스입니다.
apply Service "bandbreitenueberwachung" {
check(unknown) at 12:40 ..._int"
check_interval = 5m
assign where host.vars.os == "Switch"
}
설명:check_snmp_int.pl은 데이터를 어디에 저장하고 IcingaWeb에서 사용할 수 있도록 데이터를 검색하는 위치는 어디입니까?
고마워요 데이빗.
답변1
icinga2 구성에서 성능 데이터를 활성화하고 브로커(수표로 전송된 성능 데이터를 처리하는 소프트)를 선택해야 합니다.
예를 들어 icinga2.conf:
...
process_performance_data = 1
broker_module = "/usr/local/pnp4nagios/lib/npcdmod.o config_file=/usr/local/pnp4nagios/etc/npcd.cfg"
...
그리고 성능 데이터를 처리할 소프트웨어를 설치해야 합니다. 성능 데이터를 저장하는 것은 check_snmp_int.pl이 아닙니다. 다음과 같이 결과만 보냅니다.
확인 결과|graph1=...graph2=...
예 :
4 disks OK. Disk #1: ok, Disk #2: ok, Disk #3: ok, Disk #4: ok, |Disk #1=1 Disk #2=1 Disk #3=1 Disk #4=1
파이프의 왼쪽 부분은 서비스의 응답이고 오른쪽은 그래프 소프트에서 처리하는 데 사용됩니다.
편집 1 :
pnp4nagios는 Graphite와 함께 작동합니까? 그렇다면 어떻게 작동합니까?
나는 흑연을 사용한 적이 없지만 웹 튜토리얼에 따르면 pnp는 흑연과 작동하는 것 같습니다.
pnp4nagios는 icinga가 응답 파이프의 오른쪽 부분에 있는 검사 결과에서 성능 데이터를 보내는 것을 기다립니다.
이를 위해서는 icinga의 conf에서 perfdata를 활성화하고 perfdata를 처리하는 데 사용할 브로커를 icinga2에 설명해야 합니다.
pnp4nagios가 데이터를 수신하면 기본적으로 /usr/local/pnp4nagios/var/perfdata/
. 호스트당 디렉토리가 있고 그 안에 각 서비스에 대해 xml과 rrd 파일이라는 두 개의 파일이 있습니다.
내 성능 데이터를 처리하려면 어떤 소프트웨어를 설치해야 합니까?
pnp4nagios가 이를 위해 수행되었습니다.
IDO2DB 또는 FILE2SOCK과 같은 것을 의미합니까?
IDO2DB 또는 FILESOCK은 icinga2가 데이터베이스를 채우는 방식입니다.
위에서 언급한 서비스가 현재 작동하지 않기 때문에 어떻게 다시 작성할 수 있는지 아시나요? 기본적으로 스크립트는 위에 표시된 형식으로 결과와 함께 perfadtas를 보냅니다.
콘솔에서 직접 check_snmp_int.pl을 테스트하고 파이프 뒤에 데이터가 있는지 확인할 수 있습니다.
또한 icinga.conf에서 perfdata를 활성화하고 브로커를 선언해야 합니다.