Zabbix 프록시는 사설 네트워크 대역의 서버를 모니터링하거나 Zabbix 메인 서버가 직접 접근할 수 없는 원격 서버의 데이터를 수집할 때 사용합니다. 프록시가 데이터를 수집하여 Zabbix 서버로 전달하는 역할을 하며, 서버의 부하를 줄이고 네트워크 트래픽을 분산시키는 데 기여합니다.
기존에 Zabbix 5.0 서버를 설치한 글을 바탕으로 프록시 서버도 유사하게 설치할 수 있다는 점을 참고해 주세요.
[Monitoring Tools] - Monitoring Tools - Zabbix Server 설치 매뉴얼
1. Zabbix 프록시 서버 요구 사항
- Zabbix 프록시 서버는 MySQL(MariaDB) 또는 PostgreSQL과 같은 데이터베이스가 필요합니다. (MariaDB 사용)
- Zabbix 서버와 프록시가 서로 통신할 수 있도록 네트워크 설정이 필요합니다. 기본적으로 10051 포트를 사용합니다.
2. Zabbix 프록시 설치
프록시 서버 설치를 위해 CentOS 7.9 환경에서 필요한 패키지들을 설치하고 설정하는 과정을 단계별로 안내합니다.
2.1 Zabbix 저장소 설정
Zabbix 5.0 버전의 저장소를 추가합니다. 이는 기존 Zabbix 서버를 설치한 방법과 동일합니다.
# Zabbix 5.0 저장소 추가
sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
sudo yum clean all
2.2 Zabbix 프록시 및 MariaDB 설치
Zabbix 프록시와 MariaDB를 설치합니다.
# Zabbix 프록시 및 MariaDB 설치
sudo yum install zabbix-proxy-mysql mariadb-server
2.3 MariaDB 설정 및 데이터베이스 생성
MariaDB를 시작하고 Zabbix 프록시가 사용할 데이터베이스와 사용자를 생성합니다.
# MariaDB 시작 및 부팅 시 자동 시작 설정
sudo systemctl start mariadb
sudo systemctl enable mariadb
# MariaDB 보안 설정 (옵션)
sudo mysql_secure_installation
# Zabbix 프록시 데이터베이스 및 사용자 생성
mysql -uroot -p
# MySQL 프롬프트에서 다음 명령어를 실행합니다:
CREATE DATABASE zabbix_proxy CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL PRIVILEGES ON zabbix_proxy.* TO 'zabbix'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
2.4 Zabbix 프록시 데이터베이스 초기화
프록시용 데이터베이스를 초기화합니다.
zcat /usr/share/doc/zabbix-proxy-mysql/proxy.sql.gz | mysql -uzabbix -p zabbix_proxy
2.5 Zabbix 프록시 설정 파일 수정
Zabbix 프록시 설정 파일을 수정합니다.
sudo vi /etc/zabbix/zabbix_proxy.conf
- Server=Zabbix 서버의 IP 주소 : 프록시가 데이터를 전송할 Zabbix 서버의 IP 주소를 입력합니다.
- Hostname=프록시 서버의 이름 : Zabbix 서버 UI에서 프록시 등록 시 사용할 이름입니다.
- DBName=zabbix_proxy : 프록시에서 사용할 데이터베이스 이름입니다.
- DBUser=zabbix : 데이터베이스 사용자 이름입니다.
- DBPassword=비밀번호 : 데이터베이스 접속 비밀번호입니다.
2.6 Zabbix 프록시 시작
설정을 마친 후 Zabbix 프록시 서비스를 시작하고 부팅 시 자동으로 시작되도록 설정합니다.
# Zabbix 프록시 서비스 시작 및 부팅 시 자동 시작 설정
sudo systemctl start zabbix-proxy
sudo systemctl enable zabbix-proxy
3. Zabbix 서버 UI에서 프록시 생성 및 호스트 연결
Zabbix 서버 웹 인터페이스에서 프록시를 등록하고, 프록시를 통해 모니터링할 호스트를 설정해야 합니다.
- Zabbix 웹 UI에 로그인합니다.
- 관리(Administration) -> 프록시(Proxies) 메뉴로 이동하여 프록시를 생성합니다.
- 생성된 프록시를 사용하여 모니터링할 호스트를 추가합니다.
- 설정(Configuration) -> 호스트(Hosts)로 이동합니다.
- 새로운 호스트를 생성하거나 기존 호스트를 수정합니다.
프록시를 사용하는 경우 사설 IP로 모니터링 가능! - Monitored by proxy 항목에서 새로 등록한 프록시를 선택합니다.
이후 해당 호스트는 지정한 프록시를 통해 Zabbix 서버에 데이터를 전송하게 됩니다.
※중요※
Zabbix Proxy이 모니터링 할 호스트의 Zabbix.agentd.conf 의 Server가 Proxy 주소여야함!!!
4. Zabbix 프록시의 데이터 수집 및 전송 과정
- 데이터 수집: Zabbix 프록시는 Zabbix 에이전트, SNMP, IPMI, JMX 등 여러 방식으로 모니터링 대상 서버에서 데이터를 수집합니다.
- 데이터 저장: 프록시는 수집한 데이터를 로컬 데이터베이스(MariaDB, PostgreSQL 등)에 임시로 저장합니다.
- 데이터 전송: 정해진 간격에 따라 Zabbix 프록시는 수집한 데이터를 Zabbix 메인 서버로 전송합니다.
기본적으로 Zabbix 프록시는 60초마다 데이터를 서버로 전송합니다. - 서버 수신: Zabbix 서버는 프록시로부터 데이터를 수신하고, 이를 바탕으로 모니터링 및 알림 작업을 수행합니다.
'Monitoring Tools' 카테고리의 다른 글
Monitoring Tools - Zabbix로 Windows Server 메모리 사용량 체크하기 (0) | 2024.10.31 |
---|---|
Monitoring Tools - Zabbix 웹 시나리오를 통해 웹 사이트 모니터링하기 (4) | 2024.10.30 |
Monitoring Tools - Zabbix 로그 파일 모니터링 설정 시 "Accessible only as active check" 에러 해결 방법 (0) | 2024.10.15 |
Monitoring Tools - Zabbix Agent 모드 비교와 호스트 자동 등록 설정 (4) | 2024.10.03 |
Monitoring Tools - Zabbix UserParameter를 이용한 금액 모니터링 (0) | 2024.10.03 |