下载JDK,配置环境变量,在/etc/profile里面加入如下内容(JDK目录需要换成自己的)然后使用source /etc/profile使配置生效
export JAVA_HOME=/usr/local/java/jdk1.8.0_231
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
输入java -version即可看到JVM相关的信息,如下
如果是Redhat & Centos系的直接使用如下命令即可安装Grafana
wget https://dl.grafana.com/oss/release/grafana-6.5.2-1.x86_64.rpm
sudo yum localinstall grafana-6.5.2-1.x86_64.rpm
启动grafana
systemctl start grafana-server
设置开机自启
sudo systemctl enable grafana-server
访问ip+port即可看到(默认端口是3000,记得关闭防火墙或放行端口)
默认用户名: admin
密码: admin
登录成功之后会要求修改密码,忽略即可。
其他发行版的可以参考官网的安装教程
wget https://github.com/prometheus/prometheus/releases/download/v2.15.0-rc.0/prometheus-2.15.0-rc.0.linux-amd64.tar.gz
这里就先用来监控Tomcat吧(模拟Java应用),下载个JMX exporter(在Java进程内启动一个小型的Http server)
新建一个文件夹jmx-exporter,把刚刚下载的jar放在这个文件夹下,再在文件夹下新建一个配置文件,取名叫simple-config.yml,内容如下
---
lowercaseOutputLabelNames: true
lowercaseOutputName: true
whitelistObjectNames: ["java.lang:type=OperatingSystem"]
rules:
- pattern: 'java.lang<>((?!process_cpu_time)\w+):'
name: os_$1
type: GAUGE
attrNameSnakeCase: true
在Tomcat根目录的bin文件夹下修改catalina.sh,就在#!/bin/sh下添加一行即可(换成自己的jar文件位置和yml文件位置)
JAVA_OPTS="-Xms64m -Xmx128m -javaagent:/root/jmx-exporter/jmx_prometheus_javaagent-0.3.1.jar=6060:/root/jmx-exporter/simple-config.yml"
启动Tomcat
./startup.sh
准备Prometheus的配置文件,文件内容如下,文件名为prom-jmx.yml
scrape_configs:
- job_name: 'java'
scrape_interval: 30s
static_configs:
- targets:
- '127.0.0.1:6060'
- '127.0.0.1:6061'
启动Prometheus(同样也需要换成自己的yml文件位置)
./prometheus --config.file=../prom-jmx.yml
启动成功之后访问9090端口即可,然后在输入框里输入jvm_info,然后执行,看到如下界面就说明OK了
登录成功之后点击
添加已经制作好的DashBoard,也可以输入ID 8563,感谢作者chanjarster
怎么还是不能点个Import 按钮呢,我猜测可能有个bug,需要进行如下操作即可正常Import
成功Import之后即可看到如下界面
参考文章 使用Prometheus+Grafana监控JVM