如何将支持标准可观测性协议的中间件快速接入观测

前言

作为一名云原生工程师,如何将支持标准可观测性协议的中间件快速接入观测云呢?答案是只需要三步。

  • 首先,需要确定您要观测的中间件类型。支持标准可观测性协议中间件可通过观测云的 DataKit 采集到中间件的关键指标。有些中间件自带可观测,会提供相应的端口和 /metrics 对外提供指标。有些中间件需要启动 exporter,通过 exporter 对外暴露 metrics。
  • 其次,安装 DataKit。再开通 Prom 采集器。Prometheus 提供了一种规范的方式来收集中间件的指标,DataKit 内置了 Prom 采集器,在不安装 Prometheus 的情况下,只需要在采集器配置文件中指定 metrics 的 url ,可以轻松采集到中间件的指标。
  • 最后,可视化指标数据。通过「观测云」-「场景」-「仪表板」-「+新建仪表板」即可实现指标的可视化,观测云内置了多种中间件的仪表板,支持时序图、概览图、饼图、矩形树图、蜂窝图等几十种可视化图表。图表中通过简单 DQL 查询直接选择指标来展示数据。

下面以 HBase 为案例来快速接入观测云。HBase 是 JAVA 开发的分布式开源数据库,自身不提供 metrics,需要借助 JMX exporter来暴露指标。JMX(Java Management Extensions)用于 Java 程序扩展监控和管理项。为应用程序植入观测功能的框架提供了一种简单的、标准的可观测的方式。JMX 最常用的场景就是暴露 Java 程序指标,任何 Java 程序都可开启 JMX。观测云的 DataKit 支持直接采集 JMX 暴露的指标。

环境版本

  • CentOS 7.9
  • DataKit 1.5.6
  • JDK 1.8.0_341
  • HBase 2.4.16

前置条件

  • 您需要先创建一个观测云账号
  • 已安装 HBase 2.4.16 (二进制安装路径是 /opt/soft/hbase-2.4.16)

操作步骤

1 配置 HBase

1.1 下载 JMX exporter

下载 jmx_prometheus_javaagent-0.17.2.jar,解压放到 HBase 的 bin 目录。
本示例目录是 /opt/soft/hbase-2.4.16/bin/jmx_prometheus_javaagent-0.17.2.jar

1.2 配置 HBase

新建 /opt/soft/hbase-2.4.16/conf/hbase_jmx_config.yaml

rules:
- pattern: '.*'

修改 /opt/soft/hbase-2.4.16/conf/hbase-env.sh,配置对外暴露端口 30001

 export HBASE_MASTER_OPTS="  -javaagent:/opt/soft/hbase-2.4.16/bin/jmx_prometheus_javaagent-0.17.2.jar=30001:/opt/soft/hbase-2.4.16/conf/hbase_jmx_config.yaml"
export HBASE_REGIONSERVER_OPTS="-javaagent:/opt/soft/hbase-2.4.16/bin/jmx_prometheus_javaagent-0.17.2.jar=30001:/opt/soft/hbase-2.4.16/conf/hbase_jmx_config.yaml"

1.3 重启 HBase
cd /opt/soft/hbase-2.4.16/bin
./stop-hbase.sh
./start-hbase.sh

执行如下命令,验证是否可以输出指标。

curl http://localhost:30001/metrics

2 采集指标

2.1 安装 DataKit

登录「观测云」-「集成」-「DataKit」-「Linux」,在第二步中,点击右边的「复制图标」,在 Linux 主机上安装 DataKit。

2.2 开启采集器

开通 prom 采集器比较方便,只需复制 prom.conf.sample 文件,改成以 .conf 扩展名的文件,再配置待采集的 url。

cd /usr/local/datakit/conf.d/prom
cp prom.conf.sample prom_hbase.conf

编辑 prom_hbase.conf,urls 中配置 HBase 指标的地址 http://localhost:30001/metrics

由于 HBase 指标有 untyped 类型,而默认配置只采集 counter 和gauge 类型的指标,这里需要设置 metric_types = [] 采集全部类型指标。

重启 DataKit,让新的采集器生效。

systemctl restart datakit
2.3 查看指标

登录「观测云」- 「指标」,查看采集到的指标。

