1. 들어가며 – 왜 자동 등록이 필요한가?
Zabbix에서 신규 서버를 모니터링하려면 보통 Zabbix Web UI에서 직접 Host를 등록해야 합니다. 하지만 클라우드 환경에서는 서버가 자주 생성되고 삭제되기 때문에 이 방식은 번거롭고 비효율적입니다. 이를 해결하기 위해 Agent가 스스로 등록 요청을 보내도록 하는 ‘Active Registration’ 기능이 있습니다.
2. Zabbix Server 설치 요약
Zabbix 6.x 버전을 Amazon Linux 2에 설치했습니다.
패키지 설치 및 기본 포트 오픈 외에, 다음 설정을 확인했습니다.
# 보안그룹 설정
TCP, 인바운드, 10051, Zabbix agent EC2 IP
TCP, 인바운드, 80, 접속 Client IP 또는 0.0.0.0/0
# zabbix_server.conf 내 DB 정보 수정
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=your_password
3. Zabbix Agent 설치 및 설정
각 Agent 서버에서 다음과 같이 설치하고 설정합니다:
설치
sudo yum install -y zabbix-agent
# /etc/zabbix/zabbix_agentd.conf 수정
ServerActive=<Zabbix Server IP>
Hostname=auto-registration
HostMetadata=webserver
여기서 HostMetadata=webserver
가 핵심입니다.
이 값이 자동 등록 시 서버 쪽 Rule 조건으로 활용됩니다.
4. Zabbix Server 측 Auto-registration 조건 설정
Zabbix Web UI → Administration > Auto Registration에서 규칙을 추가합니다:
- 조건(Condition)
Host metadata
→equals
→webserver
- 작업(Operation)
- 등록: “Add host”
- 템플릿 연결: “Link to template” → Template OS Linux
- 그룹 추가: “Add to host group” → Linux servers
이 설정이 있으면 Agent가 최초 접속 시 자동 등록됩니다.
5. 템플릿 자동 연결 및 알림 설정
등록과 동시에 템플릿을 연결하고 알림도 설정할 수 있습니다.
예:
- “Send message to Admin via email”
- “Enable host”
- “Add to maintenance period”
6. 테스트 및 확인
Agent 서버에서 서비스를 재시작한 후, 서버 로그 확인:
sudo systemctl restart zabbix-agent
tail -f /var/log/zabbix/zabbix_agentd.log
서버 측 /var/log/zabbix/zabbix_server.log
에서도 등록 로그를 확인합니다.
Zabbix UI에서도 자동으로 Host가 생성되어 템플릿이 적용된 것을 확인할 수 있습니다.
7. 마치며 – 운영에 주는 이점과 한계
자동 등록 기능을 사용하면 서버 수동 등록 부담이 크게 줄고, IaC 또는 Auto Scaling 환경과의 연계도 쉬워집니다.
단점으로는, Host 이름이 자동으로 지정되기 때문에 네이밍 전략과 연동이 필요하며, Agent가 반드시 ServerActive
모드로 동작해야 합니다.