Zabbix 개요

Zabbix v7.4번역일: 2026-09-09원본 보기

아키텍처

Zabbix는 여러 주요 소프트웨어 구성 요소로 이루어져 있습니다. 각 구성 요소의 역할은 다음과 같습니다.

서버

Zabbix 서버는 에이전트가 가용성 및 무결성 정보와 통계를 보고하는 중앙 구성 요소입니다. 서버는 모든 설정, 통계 및 운영 데이터가 저장되는 중앙 저장소입니다.

데이터베이스 저장소

모든 설정 정보와 Zabbix가 수집한 데이터는 데이터베이스에 저장됩니다.

웹 인터페이스

어디서나 어떤 플랫폼에서든 Zabbix에 쉽게 접근할 수 있도록 웹 기반 인터페이스가 제공됩니다. 이 인터페이스는 Zabbix 서버의 일부이며, 일반적으로 서버가 실행되는 동일한 물리적 시스템에서 실행되지만 반드시 그래야 하는 것은 아닙니다.

프록시

Zabbix 프록시는 Zabbix 서버를 대신해 성능 및 가용성 데이터를 수집할 수 있습니다. 프록시는 Zabbix 배포 시 선택적으로 사용하는 구성 요소이지만, 단일 Zabbix 서버의 부하를 분산하는 데 매우 유용할 수 있습니다.

에이전트

Zabbix 에이전트는 모니터링 대상에 배포되어 로컬 리소스와 애플리케이션을 능동적으로 모니터링하고 수집한 데이터를 Zabbix 서버에 보고합니다. Zabbix 4.4부터 두 가지 유형의 에이전트를 사용할 수 있습니다. Zabbix 에이전트는 가볍고 다양한 플랫폼을 지원하며 C로 작성되었고, Zabbix 에이전트 2는 매우 유연하고 플러그인으로 쉽게 확장할 수 있으며 Go로 작성되었습니다.

데이터 흐름

또한 한 걸음 물러서서 Zabbix 내부의 전반적인 데이터 흐름을 살펴보는 것도 중요합니다. 데이터를 수집하는 아이템을 생성하려면 먼저 호스트를 생성해야 합니다. Zabbix 데이터 흐름의 다른 쪽을 살펴보면, 트리거를 생성하려면 먼저 아이템이 있어야 합니다. 액션을 생성하려면 트리거가 있어야 합니다. 따라서 서버 X의 CPU 부하가 너무 높다는 알림을 받으려면 먼저 서버 X의 호스트 항목을 생성하고, CPU를 모니터링할 아이템을 생성한 다음, CPU 부하가 너무 높을 때 활성화되는 트리거와 이메일을 보내는 액션을 차례로 생성해야 합니다. 단계가 많아 보일 수 있지만, 템플릿을 활용하면 실제로는 그렇지 않습니다. 이러한 설계 덕분에 매우 유연한 구성이 가능합니다.