소스 설정

Zabbix v7.4번역일: 2026-08-20원본 보기

개요

소스에서 설치한 경우, 다음 정보가 Zabbix Java gateway 설정에 도움이 됩니다.

파일 개요

소스에서 Java gateway를 받았다면 $PREFIX/sbin/zabbix_java 아래에 셸 스크립트, JAR 및 설정 파일 모음이 생성되었을 것입니다. 이 파일들의 역할은 아래에 정리되어 있습니다.

bin/zabbix-java-gateway-$VERSION.jar

Java gateway JAR 파일 자체입니다.

lib/logback-core-1.5.16.jar
lib/logback-classic-1.5.16.jar
lib/slf4j-api-2.0.16.jar
lib/android-json-4.3_r3.1.jar

Java gateway의 의존성: Logback, SLF4J, Android JSON 라이브러리.

lib/logback.xml
lib/logback-console.xml

Logback용 설정 파일입니다.

shutdown.sh
startup.sh

Java gateway를 시작하고 중지하기 위한 편의 스크립트입니다.

settings.sh

위의 시작 및 종료 스크립트에서 source로 불러오는 설정 파일입니다.

Java gateway 설정 및 실행

기본적으로 Java gateway는 10052 포트에서 수신 대기합니다. Java gateway를 다른 포트에서 실행하려면 settings.sh 스크립트에서 지정할 수 있습니다. 이 옵션과 기타 옵션을 지정하는 방법은 Java gateway 설정 파일 설명을 참조하세요.

10052 포트는 IANA에 등록되어 있지 않습니다.

설정이 마무리되면 startup.sh 스크립트를 실행해 Java gateway를 시작할 수 있습니다:

./startup.sh

마찬가지로 Java gateway가 더 이상 필요하지 않으면 shutdown.sh 스크립트를 실행해 중지합니다:

./shutdown.sh

서버나 프록시와 달리 Java gateway는 가볍고 데이터베이스가 필요하지 않다는 점에 유의하세요.

Java gateway 사용을 위한 서버 설정

Java gateway가 실행되고 나면 Zabbix 서버에 Zabbix Java gateway의 위치를 알려주어야 합니다. 이는 서버 설정 파일에서 JavaGateway 및 JavaGatewayPort 파라미터를 지정해 수행합니다. JMX 애플리케이션이 실행되는 호스트를 Zabbix 프록시가 모니터링하는 경우에는 대신 프록시 설정 파일에서 연결 파라미터를 지정합니다.

JavaGateway=192.168.3.14
JavaGatewayPort=10052

기본적으로 서버는 JMX 모니터링과 관련된 프로세스를 시작하지 않습니다. 이를 사용하려면 미리 포크된 Java poller 인스턴스 수를 지정해야 합니다. 일반 poller 및 trapper를 지정하는 방식과 동일하게 지정합니다.

StartJavaPollers=5

설정을 마친 후에는 서버나 프록시를 재시작하는 것을 잊지 마세요.

Java gateway 디버깅

Java gateway에 문제가 있거나 프론트엔드에서 아이템에 대해 표시되는 오류 메시지가 충분히 설명적이지 않은 경우, Java gateway 로그 파일을 살펴보는 것이 좋습니다.

기본적으로 Java gateway는 활동 내역을 로그 레벨 "info"로 /tmp/zabbix_java.log 파일에 기록합니다. 때로는 그 정보만으로 충분하지 않아 로그 레벨 "debug"의 정보가 필요할 수 있습니다. 로깅 레벨을 높이려면 lib/logback.xml 파일을 수정해 <root> 태그의 level 속성을 debug로 변경하세요:

<root level="debug">
  <appender-ref ref="FILE" />
</root>

Zabbix 서버나 Zabbix 프록시와 달리 logback.xml 파일을 변경한 후 Zabbix Java gateway를 재시작할 필요가 없습니다. logback.xml의 변경 사항은 자동으로 반영됩니다. 디버깅이 끝나면 로깅 레벨을 "info"로 되돌릴 수 있습니다.

다른 파일이나 데이터베이스와 같이 완전히 다른 매체에 로그를 남기려면 필요에 맞게 logback.xml 파일을 조정하세요. 자세한 내용은 Logback 매뉴얼을 참조하세요.

디버깅 목적으로 Java gateway를 데몬이 아닌 콘솔 애플리케이션으로 시작하는 것이 유용할 때가 있습니다. 그렇게 하려면 settings.sh에서 PID_FILE 변수를 주석 처리하세요. PID_FILE이 생략되면 startup.sh 스크립트는 Java gateway를 콘솔 애플리케이션으로 시작하고 Logback이 대신 lib/logback-console.xml 파일을 사용하도록 하는데, 이 파일은 콘솔에 로그를 남길 뿐 아니라 로깅 레벨 "debug"도 활성화되어 있습니다.

마지막으로, Java gateway는 로깅에 SLF4J를 사용하므로 lib 디렉터리에 적절한 JAR 파일을 두면 Logback을 원하는 프레임워크로 교체할 수 있습니다. 자세한 내용은 SLF4J 매뉴얼을 참조하세요.

JMX 모니터링

자세한 내용은 JMX 모니터링 페이지를 참조하세요.