자빅스란?
- 엔터프라이즈급 오픈소스 분산 모니터링 시스템
- 서버, 네트워크 장비, 애플리케이션, 데이터베이스, 서비스 등 상태와 성능을 실시간으로 모니터링하고, 문제를 감지했을 때 알림을 제공하거나 자동화된 대응 작업을 수행할 수 있습니다.
동작 방식
- Active or Passive
- Active (Agent → Server)
Zabbix Agent 설정 파일에 serverActive의 IP 지정. 해당 IP를 참조하여 데이터를 전송
Active는 활성이라는 뜻으로, 주기적으로 결과를 전송 - Passive (Server → Agent)
Zabbix 동작방식은 Passive가 기본
요청이 있을 경우 데이터를 전송
- 폴링은 수동적(Passive), 트래핑은 능동적(Active)으로 기능하며, 두가지 방식을 사용해서 특정 간격이나 시간에 Health Check가 가능
기능
- 데이터 수집
- 가용성 및 성능 검사
- 사용자 정의 검사
- 사용자 정의 간격으로 원하는 데이터 수집
- 서버 / 프록시 및 에이전트가 수행
- 기본적으로 30초마다 지표 수집, 인터벌을 조정할 수 있다.
- 유연한 임계 값 정의
- 데이터베이스로부터 트리거, 참조값이라고 하는 매우 유연한 문제 임계값을 정의할 수 있다.
- 구성 가능한 알람
- 에스컬레이션 일정, 받는 사람, 미디어 유형에 대한 보내는 알림을 사용자 지정할 수 있음.
- 알림에 대해 구성을 고도화할 수 있으며, 사용자 정의 메시지를 이용해 알람 내용을 설정할 수 있다.
- 그래프 작업/ 다양한 시각화 옵션
- 강력한 모니터링 기능과 그래프를 하나의 도구로 결합함.
- 사용자 정의에 따른 다양한 그래프를 지원하고 다양한 스크린을 이용해 대시보드 구현할 수 있다.
- 모니터링 된 항목을 내장된 그래프 기능을 사용하여 즉시 그래프로 표현할 수 있음.
- 웹 모니터링
- 웹 사이트에서 시뮬레이션 된 마우스 클릭 경로를 따라 기능 및 응답시간을 확인할 수 있음.
- 데이터 저장
- 수집한 데이터를 MySQL 등의 데이터베이스에 저장
- 데이터 저장 기간을 자유롭게 구성할 수 있고, 데이터베이스 백업 기능이 지원됨.
- 쉬운 구성
- 모니터링 된 장치 추가
- 템플릿 사용
- 템플릿을 사용해 검사 시간을 절약할 수 있음.
- 다른 템플릿을 상속할 수 있는 템플릿
- 네트워크 발견
- 네트워크 장치를 자동 검색
- 에이전트를 자동으로 등록하고, 파일 시스템, 네트워크 인터페이스 및 SNMP OID 발견
- 빠른 웹 인터페이스
- PHP 웹 기반 프론트 엔드
- 어디서든 액세스 할 수 있는 장점.
- Zabbix API
- 대량 조작, 타사 소프트웨어 통합 등의 목적을 위해 Zabbix에 프로그래밍 가능 인터페이스를 제공한다.
- 사용 권한 시스템
- 시스템에 대한 사용자의 권한을 설정해서 특정 사용자를 특정 뷰에 한정할 수 있다.
- 모든 기능을 갖춘, 쉽게 확장 가능한 에이전트
- Linux와 Windonws 모두에 배포 가능
- 복잡한 환경에 대비
- zabbix 프록시를 사용해 원격 모니터링을 쉽게 할 수 있음.
zabbix 구조
Server + Web Interface + Proxy + Agent + Database
- Server
- 모니터링을 수행하는 중앙 프로세스이자 데이터 저장소
- 통계 데이터, 설정 데이터 저장.
- Web Interface
- zabbix Access Interface 제공
- Proxy
- zabbix 서버의 부하 분산에 사용
- 서버를 대신하여 성능/가용성 데이터 수집
-Agent - 리소스와 애플리케이션 모니터링
- 수집 데이터를 Database에 전송
- Host: 수집 대상 서버
서버, 네트워크 장비, 특정 네트워크 장비의 일부 아이템 등이 그 대상이 될 수 있다. - Item: 데이터 메트릭 수집 항목 (CPU 사용률이나 메모리 사용량 등)
- Trigger/Event : 임계치 설정/임계치 도달 시 발생
CPU가 90% 사용됐을 때 이벤트를 발생시켜라 등. 이런 임계치가 되면 이벤트가 발생한다. - Condition : 이벤트가 발생할 수 있는 조건들.
- 템플릿 : 여러 호스트에 공통적으로 적용할 모니터링 구성 요소(아이템, 트리거, 그래프 등)를 포함
- 전체적인 순서 : 설정해놓은 임계치가 되면 Trigger가 동작하며 Event를 발생시키고, Condition(조건)에 맞춰 Operation을 발생시킨다. mail 발송 등을 Operation을 통해 설정할 수 있다.
'DevOps > Zabbix' 카테고리의 다른 글
Asible을 통한 자빅스 설치 (0) | 2025.01.01 |
---|