문서
원본 보기1 프록시
개요
Zabbix 프록시는 Zabbix 서버를 대신하여 성능 및 가용성 데이터를 수집할 수 있습니다. 이를 통해 프록시는 데이터 수집 부하의 일부를 담당하여 Zabbix 서버의 부담을 덜어줄 수 있습니다.
또한 프록시를 사용하는 것은 중앙 집중식 및 분산 모니터링을 구현하는 가장 쉬운 방법입니다. 모든 에이전트와 프록시가 하나의 Zabbix 서버에 보고하고 모든 데이터가 중앙에서 수집됩니다.
Zabbix 프록시는 다음과 같은 용도로 사용할 수 있습니다:
- 원격 위치 모니터링
- 신뢰할 수 없는 통신을 가진 위치 모니터링
- 수천 개의 장치를 모니터링할 때 Zabbix 서버 부하 경감
- 분산 모니터링 유지 관리 간소화

프록시는 Zabbix 서버에 대해 하나의 TCP 연결만 필요합니다. 이를 통해 하나의 방화벽 규칙만 구성하면 되므로 방화벽을 우회하기가 더 쉽습니다.
Zabbix 프록시는 별도의 데이터베이스를 사용해야 합니다. Zabbix 서버 데이터베이스를 가리키면 구성이 손상됩니다.
프록시에서 수집한 모든 데이터는 서버로 전송하기 전에 로컬에 저장됩니다. 이를 통해 서버와의 일시적인 통신 문제로 인해 데이터가 손실되지 않습니다. 프록시 구성 파일의 ProxyLocalBuffer 및 ProxyOfflineBuffer 매개변수가 데이터를 로컬에 보관하는 기간을 제어합니다.
Zabbix 서버 데이터베이스에서 직접 최신 구성 변경 사항을 받는 프록시가 CacheUpdateFrequency 값으로 인해 구성이 빠르게 업데이트되지 않을 수 있는 Zabbix 서버보다 더 최신 구성을 가질 수 있습니다. 결과적으로 프록시가 데이터 수집을 시작하여 Zabbix 서버로 전송하지만 서버가 이러한 데이터를 무시할 수 있습니다.
Zabbix 프록시는 데이터 수집기입니다. 트리거를 계산하거나 이벤트를 처리하거나 알림을 보내지 않습니다. 프록시 기능의 개요를 보려면 다음 표를 참조하세요:
| 기능 | 프록시에서 지원 | |
|---|---|---|
| 아이템 | ||
| Zabbix 에이전트 검사 | 예 | |
| Zabbix 에이전트 검사 (액티브) | 예 1 | |
| 단순 검사 | 예 | |
| 트래퍼 아이템 | 예 | |
| SNMP 검사 | 예 | |
| SNMP 트랩 | 예 | |
| IPMI 검사 | 예 | |
| JMX 검사 | 예 | |
| 로그 파일 모니터링 | 예 | |
| 내부 검사 | 예 | |
| SSH 검사 | 예 | |
| Telnet 검사 | 예 | |
| 외부 검사 | 예 | |
| 종속 아이템 | 예 | |
| 스크립트 아이템 | 예 | |
| 브라우저 아이템 | 예 | |
| 내장 웹 모니터링 | 예 | |
| 아이템 값 전처리 | 예 | |
| 네트워크 검색 | 예 | |
| 액티브 에이전트 자동 등록 | 예 | |
| 저수준 검색 | 예 2 | |
| 원격 명령 | 예 | |
| 트리거 계산 | 아니오 | |
| 이벤트 처리 | 아니오 | |
| 이벤트 상관관계 | 아니오 | |
| 알림 전송 | 아니오 | |
[1] 에이전트가 액티브 검사를 위해 (서버가 아닌) 프록시에 요청하도록 하려면 에이전트 구성 파일의 ServerActive 매개변수에 프록시가 나열되어야 합니다.
[2] LLD의 경우 Zabbix 프록시는 데이터를 수집하고 전처리한 다음 추가 처리를 위해 Zabbix 서버로 전송하기만 합니다.
과부하 방지
Zabbix 서버가 일정 시간 동안 다운되어 프록시들이 많은 데이터를 수집한 후 서버가 시작되면, 서버가 과부하될 수 있습니다(히스토리 캐시 사용률이 일정 시간 동안 95-100%에 머물 수 있습니다). 이러한 과부하는 검사가 예상보다 느리게 처리되는 성능 저하를 야기할 수 있습니다. 히스토리 캐시 과부하로 인해 발생하는 문제를 방지하기 위해 이 시나리오로부터의 보호 기능이 구현되었습니다.
Zabbix 서버 히스토리 캐시가 가득 찰 때 히스토리 캐시 쓰기 접근이 제한되어 서버 데이터 수집 프로세스가 중단됩니다. 가장 일반적인 히스토리 캐시 과부하 경우는 서버 다운타임 후 프록시들이 수집된 데이터를 업로드할 때입니다. 이를 방지하기 위해 프록시 제한 기능이 추가되었습니다(현재 비활성화할 수 없습니다).
Zabbix 서버는 히스토리 캐시 사용률이 80%에 도달하면 프록시로부터 데이터 수신을 중단합니다. 대신 해당 프록시들은 제한 목록에 추가됩니다. 이는 캐시 사용률이 60%로 떨어질 때까지 계속됩니다. 그 후 서버는 제한 목록에 정의된 순서에 따라 프록시들로부터 데이터를 하나씩 수신하기 시작합니다. 이는 제한 기간 동안 데이터 업로드를 시도한 첫 번째 프록시가 먼저 서비스되고, 해당 프록시의 작업이 완료될 때까지 서버는 다른 프록시들로부터 데이터를 수신하지 않는다는 것을 의미합니다.
이 제한 모드는 캐시 사용률이 다시 80%에 도달하거나 20%로 떨어지거나 제한 목록이 비워질 때까지 계속됩니다. 첫 번째 경우에는 서버가 프록시 데이터 수신을 다시 중단합니다. 다른 두 경우에는 서버가 정상적으로 작동하기 시작하여 모든 프록시로부터 데이터를 수신합니다.
위의 정보는 다음 표로 설명할 수 있습니다:
| 히스토리 쓰기 캐시 사용률 |
Zabbix 서버 모드 | Zabbix 서버 동작 |
|---|---|---|
| 80% 도달 | 대기 | 프록시 데이터 수신을 중단하지만 제한 목록(나중에 연락할 프록시들의 우선순위 목록)을 유지합니다. |
| 60%로 감소 | 제한됨 | 제한 목록 처리를 시작하지만 여전히 프록시 데이터는 수신하지 않습니다. |
| 20%로 감소 | 정상 | 제한 목록을 삭제하고 프록시 데이터를 정상적으로 수신하기 시작합니다. |
zabbix[wcache,history,pused] 내부 아이템을 사용하여 Zabbix 서버의 이러한 동작을 메트릭과 연관시킬 수 있습니다.
설정
프록시를 설치하고 구성했다면, 이제 Zabbix 프론트엔드에서 설정할 차례입니다.
프록시 추가
Zabbix 프론트엔드에서 프록시를 구성하려면:
- 이동: 관리 → 프록시
- 프록시 생성 클릭