以 Hadoop_HBase_numRegionServers 指标为例,观测云默认会把第一个下划线前面的 Hadoop 作为指标集,第一个下划线后面的 HBase_numRegionServers 作为指标。

# TYPE Hadoop_HBase_numRegionServers untyped
Hadoop_HBase_numRegionServers{name="Master",sub="Server",} 1.0

在「指标分析」中选择 Hadoop 指标集,再选 HBase_numRegionServers 指标即可可视化该指标。

在「指标管理」中可查看具体的指标集名称。

在 Hadoop 指标集中可以看到 host 标签,可以用做该标签做下拉框。

3 视图制作

登录「观测云」-「场景」-「仪表板」-「+新建仪表板」,输入 HBase 点「确定」新建仪表板。

点击 HBase 视图中的「新建视图变量」-「+添加视图变量」,数据链路选 DQL,变量查询输入 show_tag_value(from=['Hadoop'],keyin=['host']),其中 Hadoop 是指标集,host 是指标集中的标签。变量名输入 “host”,显示名输入“主机”,这样就制作了“主机”下拉框。

在 HBase 视图中拖一个“时序图”,简单查询表达式选择“指标”,指标集选择“Hadoop”,指标选择 HBase_numRegionServers。再点击「添加筛选」图标,再选择“host”和“#{host}”,这为了与主机下拉框做联动。左边选择“面积图”,图表标题输入“Region Servers”。自此“Region Servers”时序图制作完成。

根据同样的方式制作其它图表,制作完成后点击主机下拉框选择对应主机,展示的即是该主机上部署的 HBase 的指标视图。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/302846.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

文件系统与日志分析

一,文件系统 (一)inode 和block概述 1,文件数据包括元信息与实际数据 2,文件存储在硬盘上,硬盘最小存储单位是“扇区”,每个扇区存储512字节 3,block (块) 连续的八个扇区组成一…

Java常用类---包装类

包装类 包装类简介 Java语言是典型的面向对象编程语言,但是其中的8种基本数据类型并不支持面向对象编程,基本类型数据不具备"对象"的特性,即:没有携带属性以及没有方法可以调用。 为了解决上述问题,java为…

【Dubbo3高级特性】「微服务云原生架构」带你从零基础认识搭建公司内部服务用户中心体系(实战指南-01)

基础服务-用户中心 什么是用户中心? 用户中心,在我们的概念里面范围比较的广泛,包含了用户信息、账号信息以及租户信息的管理控制,在我们的总体设计里面,如果设计的边界较为紧密,也可以将权限的部分功能R…

poium测试库介绍

poium测试库前身为selenium-page-objects测试库,我在以前的文章中也有介绍过:这可能是最简单的Page Object库,项目的核心是基于Page Objects实现元素定位的封装。该项目由我个人在维护,目前在公司项目中已经得到的应用。 ### poium的优势 Pa…

Unity中URP下使用屏幕坐标采样深度图

文章目录 前言一、Unity使用了ComputeScreenPos函数得到屏幕坐标1、 我们来看一下这个函数干了什么2、我们看一下该函数实现该结果的意义 二、在Shader中使用(法一)1、在Varying结构体中2、在顶点着色器中3、在片元着色器中 三、在Shader中使用&#xff…

微信小程序实战-01翻页时钟-1

文章目录 前言需求分析功能设计界面设计界面结构设计界面样式设计 逻辑设计 单页功能实现运行结果 前言 我经常在手机上用的一款app有一个功能是翻页时钟,基于之前学习的小程序相关的基础内容,我打算在微信小程序中也设计一个翻页时钟功能,J…

高校教务系统登录页面JS分析——河北农业大学教务系统

高校教务系统密码加密逻辑及JS逆向 本文将介绍高校教务系统的密码加密逻辑以及使用JavaScript进行逆向分析的过程。通过本文,你将了解到密码加密的基本概念、常用加密算法以及如何通过逆向分析来破解密码。 本文仅供交流学习,勿用于非法用途。 一、密码加…

如何创建容器搭建节点

1.注册Discord账号 https://discord.com/这是登录网址: https://discord.com/ 2.点击startnow注册,用discord注册或者邮箱注册都可,然后登录tickhosting Tick Hosting这是登录网址:Tick Hosting 3.创建servers 4.点击你创建的servers,按照图中步骤进行

