1-1. jmx-exporter 파일 설치
github에서 jmx exporter jar 파일(jmx_prometheus_javaagent.jar) 및 컴포넌트별 설정 파일(${component}.yml)을 다운로드하고, 각 파일들을 컴포넌트 서버에 위치시킵니다.
**$ git clone <https://github.com/confluentinc/jmx-monitoring-stacks.git>
$ cd jmx-monitoring-stacks/shared-assets/jmx-exporter**
**$ ll**
total 1080
-rw-rw-r--. 1 confluent confluent 5921 Jun 29 11:08 confluent_ksql.yml
-rw-rw-r--. 1 confluent confluent 1654 Jun 29 11:08 confluent_rest.yml
-rw-rw-r--. 1 confluent confluent 4582 Jun 29 11:08 confluent_schemaregistry.yml
-rw-rw-r--. 1 confluent confluent 167 Jun 29 11:08 exporter_debug_logging.properties
-rw-rw-r--. 1 confluent confluent 544974 Jun 29 11:08 jmx_prometheus_javaagent-0.18.0.jar
-rw-rw-r--. 1 confluent confluent 488803 Jun 29 11:08 jolokia-jvm-1.7.1.jar
-rw-rw-r--. 1 confluent confluent 10079 Jun 29 11:08 kafka_broker.yml
-rw-rw-r--. 1 confluent confluent 7941 Jun 29 11:08 kafka_broker_p99only.yml
-rw-rw-r--. 1 confluent confluent 1934 Jun 29 11:08 kafka_client.yml
-rw-rw-r--. 1 confluent confluent 6432 Jun 29 11:08 kafka_connect.yml
-rw-rw-r--. 1 confluent confluent 3605 Jun 29 11:08 kafka_streams.yml
-rw-rw-r--. 1 confluent confluent 3717 Jun 29 11:08 zookeeper.yml
1-2. java agent 옵션 추가
각 component 의 start script에 jmx exporter jar 파일 과 설정 파일을 자바 옵션으로 설정하여 java agent를 등록합니다. start script를 수정한 다음, 각 옵션이 정상적으로 적용되도록 각 컴포넌트 프로세스를 재기동합니다.
### generic jvm settings
KAFKA_OPTS="${KAFKA_OPTS} -D${SERVER_NAME}"
KAFKA_OPTS="${KAFKA_OPTS} -javaagent:/app/confluent/scripts/jmx_prometheus_javaagent-0.16.1.jar=1234:/app/confluent/scripts/confluent_schemaregistry.yml"
export KAFKA_OPTS
- jmx exporter를 통해 metric을 노출할 포트: 1234 로 설정, 해당 포트 관련 방화벽을 설정할 때에는 metric을 가져올 source 서버는 prometheus, metric정보를 노출할 각 component 서버(broker,zookeeper등..)가 destination 서버가 됩니다.
'자기발전소 > # Monitoring' 카테고리의 다른 글
[kafka monitoring] Prometheus 서비스 기동 (0) | 2023.11.09 |
---|