| 매개변수 | 설명 | |
|---|---|---|
| 프록시 이름 | 프록시 이름을 입력하세요. 프록시 구성 파일의 Hostname 매개변수와 동일한 이름이어야 합니다. | |
| 프록시 그룹 | 프록시 부하 분산/고가용성을 위한 프록시 그룹을 하나 선택하세요. | |
| 액티브 에이전트용 주소 | 모니터링되는 액티브 에이전트나 센더가 연결해야 하는 주소를 입력하세요. Zabbix 7.0 이상 에이전트에서만 지원됩니다. 이 주소는 액티브 및 패시브 프록시 모두에 연결하는 데 사용됩니다. 이 필드는 프록시 그룹 필드에서 프록시 그룹이 선택된 경우에만 표시됩니다. |
|
| 주소 | 연결할 IP 주소/DNS 이름. | |
| 포트 | 연결할 TCP 포트 번호(기본값 10051). 사용자 매크로가 지원됩니다. | |
| 프록시 모드 | 프록시 모드를 선택하세요. 액티브 - 프록시가 Zabbix 서버에 연결하여 구성 데이터를 요청합니다 패시브 - Zabbix 서버가 프록시에 연결합니다 참고: 암호화된 통신이 없으면 액티브 프록시를 사용할 때 Zabbix 서버 트래퍼 포트에 액세스할 수 있는 당사자가 (민감한) 프록시 구성 데이터를 사용할 수 있게 될 수 있습니다. 이는 인증이 수행되지 않거나 프록시 주소 필드에서 프록시 주소가 제한되지 않은 경우 누구든지 액티브 프록시인 것처럼 가장하여 구성 데이터를 요청할 수 있기 때문에 가능합니다. |
|
| 프록시 주소 | 지정된 경우 액티브 프록시 요청은 쉼표로 구분된 IP 주소 목록(선택적으로 CIDR 표기법 사용) 또는 액티브 Zabbix 프록시의 DNS 이름에서만 허용됩니다. 이 필드는 프록시 모드 필드에서 액티브 프록시가 선택된 경우에만 표시됩니다. 매크로는 지원되지 않습니다. |
|
| 인터페이스 | 패시브 프록시의 인터페이스 세부 정보를 입력하세요. 이 필드는 프록시 모드 필드에서 패시브 프록시가 선택된 경우에만 표시됩니다. |
|
| 주소 | 패시브 프록시의 IP 주소/DNS 이름. | |
| 포트 | 패시브 프록시의 TCP 포트 번호(기본값 10051). 사용자 매크로가 지원됩니다. | |
| 설명 | 프록시 설명을 입력하세요. | |
암호화 탭을 사용하면 프록시와의 암호화된 연결을 요구할 수 있습니다.
| 매개변수 | 설명 |
|---|---|
| 프록시로의 연결 | 서버가 패시브 프록시에 연결하는 방법: 암호화 없음(기본값), PSK(사전 공유 키) 사용 또는 인증서 사용. |
| 프록시로부터의 연결 | 액티브 프록시에서 허용되는 연결 유형을 선택하세요. 여러 연결 유형을 동시에 선택할 수 있습니다(테스트 및 다른 연결 유형으로 전환하는 데 유용). 기본값은 "암호화 없음"입니다. |
| 발행자 | 인증서의 허용된 발행자. 인증서는 먼저 CA(인증 기관)로 유효성을 검사합니다. 유효하고 CA에서 서명된 경우 발행자 필드를 사용하여 허용되는 CA를 추가로 제한할 수 있습니다. 이 필드는 선택사항이며 Zabbix 설치에서 여러 CA의 인증서를 사용하는 경우 사용하도록 의도되었습니다. |
| 주제 | 인증서의 허용된 주제. 인증서는 먼저 CA로 유효성을 검사합니다. 유효하고 CA에서 서명된 경우 주제 필드를 사용하여 주제 문자열의 하나의 값만 허용할 수 있습니다. 이 필드가 비어 있으면 구성된 CA에서 서명한 유효한 인증서는 모두 허용됩니다. |
| PSK 식별자 | 사전 공유 키 식별자 문자열. PSK 식별자에는 민감한 정보를 넣지 마세요. 수신자에게 어떤 PSK를 사용할지 알려주기 위해 네트워크를 통해 암호화되지 않은 상태로 전송됩니다. |
| PSK | 사전 공유 키(16진수 문자열). 최대 길이: Zabbix가 GnuTLS 또는 OpenSSL 라이브러리를 사용하는 경우 512개 16진수 자리수(256바이트 PSK), Zabbix가 mbed TLS(PolarSSL) 라이브러리를 사용하는 경우 64개 16진수 자리수(32바이트 PSK). 예: 1f87b595725ac58dd977beef14b97461a7c1045b9a1c963065002c5473194952 |
타임아웃 탭을 사용하면 이를 지원하는 아이템 유형의 전역 타임아웃을 재정의할 수 있습니다.

