prometheus监控java应用的jvm指标
在k8s环境中我们有很多的java应用,需要监控其性能我们可以通过集成jmx的客户端,然后通过promethues的自动发现来实现监控数据的获取。
promethues的部署he相关配置可参考:promethues部署
准备jmx的客户端和配置文件
jmx_prometheus_javaagent-0.17.2.jar(版本自定义,可以直接打包到镜像里)
使用configmap挂载jmx-config.yamlapiVersion: v1
kind: ConfigMap
metadata:name: prometheus-jmx-confignamespace: monitor
data:prometheus-jmx-config.yaml: |lowercaseOutputLabelNames: truelowercaseOutputName: truewhitelistObjectNames: ["java.lang:type=OperatingSystem"]blacklistObjectNames: []rules:- pattern: 'java.lang<type=OperatingSystem><>(committed_virtual_memory|free_physical_memory|free_swap_space|total_physical_memory|total_swap_space)_size:'name: os_$1_bytestype: GAUGEattrNameSnakeCase: true- pattern: 'java.lang<type=OperatingSystem><>((?!process_cpu_time)\w+):'name: os_$1type: GAUGEattrNameSnakeCase: true
部署应用(tomcat为例)
apiVersion: apps/v1
kind: Deployment
metadata:name: tomcatnamespace: monitor
spec:replicas: 2selector:matchLabels:app: tomcattemplate:metadata:labels:app: tomcatspec:containers:- name: tomcatimage: tomcat:jdk8-openjdk-slimenv:- name: JAVA_OPTSvalue: "-javaagent:/jmx_prometheus_javaagent-0.17.2.jar=8088:/jmx/jmx-config.yaml" **# (添加的启动命令参数)**resources:requests:cpu: 300mmemory: 512Milimits:cpu: 500mmemory: 1024MivolumeMounts:- mountPath: "/jmx_prometheus_javaagent-0.17.2.jar" **#(将客户端挂载到容器)**name: jmx-prometheus-javaagent- mountPath: "/jmx"name: prometheus-jmx-config **#(通过configmap挂载配置文件)**volumes:- name: jmx-prometheus-javaagenthostPath:path: /data/k8s_yaml/jvm/jmx_prometheus_javaagent-0.17.2.jar **# (使用的是挂在本地路径)**- configMap: name: prometheus-jmx-configname: prometheus-jmx-confignodeSelector:kubernetes.io/hostname: 10.1.40.121
服务的service
apiVersion: v1
kind: Service
metadata:name: tomcatnamespace: monitorlabels:app: tomcatannotations:prometheus.io/port: "8088" **#(jmx监听的端口)**prometheus.io/jvm: "true"
spec:type: NodePortselector:app: tomcatports:- name: httpport: 8080protocol: TCP- name: jmx-metricsport: 8088protocol: TCP
prometheus监控java应用的jvm指标相关推荐
- prometheus监控java项目(jvm等):k8s外、k8s内
前言 虽然可以使用jvisualvm之类的工具监控java项目,但是集群环境下,还是捉襟见肘,下面介绍如何用主流的prometheus来监控java项目. java项目配置 在pom.xml中添加依赖 ...
- 监控工具—Prometheus—监控Java程序
原文作者:青蛙小白 原文地址:Prometheus监控实践:使用Prometheus监控Java应用 目录 1.Prometheus JVM Client 2.Prometheus的服务发现 3.Gr ...
- Prometheus 监控 Java 应用
Prometheus 监控 Java 应用 Prometheus 监控 Java 应用有两种方式:一种是使用官方提供的jar包,然后嵌入到应用中.这种方式一般都是新项目.我认为也是最合适的一种.不过这 ...
- prometheus监控java程序
可参考链接,需找开发商量jmx端口暴露方式 https://www.jianshu.com/p/8a5e681b18ce 或者 http://www.mamicode.com/info-detail- ...
- 监控工具—Prometheus—监控Redis
原文作者:wyl9527 原文地址:Grafana Prometheus系统监控Redis服务 目录 1.下载redis_exporter安装包 2.解压安装 3.systemd管理redis_exp ...
- OpenShift 4 - 用内置的Prometheus监控应用
<OpenShift 4.x HOL教程汇总> 说明:本文已经在OpenShift 4.8环境中验证 文章目录 配置Prometheus环境 部署被监控应用 创建收集指标的角色,并为用户赋 ...
- Java获取Prometheus监控指标数据
Java获取Prometheus监控指标数据 一. 准备工作 1. 有可以被Prometheus监控的服务 没有的话可以参考以下链接本地搭建:SpringBoot应用接入Prometheus+Graf ...
- java visualvm远程监控_深入理解JVM虚拟机12:JVM性能管理神器VisualVM介绍与实战
本文转自互联网,侵删 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutori ...
- 实战|如何优雅地自定义Prometheus监控指标
今天要和大家分享的是在实际工作中**"如何优雅地自定义Prometheus监控指标"**!目前大部分使用Spring Boot构建微服务体系的公司,大都在使用Prometheus来 ...
最新文章
- stm32影子寄存器、预装载寄存器,TIM_OC1PreloadConfig和TIM_ARRPreloadConfig的作用
- 什么是视频会议?什么是H.323?SIP是什么协议?
- urllib2介绍(转)
- 用archoctopus下载花瓣
- 解析Json需要设置Mime
- -bash-退出_为什么这么多开发人员在找到工作之前就退出了。 请-不要。
- anaconda管理不同版本Python
- java代码内创建mysql索引_点评阿里JAVA手册之MySQL数据库 (建表规约、索引规约、SQL语句、ORM映射)...
- BZOJ1878 [SDOI2009]HH的项链
- Ubuntu 安装 ROS 详细教程
- 图书馆图书借阅登记微信小程序管理软件系统开发制作
- 华为服务器虚拟化和存储虚拟化中标,idc服务器虚拟化排名
- 在web页面打开pdf文件并打印
- Vue中设置浏览器标签栏图标以及title
- Caused by: java.lang.ClassNotFoundException: org.jbpm.pvm.internal.processengine.SpringHelper
- IP远程实施访问另一台电脑
- 安装win10出现“计算机意外的重新启动或遇到错误。Windows安装无法继续。若要安装Windows,请单击“确定”重新启动计算机,然后安装系统。”
- 生成有feature的pattern-graph数据集
- .Net IIS 内存溢出(System.OutOfMemoryException)
- 2014计算机网络基础课程说课 张宗宝,2014年四川省省级资源共享课立项建设名单说课.doc...
热门文章
- 依赖反转(倒置)原则(Dependency inversion principle,DIP)
- 基于深度学习的轴承故障识别-构建基础的CNN模型
- 地质勘查土质分类图片_一种地质勘查用土壤样本采集装置的制作方法
- 信捷伺服刚性调整_信捷伺服电机奇怪的质量问题,做工控多年首次仅见!!!!...
- Set8087CW作用
- 关于移动端布局不兼容ipad和ipad pro 解决方法
- Hankson趣味题
- [公告] 2017年9月装机员系统更新
- hy3208中文参数_HY-MOSFET-产品目录表
- Python,地理地图可视化:plotly绘制mapbox地图城市中心点经纬度marker标记