摘要:摘要用到的工具,本文大量使用了来启动各个应用。,负责抓取存储指标信息,并提供查询功能。,负责数据可视化。,提供中和相关的。先讲一下大致步骤利用,在进程内启动一个小型的配置抓取那个提供的。第三步配置启动访问,使用登录。
原文地址
本文所提到的脚本可以在这里下载。
摘要用到的工具:
Docker,本文大量使用了Docker来启动各个应用。
Prometheus,负责抓取/存储指标信息,并提供查询功能。
Grafana,负责数据可视化。
JMX exporter,提供JMX中和JVM相关的metrics。
Tomcat,用来模拟一个Java应用。
先讲一下大致步骤:
利用JMX exporter,在Java进程内启动一个小型的Http server
配置Prometheus抓取那个Http server提供的metrics。
配置Grafana连接Prometheus,配置Dashboard。
第一步:启动几个Java应用1) 新建一个目录,名字叫做prom-jvm-demo。
2) 下载JMX exporter到这个目录
3) 新建一个文件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
4) 运行以下命令启动3个Tomcat,记得把
docker run -d --name tomcat-1 -v:/jmx-exporter -e CATALINA_OPTS="-Xms64m -Xmx128m -javaagent:/jmx-exporter/jmx_prometheus_javaagent-0.3.1.jar=6060:/jmx-exporter/simple-config.yml" -p 6060:6060 -p 8080:8080 tomcat:8.5-alpine docker run -d --name tomcat-2 -v :/jmx-exporter -e CATALINA_OPTS="-Xms64m -Xmx128m -javaagent:/jmx-exporter/jmx_prometheus_javaagent-0.3.1.jar=6060:/jmx-exporter/simple-config.yml" -p 6061:6060 -p 8081:8080 tomcat:8.5-alpine docker run -d --name tomcat-3 -v :/jmx-exporter -e CATALINA_OPTS="-Xms64m -Xmx128m -javaagent:/jmx-exporter/jmx_prometheus_javaagent-0.3.1.jar=6060:/jmx-exporter/simple-config.yml" -p 6062:6060 -p 8082:8080 tomcat:8.5-alpine
5) 访问http://localhost:8080|8081|8082看看Tomcat是否启动成功。
6) 访问对应的http://localhost:6060|6061|6062看看JMX exporter提供的metrics。
备注:这里提供的simple-config.yml仅仅提供了JVM的信息,更复杂的配置请参考JMX exporter文档。
第二步:启动Prometheus1) 在之前新建目录prom-jvm-demo,新建一个文件prom-jmx.yml,内容如下:
scrape_configs: - job_name: "java" scrape_interval: 30s static_configs: - targets: - ":6060" - " :6061" - " :6062"
2) 启动Prometheus:
docker run -d --name=prometheus -p 9090:9090 -v:/prometheus-config prom/prometheus --config.file=/prometheus-config/prom-jmx.yml
3) 访问http://localhost:9090看看Prometheus是否启动成功,在输入框里输入jvm_info然后执行,应该可以看到如下图的结果:
如果没有看到三个instance,那么等一会儿再试。
第三步:配置Grafana1) 启动Grafana:
docker run -d --name=grafana -p 3000:3000 grafana/grafana
2) 访问http://localhost:3000,使用admin/admin登录。
3) 添加Prometheus数据源,如下图所示到添加数据源页面:
4) 配置数据源信息:
Name:随便取
Type:Prometheus
URL:http://
其余不要设置,点击Save & Test,应该会返回成功结果
5) 导入Dashboard。我们不需要重头自己做Dashboard,用现成的就行,按下图所示进入导入页面
6) 使用我制作的JVM Dashboard,页面右侧出现的ID号是8563,记住这个号,填在如下图所示的位置:
7) 然后鼠标点击别处稍等一下,出现下图,选择一下数据源就可以了
8) 最后打开刚刚导入的Dashboard,如下图:
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/71848.html
摘要:,负责抓取存储指标信息,并提供查询功能,本文重点使用它的告警功能。,负责将告警通知给相关人员。配置的告警触发规则使用超过最大上限的机时间超过秒分钟分钟时间在最近分钟里超过配置连接,配置。 原文地址 在前一篇文章中提到了如何使用Prometheus+Grafana来监控JVM。本文介绍如何使用Prometheus+Alertmanager来对JVM的某些情况作出告警。 本文所提到的脚本可...
摘要:由发明,适合于监控基于容器的基础架构。有关其数据聚合的功能可以阅读数据聚合分组新一代系统监控的核心功能。所抓取的性能指标算是较为全面,部署和展现方式都是相当简单易懂的。 如今,越来越多的公司开始使用 Docker 了,2 / 3 的公司在尝试了 Docker 后最终使用了它。为了能够更精确的分配每个容器能使用的资源,我们想要实时获取容器运行时使用资源的情况,怎样对 Docker 上的应...
摘要:其他监控类服务管理其他监控类服务管理其他监控类服务管理其他监控类服务还包括等,对这些监控服务的管理方式,均与本篇指南中服务管理的管理方式类似,此处不再过多赘述。 监控类服务管理本篇目录Prometheus服务管理Grafana服务管理其他监控类服务管理在USDP1.0.0.0版本中,集群监控类服务组件主要有AlterManager、Grafana、InfluxDB、NodeExporter、...
摘要:在和未普及之前,要实现的搭建确实要费一番工夫的,不过现在则很简单就可以实现的监控了。下载镜像使用方式下载极为方便,只需要执行如下命令即可,当然前提是需要安装了。 一、背景 对于LNMP环境下的开发者来说,mysql是非常重要的一环,同时mysql的性能监控也是开发者所需要关注的一环;如果大家使用阿里云的RDS会感觉到其监控功能非常好用,但如果开发者使用的是自建数据库,该怎么去搭建则需则...
摘要:二可视化是一个开源的图表可视化系统,简单说图表配置比较方便生成的图表比较漂亮。 一. 概述 Prometheus自带了一个web服务,包括一个默认的dashboard,可以使用表达式查询并进行图表可视化,默认服务的地址为:http://prometheus_ip:9090 如下图: showImg(https://segmentfault.com/img/remote/14600000...
阅读 3376·2021-11-22 13:53
阅读 3411·2021-10-11 11:11
阅读 932·2019-08-30 14:12
阅读 1222·2019-08-29 17:16
阅读 640·2019-08-29 16:45
阅读 3349·2019-08-29 12:56
阅读 670·2019-08-28 17:55
阅读 2065·2019-08-26 13:24