본문 바로가기

리눅스

[draft] Zabbix에서 특정 프로세스 상태를 모니터링하는 방법

728x90

Zabbix에서 특정 프로세스 상태를 모니터링하는 방법

Zabbix에서 기본적으로 제공하는 proc.num 매크로를 사용하면 프로세스 상태를 커스텀 스크립트 없이 모니터링할 수 있습니다.

proc.num 키 사용법

proc.num[<name>,<user>,<cmdline>,<state>,<exe>]
  • name : 프로세스 이름 (예: java)
  • user : 프로세스를 실행한 사용자 (옵션)
  • cmdline : 프로세스의 명령어 문자열 (옵션, 부분 매칭 가능)
  • state : 프로세스 상태 (옵션, run, sleep, zombie 등)
  • exe : 실행 파일의 전체 경로 (옵션)

1. 템플릿 생성

설정 → 템플릿 → 템플릿 작성

  • 템플릿 이름 : Template Instance Process Monitoring
  • 그룹 : Template
  • 이름 : Instance 프로세스 모니터링 템플릿

zabbix

2. 매크로 생성

설정 → 템플릿 → Template Instance Process Monitoring 템플릿 → 매크로

  • 매크로
    • {$INSTANCE1_CMD}
    • {$INSTANCE2_CMD}
    • /app/instance/instance1/demo-0.0.1-SNAPSHOT.jar
    • /app/instance/instance2/demo-0.0.1-SNAPSHOT.jar

zabbix

3. 어플리케이션 생성

설정 → 템플릿 → Template Instance Process Monitoring 템플릿 → 어플리케이션 작성

  • 이름 : Instance Processes Monitoring

zabbix

4. 아이템 생성

proc.num 키를 사용하여 프로세스를 모니터링합니다.

설정 → 템플릿 → Template Instance Process Monitoring 템플릿 → 아이템 → 아이템 작성

Instance1 프로세스 모니터링 아이템

  • 이름 : Instance1 프로세스 수
  • 종류 : Zabbix agent
  • 키 : proc.num[,root,,{$INSTANCE1_CMD}]
  • 데이터형 : 수치 (unsigned)
  • 갱신 간격 : 60s
  • 어플리케이션 : Instance Processes Monitoring

zabbix

Instance2 프로세스 모니터링 아이템

  • 이름 : Instance2 프로세스 수
  • 종류 : Zabbix agent
  • 키 : proc.num[,root,,{$INSTANCE2_CMD}]
  • 데이터형 : 수치 (unsigned)
  • 갱신 간격 : 60s
  • 어플리케이션 : Instance Processes Monitoring

5. 트리거 생성

프로세스가 실행되지 않을 경우 알림을 발생시킵니다.

설정 → 템플릿 → Template Instance Process Monitoring 템플릿 → 트리거 → 트리거 작성

Instance1 프로세스 중지 트리거

  • 이름 : Instance1 프로세스 중지됨
  • 심각도 : 중증 장애
  • 조건식
{Template Instance Process Monitoring:proc.num[,root,,{$INSTANCE1_CMD}].last()}=0

zabbix

Instance2 프로세스 중지 트리거

  • 이름 : Instance2 프로세스 중지됨
  • 심각도 : 중증 장애
  • 조건식
{Template Instance Process Monitoring:proc.num[,root,,{$INSTANCE2_CMD}].last()}=0

6. 그래프 생성

두 프로세스의 개수를 시각적으로 표현합니다.

설정 → 템플릿 → Template Instance Process Monitoring 템플릿 → 그래프 → 그래프 작성

  • 이름 : Instance Processes Count

zabbix

7. 템플릿을 호스트에 연결

Template Instance Process Monitoring 추가

zabbix

8. 모니터링 프로세스

그래프

zabbix

알림

zabbix

 

proc.num 키를 활용하여 Instance1 및 Instance2의 실행 여부를 효과적으로 모니터링할 수 있습니다. 매크로를 사용하여 프로세스 경로를 유연하게 관리하며 템플릿으로 다른 호스트에 쉽게 확장 적용할 수 있습니다.

 

728x90