카테고리 없음
03. Linux Zabbix Agent구성하기
잘나가는전산쟁이
2026. 8. 5. 02:18
728x90
반응형
Linux 대상 Zabbix Agent 등록
- 본 문서는 Zabbix Server에 Linux 호스트를 Agent 방식으로 등록하는 절차를 설명한다.
- Zabbix Agent는 Passive check와 Active check 두 가지 방식으로 동작할 수 있으며, 환경에 따라 둘을 함께 사용할 수도 있다.
- 기본적으로 Passive check는 Zabbix Server(또는 Proxy)가 Agent를 조회하는 방식이고, Active check는 Agent가 Server(또는 Proxy)로 먼저 연결해 데이터를 전송하는 방식이다.
- 일반적인 Linux 자원 모니터링은 템플릿 기반으로 빠르게 적용할 수 있다.
구성 확인
- Zabbix Server: 모니터링 데이터 수집 및 트리거 평가 담당.
- Linux 대상 서버: Zabbix Agent 설치 대상.
- 통신 포트:
- Passive check: Server/Proxy -> Agent, 10050/tcp.
- Active check: Agent -> Server/Proxy, 10051/tcp.
- 대규모 환경에서는 Server가 모든 Agent를 직접 조회하는 구조보다, Active check와 Proxy를 조합하는 편이 확장성에 유리하다.
Check방식 설명
Passive check
- Passive check는 Zabbix Server 또는 Proxy가 주기적으로 Agent에 접속해서 값을 요청하는 방식이다.
- Agent는 요청을 받을 때만 응답하므로 설정이 단순하고, Server 항목만 맞으면 빠르게 시작할 수 있다.
- 장점은 구조가 직관적이고 디버깅이 쉬운 점이다.
- 단점은 대상 서버 수가 늘수록 Server/Proxy의 polling 부하가 증가하고, 각 서버로 인바운드 접속이 가능해야 한다는 점이다.
Active check 설명
- Active check는 Agent가 먼저 Zabbix Server 또는 Proxy에 접속해 활성 아이템 목록을 받아온 뒤, 주기적으로 측정값을 전송하는 방식이다.
- 이 방식에서는 Agent 설정의 ServerActive가 중요하며, Hostname 값은 Web UI의 Host name과 정확히 일치해야 한다.
- 장점은 대량 호스트 환경에서 Server의 polling 부담을 줄이고, NAT 환경이나 외부망 구간에서도 구성하기 쉽다는 점이다.
- 단점은 최초 설정이 Passive보다 약간 더 신경 쓸 부분이 많고, Active item으로 구성해야 하는 템플릿/아이템이 필요하다는 점이다.
모니터링 방식 비교
| 항목 | Passive | Active |
|---|---|---|
| 통신 방향 | Server/Proxy -> Agent | Agent -> Server/Proxy |
| 기본 포트 | 10050/tcp | 10051/tcp |
| 설정 핵심 | Server | ServerActive, Hostname |
| 방화벽 요구 | Agent 인바운드 허용 필요 | Agent 아웃바운드 중심 |
| 대규모 환경 적합성 | 보통 | 높음 |
| NAT 환경 적합성 | 낮음 | 높음 |
| 템플릿 아이템 타입 | Zabbix agent | Zabbix agent (active) |
Agent 설치
- Rocky Linux 9 계열에서는 Zabbix 공식 저장소를 등록한 뒤 Agent 패키지를 설치한다.
- 기본 Agent와 Agent 2 중 하나를 선택할 수 있으며, 일반적인 Linux 자원 수집은 둘 다 가능하다.
$> $rpm -Uvh https://repo.zabbix.com/zabbix/7.4/release/rhel/9/noarch/zabbix-release-latest.el9.noarch.rpm $> $dnf clean all $> $dnf install -y zabbix-agent
- Agent 2를 사용할 경우에는 아래처럼 설치한다.
$> dnf install -y zabbix-agent2
Agent 설정
- 설정 파일에서 Passive와 Active 모두 사용할 수 있도록 구성하는 것이 일반적이다.
- Server에는 Zabbix Server 또는 Proxy IP를 넣고, ServerActive에도 동일한 값을 넣는다.
- Hostname은 Zabbix Web UI에 등록할 Host name과 반드시 일치해야 한다.
$> vi /etc/zabbix/zabbix_agentd.conf ... Server=<ZABBIX_SERVER_IP> ServerActive=<ZABBIX_SERVER_IP> Hostname=<LINUX_HOSTNAME> ListenPort=10050 RefreshActiveChecks=120
Passive / Active 선택 기준
- 사내 LAN처럼 Server가 Agent에 직접 접근 가능한 환경은 Passive만으로도 충분하다.
- 서버 수가 많아질수록 Server polling이 병목이 될 수 있으므로, 대규모 환경에서는 Active를 우선 검토하는 편이 낫다.
- NAT 뒤에 있거나 외부망에서 수집해야 하는 서버는 Active가 더 적합하다.
- 일반적으로는 Passive + Active 혼합으로 시작한 뒤, 부하가 증가하면 Active 비중을 늘리는 방식이 운영하기 좋다.
서비스 시작
- Agent 서비스를 활성화하고 부팅 시 자동 시작되도록 설정한다.
systemctl enable --now zabbix-agent
- Agent 2를 설치한 경우 서비스명은 zabbix-agent2이다.
systemctl enable --now zabbix-agent2
Web UI 등록
- Zabbix Web UI에서 Host를 생성하고, Agent interface를 추가한다.
- Host name은 Hostname과 동일하게 입력한다.
- 템플릿은 Linux by Zabbix agent를 연결한다. Active 위주로 운영할 경우 Linux by Zabbix agent active 계열 템플릿도 검토할 수 있다.
- 저장 후 Monitoring > Latest data에서 수집 여부를 확인한다.
대용량 추천값
- 대규모 환경에서는 Server만 키우는 것보다 Proxy를 함께 쓰는 편이 확장성과 안정성에 유리하다.
- Active check를 우선 사용하고, Passive는 꼭 필요한 항목에만 제한하는 구성이 일반적으로 유리하다.
- 추천 시작값은 아래와 같다.
| 항목 | 추천값 |
|---|---|
| 체크 방식 | Active 우선, Passive 보조 |
| ServerActive | Server 또는 Proxy 주소 명시 |
| RefreshActiveChecks | 120초 기본값 유지 후 부하에 따라 조정 |
| Timeout | 3~5초 수준에서 시작 |
| StartAgents | Passive 사용량에 맞춰 최소 필요 수만 설정 |
| Proxy 사용 | 지사, DMZ, 대량 호스트 구간은 적극 검토 |
| 템플릿 정책 | 공통 템플릿 표준화 후 Host group별 적용 |
점검 항목
- Agent 서비스가 정상 기동되었는지 확인한다.
- Passive item은 Server/Proxy에서 즉시 조회되는지 확인한다.
- Active item은 Agent 로그에서 active checks 목록을 정상 수신하는지 확인한다.
- Hostname 불일치, ServerActive 미설정, 방화벽 차단은 가장 흔한 원인이므로 우선 점검한다.
운영 팁
- Passive는 단순하고 직관적이며, Active는 대규모 환경과 분산망에 유리하다.
- 둘을 동시에 쓰면 운영 유연성이 높아진다.
- 대량 서버 환경에서는 Proxy를 함께 사용하고, active check 위주로 표준화하면 Server 부하를 줄이기 쉽다.
- 초기에는 기본 템플릿으로 시작하고, 이후 파일시스템, 프로세스, 애플리케이션, 로그 감시를 단계적으로 추가하는 방식이 안전하다.
728x90
반응형