Open Source

[ Prometheus ] Install jmx_exporter on Amazon Linux 2

Pydole 2022. 3. 5. 01:20

 

- 운영체제 : Amazon Linux2

 


 

1. jmx_prometheus_javaagent-0.16.1.jar 다운로드 및 config (openJDK 1.8이고, 현재버전은 0.16.1)

 

https://github.com/prometheus/jmx_exporter

 

GitHub - prometheus/jmx_exporter: A process for exposing JMX Beans via HTTP for Prometheus consumption

A process for exposing JMX Beans via HTTP for Prometheus consumption - GitHub - prometheus/jmx_exporter: A process for exposing JMX Beans via HTTP for Prometheus consumption

github.com

 

# jmx_prometheus_javaagent 다운로드

$ mkdir jmx_exporter
$ cd jmx_exporter
$ wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.16.1/jmx_prometheus_javaagent-0.16.1.jar




# config.yaml 만들기 (jar 파일과 같은 위치)

$ vim config.yaml


---
startDelaySeconds: 0
ssl: false
lowercaseOutputName: false
lowercaseOutputLabelNames: false




# 파일확인

$ ls -s
total 464
  4 config.yaml  460 jmx_prometheus_javaagent-0.16.1.jar

 

 

 

2. 환경설정 및 Tomcat 기동

 

# tomcat 폴더의 bin 폴더로 이동. 옵션관리를 위해서 setenv.sh 파일을 이용
# 파일경로 : /home/username/jmx_exporter/    # 경로는 알맞게 조정
# 포트 : 8081                                # 포트는 알맞게 조정 굳이 8081 필요는 없음

$ vim setenv.sh

CATALINA_OPTS="$CATALINA_OPTS -javaagent:/home/username/jmx_exporter/jmx_prometheus_javaagent-0.16.1.jar=8081:/home/username/jmx_exporter/config.yaml"

 

$ ./catalina.sh start

Using CATALINA_OPTS:    -javaagent:  ...  옵션이 정상으로 뜨는지 확인

 

 

 

3. Prometheus.yml 추가 및 재기동

 

# vim /etc/prometheus/prometheus.yml
  
  
  ....
  ....
  
  - job_name: 'jmx_exporter'
    static_configs:
      - targets: ['x.x.x.x:8081']
      


# systemctl restart prometheus.service

 

 

4. 정상동작 확인