Skip to main content

Command Palette

Search for a command to run...

监控改造之路1

Updated
1 min read

入职新公司已经三个月了,据说招我来的目的就是为了做监控的需求,因为我之前有过设计监控告警平台的一些经验吧……

现状

新公司监控解决方案是大家所熟知的Prometheus+Grafana那一套,对于来说也算是驾轻就熟了。由于团队是做大数据相关的,对ZooKeeper(后文简称zk)有比较强的依赖(zk是部署在K8s中的),所以我首先了解了一下之前是如何实现对zk的监控:

是通过jmx实现的,以下是wiki上对jmx的释义:

JMX是Java平台上为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。

openai是这么描述的:

JMX代表Java管理扩展,是Java平台上的一种管理和监控技术。它允许应用程序提供一个MBean(管理bean)接口,这个接口暴露了应用程序的运行时属性、性能统计信息和方法操作。这些MBean可以被远程管理和监控,通过JMX客户端可以实时查看和修改这些MBean的状态。

我觉得openai的描述我更容易理解,具体实现步骤如下所示:

  1. 团队开发了一个exporter的http server;

  2. exporter负责从支持 jmx 的接口(如 zk )获取监控数据,并将其转化为 prometheus metrics格式;

  3. prometheus从exporter中抓取数据;

改造

这么做也不是不可以,至少功能上是实现了,但是直觉上我觉得不应该这么复杂,毕竟prometheus几乎成为了监控的一套标准,zk虽然比较老,但应用广泛,也应该有支持才对呀,于是翻阅了zk的官方文档,果然,只需要配置一下即可

Prometheus

  • Running a Prometheus monitoring service is the easiest way to ingest and record ZooKeeper's metrics.

  • Pre-requisites:

  • enable the Prometheus MetricsProvider by setting metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider in the zoo.cfg.

这里背景需要稍微说明一下:在我入职之前,团队其它人均是3年以下工作经验,对监控完全没有概念,能够从0做到1,我个人觉得已经是不错的了。

总结

  • 搜索:笔者觉得搜索是一项挺重要的能力的,特别是要学会用google+英文搜索,可以大大提高解决问题的能力,现在有了openai,更方便了。

  • 借鉴:笔者认为,非底层技术的软件公司,不太能遇到或者解决难度很大的技术问题,我们遇到的许多问题,别人可能都已经解决过了,创新当然是好的,但如果能够参考、借鉴前人的做法,大概率能帮助我们减少弯路。

参考

103 views

More from this blog

2025: 祛魅 灰度 念头通达

今天是2025年的最后一天,当大家都在准备下班的时候,好巧不巧的,我刚好发现了一个不大不小的问题,大胆猜想,小心求证,向上反馈,暴露风险,作为2025年工作注解,实在是再有趣不过了。 今年的工作,从结果上看,还算平稳,至于过程,有太多不可言说的部分。厂里打镙丝的牛马,有工资可拿,理应知足了,至于其它的,与己无关,也没那么重要了。 祛魅 近距离观察大厂,才发现一些违背常识/直觉的事实:路人以为的高大

Feb 28, 20261 min read21

大厂祛魅:破碎的专注力

毁掉一个人最直接的方法,就是毁掉ta的专注力。 这句话的出处已然模糊,但放在大厂环境中,却显得格外深刻。 围城 大厂宛如一座围城。城外的人满怀憧憬,目之所及皆是光鲜;城内的人却如困笼之鸟,翅膀日渐退化,每日挣扎求生。 高大上 不可否认,大厂的硬件设施确实令人艳羡:宽敞的独立园区内,来往穿梭的人群中,几乎人人手握智能设备。这看似现代化的景象背后,却藏着一个无奈的事实:在工作时段,每台电脑都被严密监控,连听音乐都成奢望。于是,工作之余玩手机,成了许多人难得的解压方式。 大厂的品牌效应确实强大。外界对...

Jul 29, 20251 min read138

Black Swan

黑天鹅理论 是指极不可能发生,实际上却又发生的事件 来到大厂打工已经满一个月了,从一开始的手足无措,到逐渐度过不适期,也算是适应了吧。 不适应 刚入职时,不适应的地方还是挺多的。 第一次只使用台式机工作,这就限制了我一天中的绝大部分时间,都必须呆在自己的工位上,好在工位足够大。只是人与人的沟通少了很多,有问题只能在工位上通过 IM 呼对方,有种魔幻又现实的感觉 第一次只能用 Windows,也不能 WSL,这给我的工作效率带来了很大影响,不能用熟悉的软件,就连写代码用的 VSCode 的...

Jan 24, 20251 min read74

2024年: 逐渐平静

这个世界是一面镜子,会把你的感受反射给你 2024 开端: 相由心生 那时,还带着一着愤懑,因为拿到了低绩效,虽然内心知道这是公司经营困难,想让我离开的一种策略,但仍然感受到自己那可笑的自尊受到了践踏。自那之后,非必要不加班,只做份内事,尽可能地不去涉及份外之事。 2024 年中: 与人为善 组里的项目眼见不行了,我被迫去支援 AI 项目,久违地写起了 python,项目接近完成时,意外收到通知:我拿到大礼包了。在这之前,架构师因故裸辞。在我离开之后不到两周,我的 TL 也裸辞了,直到同事告诉...

Jan 9, 20251 min read92

企业软件之殇

殇 动词 未成年而死。 名词 战死者。 笔者经历了两家打着云原生旗号的企业软件/解决方案公司,都是中途加入,项目都以解(失)散(败)告终。 云原生解决方案 NB 公司:一个传统的 IDC 小厂,想着借云原生的热度,进军企业软件市场。 在加入这个项目之前,笔者考取了 CKAD 认证,彼时对 K8s 相当着迷。先简要介绍一下这个项目背景: 基于 Rancher (换皮肤)的二次开发项目,名字叫:HCaaS ,在笔者加入这个团队之前,项目已经开发近两年了,除了 TL 之外,其它人之前都...

Jul 1, 20241 min read103

just for fun

57 posts

I'm a Software Engineer

监控改造之路1