19장. Cryostat를 사용하여 클러스터 모니터링
메트릭을 수집하는 것은 Kafka 배포의 상태 및 성능을 이해하는 데 중요합니다. 메트릭을 모니터링하면 중요 상태가 되기 전에 문제를 적극적으로 식별하고 리소스 할당 및 용량 계획에 대한 정보에 입각한 결정을 내릴 수 있습니다. 메트릭이 없으면 Kafka 배포의 동작에 대한 가시성이 제한되어 문제 해결을 더 어렵고 시간이 많이 소요될 수 있습니다. 메트릭을 설정하면 장기적으로 시간과 리소스를 절약할 수 있으며 Kafka 배포의 안정성을 보장하는 데 도움이 됩니다.
Kafka 구성 요소는 메트릭을 통해 관리 정보를 공유하는 JMX(Java Management Extensions)를 사용합니다. 이러한 메트릭은 Kafka 클러스터의 성능 및 전반적인 상태를 모니터링하는 데 중요합니다. 다른 많은 Java 애플리케이션과 마찬가지로 Kafka는 Managed Cryostat(MBean)를 사용하여 모니터링 툴 및 대시보드에 지표 데이터를 제공합니다. Cryostat는 JVM 수준에서 작동하므로 외부 툴이 Kafka 구성 요소에서 관리 정보를 연결하고 검색할 수 있습니다. JVM에 연결하려면 이러한 툴은 일반적으로 동일한 시스템과 기본적으로 동일한 사용자 권한으로 실행해야 합니다.
19.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
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=falseCopy to Clipboard Copied! Toggle word wrap Toggle overflow <port>를 Kafka 구성 요소가 Cryostat 연결을 수신 대기할 포트 이름으로 바꿉니다.
org.apache.kafka.common.metrics.JmxReporter를server.properties파일의metric.reporters에 추가합니다.metric.reporters=org.apache.kafka.common.metrics.JmxReporter
metric.reporters=org.apache.kafka.common.metrics.JmxReporterCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
브로커의 경우
bin/kafka-server-start.sh또는 Kafka Connect용bin/connect-distributed.sh와 같은 적절한 스크립트를 사용하여 Kafka 구성 요소를 시작합니다.
원격 Cryostat 연결을 보호하도록 인증 및 SSL을 구성하는 것이 좋습니다. 이 작업을 수행하는 데 필요한 시스템 속성에 대한 자세한 내용은 Oracle 설명서 를 참조하십시오.