Linux

[ZABBIX] 구조 / 동작 방식

비번변경 2022. 10. 12. 09:57

ZABBIX

zabbix logo

네트워크 서비스, 서버 등의 네트워크 하드웨어를 감시하고 추적하여 관리자에게 장애가 발생했음을 신속히 알리기 위한 네트워크 관리 시스템. 오픈 소스이다.

데이터베이스로 MySQL, PostgreSQL, SQLite, 오라클 데이터베이스나 IBM DB2를 선택하여 사용할 수 있다. 백엔드는 C로 만들어져 있으며, 프런트엔드는 PHP가 사용된다.

ZABBIX 에이전트 소프트웨어를 설치하지 않으면  SNMP, TCP, ICMP, IPMI, SSH, telnet 등을 이용한 감시 방법을 지원한다. OS ZABBIX 에이전트 소프트웨어를 설치하면 CPU 사용량, 네트워크 사용량, 디스크 용량 등을 포함한 더 많은 정보에 대한 감시 방법을 지원한다.

 

 

구조

ZABBIX 구조

Server : 모니터링을 수행하는 Zabbix 소프트웨어의 중앙 프로세스이자 중앙 데이터 저장소. Zabbix 프록시 및 에이전트와 상호 작용하며 트리거를 계산하고, 알림을 전송한다.

Agent : 모니터링 대상에 배포되어 Server로 데이터를 보내주는 프로세스이다.

 

 

동작 방식

Zabbix는 Active, Passive 방식으로 동작할 수 있다. Active 방식은 에이전트가 10051/TCP을 사용하여 2분에 한 번씩 서버와 연결하고 모니터링 데이터를 전달하는 방식이다. 반면 Passive(기본) 방식은 서버가 10050/TCP를 사용하여 에이전트에 연결하고 데이터를 polling 한다.

passive vs active

간단히 정리하면 Active는 Push, Passive는 Pull 방식이다.

 

 

참고 문서

https://ko.wikipedia.org/wiki/Zabbix

https://honglab.tistory.com/66

https://blog.zabbix.com/zabbix-agent-active-vs-passive/9207/