| 매개변수 | 설명 |
|---|---|
| 아이템 유형별 타임아웃 | 타임아웃 옵션을 선택하세요: 전역 - 전역 타임아웃이 사용됩니다(각 아이템 유형의 회색으로 표시된 타임아웃 필드에 표시됨); 재정의 - 사용자 정의 타임아웃이 사용됩니다(각 아이템 유형의 타임아웃 필드에서 설정). 허용 범위: 1 - 600초(기본값: 전역 타임아웃에서 상속). 시간 접미사(예: 30s, 1m) 및 사용자 매크로가 지원됩니다. 전역 타임아웃 링크를 클릭하면 전역 타임아웃을 구성할 수 있습니다. 전역 타임아웃 링크는 관리 → 일반 프론트엔드 섹션에 대한 권한이 있는 수퍼 관리자 유형의 사용자에게만 표시됩니다. 지원되는 아이템 유형: - Zabbix 에이전트(패시브 및 액티브 검사 모두) - 단순 검사( icmpping*, vmware.* 아이템 제외)- SNMP 에이전트(SNMP walk[OID] 및 get[OID] 아이템만)- 외부 검사 - 데이터베이스 모니터 - HTTP 에이전트 - SSH 에이전트 - TELNET 에이전트 - 스크립트 - 브라우저 재정의에서 설정된 타임아웃은 전역 타임아웃보다 우선하지만 아이템 구성에서 개별 아이템 타임아웃이 설정된 경우 개별 아이템 타임아웃에 의해 재정의됩니다. |
프록시 주요 버전이 서버 주요 버전과 일치하지 않으면
아이콘이
아이템 유형별 타임아웃 옆에 표시되며, 호버 메시지로
"프록시와 서버 버전이 일치하지 않아 타임아웃이 비활성화되었습니다"가 표시됩니다.
이러한 경우 프록시는 프록시 구성 파일의 Timeout 매개변수를 사용합니다.
기존 프록시의 편집 양식에는 다음과 같은 추가 버튼이 있습니다:
- 구성 새로 고침 - 프록시 구성 새로 고침
- 복제 - 기존 프록시의 속성을 기반으로 새 프록시 생성
- 삭제 - 프록시 삭제
호스트 구성
모니터링 대상 필드를 사용하여 호스트 구성 양식에서 개별 호스트가 프록시 또는 프록시 그룹에 의해 모니터링되도록 지정할 수 있습니다.

호스트 일괄 업데이트는 호스트가 프록시 또는 프록시 그룹에 의해 모니터링되도록 지정하는 또 다른 방법입니다.