20장. Cryostat를 사용하여 클러스터 모니터링
메트릭을 수집하는 것은 Kafka 배포의 상태 및 성능을 이해하는 데 중요합니다. 메트릭을 모니터링하면 중요 상태가 되기 전에 문제를 적극적으로 식별하고 리소스 할당 및 용량 계획에 대한 정보에 입각한 결정을 내릴 수 있습니다. 메트릭이 없으면 Kafka 배포의 동작에 대한 가시성이 제한되어 문제 해결을 더 어렵고 시간이 많이 소요될 수 있습니다. 메트릭을 설정하면 장기적으로 시간과 리소스를 절약할 수 있으며 Kafka 배포의 안정성을 보장하는 데 도움이 됩니다.
Kafka 브로커, Zoo Cryostat, Kafka Connect 및 Kafka 클라이언트는 JMX(Java Management Extensions)를 사용하여 관리 정보를 적극적으로 노출합니다. 이 정보는 주로 Kafka 클러스터의 성능 및 상태를 모니터링하는 데 도움이 되는 지표로 구성됩니다. 다른 Java 애플리케이션과 마찬가지로 Kafka는 관리형 빈 또는 Cryostat를 사용하여 툴 및 대시보드에 이 정보를 제공합니다.
Cryostat는 JVM 수준에서 작동하므로 외부 툴이 Zoo Cryostat, Kafka 브로커 등에서 관리 정보를 연결하고 검색할 수 있습니다. JVM에 연결하려면 이러한 툴은 기본적으로 동일한 시스템 및 동일한 사용자에서 실행되어야 합니다.
20.1. Cryostat 에이전트 활성화
JVM 시스템 속성을 사용하여 Kafka 구성 요소의 Cryostat 모니터링을 활성화합니다. KAFKA_JMX_OPTS
환경 변수를 사용하여 Cryostat 모니터링을 활성화하는 데 필요한 Cryostat 시스템 속성을 설정합니다. Kafka 구성 요소를 실행하는 스크립트는 이러한 속성을 사용합니다.
프로세스
KAFKA_JMX_OPTS
환경 변수를 Cryostat 모니터링을 활성화하기 위해 속성으로 설정합니다.export KAFKA_JMX_OPTS=-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=<port> -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
<port>를 Kafka 구성 요소가 Cryostat 연결을 수신 대기할 포트 이름으로 바꿉니다.
org.apache.kafka.common.metrics.JmxReporter
를server.properties
파일의metric.reporters
에 추가합니다.metric.reporters=org.apache.kafka.common.metrics.JmxReporter
-
브로커의 경우
bin/kafka-server-start.sh
또는 Kafka Connect용bin/connect-distributed.sh
와 같은 적절한 스크립트를 사용하여 Kafka 구성 요소를 시작합니다.
원격 Cryostat 연결을 보호하도록 인증 및 SSL을 구성하는 것이 좋습니다. 이 작업을 수행하는 데 필요한 시스템 속성에 대한 자세한 내용은 Oracle 설명서 를 참조하십시오.