J2EE实验二

实验二 Struts2核心组件的应用 一、目的与任务 目的:学习Action中的动态方法调用和Action对Servlet API的三种访问方法,学习OGNL表达式和Struts2标签的使用 任务:实现基于Struts2的登录和注册系统,系统中练习使用Action、OGNL表…

SpringBoot项目处理 多数据源问题(把本地库数据 推送 到另外一个平台的库)

一、需求梳理 把我方数据库的表中数据 ----------> 推送到第三方的数据库 相当于库对库的数据插入, 但是需要的是用代码的方式实现; 二、解决思维 (1) 首先,平台与平台之间的数据库对接; 处理点1: 字段转换 (库表之间的数据字段不一致问题) 解决方式: 挨个字段的对应,如…

每日算法打卡:数的三次方根 day 7

文章目录 原题链接题目描述输入格式输出格式数据范围输入样例:输出样例: 题目分析示例代码 原题链接 790. 数的三次方根 题目难度:简单 题目描述 给定一个浮点数 n,求它的三次方根。 输入格式 共一行,包含一个浮…

【SpringCloud Alibaba笔记】(4)Seata处理分布式事务

Seata 分布式事务问题 单机单库没这个问题,分布式之前从1: 1 -> 1:N ->N:N 分布式之后 单体应用被拆分成微服务应用,原来的三个模块被拆分成三个独立的应用分别使用三个独立的数据源,业务操作需要调用三个服务来完成。 此时每个服务…

强化学习的数学原理学习笔记 - 蒙特卡洛方法(Monte Carlo)

文章目录 概览:RL方法分类蒙特卡洛方法(Monte Carlo,MC)MC BasicMC Exploring Starts🟦MC ε-Greedy 本系列文章介绍强化学习基础知识与经典算法原理,大部分内容来自西湖大学赵世钰老师的强化学习的数学原理…

Hive 的 安装与部署

目录 1 安装 MySql2 安装 Hive3 Hive 元数据配置到 MySql4 启动 Hive Hive 官网 1 安装 MySql 为什么需要安装 MySql? 原因在于Hive 默认使用的元数据库为 derby,开启 Hive 之后就会占用元数据库,且不与其他客户端共享数据,如果想多窗口操作…

强化学习6——动态规划置策略迭代算法,以悬崖漫步环境为例

策略迭代算法 通过策略评估与策略提升不断循环交替,得到最优策略。 策略评估 固定策略 π \pi π 不变,估计状态价值函数V 一个策略的状态价值函数,在马尔可夫决策过程中提到过: V π ( s ) ∑ a ∈ A π ( a ∣ s ) ( r (…

三种解密 HTTPS 流量的方法介绍

Web 安全是一项系统工程,任何细微疏忽都可能导致整个安全堡垒土崩瓦解。拿 HTTPS 来说,它的「内容加密、数据完整性、身份认证」三大安全保证,也会受到非法根证书、服务端配置错误、SSL 库漏洞、私钥被盗等等风险的影响。很多同学认为只要访问…

2024最新腾讯云CVM服务器和轻量应用服务器有什么区别?

腾讯云轻量服务器和云服务器CVM该怎么选?不差钱选云服务器CVM,追求性价比选择轻量应用服务器,轻量真优惠呀,腾讯云服务器网txyfwq.com活动 https://curl.qcloud.com/oRMoSucP 轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元…

游戏、设计选什么内存条?光威龙武系列DDR5量大管饱

如果你是一位PC玩家或者创作者,日常工作娱乐中,确实少不了大容量高频内存的支持,这样可以获得更高的工作效率,光威龙武系列DDR5内存条无疑是理想之选。它可以为计算机提供强劲的性能表现和稳定的运行体验,让我们畅玩游…

wblogic中间件配置数据源

配置数据源 1.服务-数据源-配置-新建 2.单机选一般数据源 3.选择源名称、jndi名称、数据库类型 4.选择驱动 5.下一步 6.输入连接串信息 参考&#xff1a; 格式二&#xff1a;jdbc:oracle:thin:<host>:<port>:<SID> 数据库名称配置的sid 7.测试配置&#xff…