签到成功

知道了

CNDBA社区CNDBA社区

Prometheus改造node_exporter源码 支持service-discover

2022-01-17 09:02 2955 0 原创 golang k8s
作者: Supreme_Aaron

起因

监控所有的东西的时候都可以使用这一段代码。监控mysql啥的都可以使用。在落地Prometheus的时候。最基础的也是最重要的就是操作系统的监控。这个时候会用node_exporter。因为不想用static这种东西修改起来很麻烦。要reload啥的。然后就准备用sd。以node_Expoerter为例https://www.cndba.cn/Supreme_Aaron/article/106573

https://www.cndba.cn/Supreme_Aaron/article/106573

sd consul

在使用sd的时候 发现node_Export不能自动注册到consul。现在因为全部都是自己写的代码来实现一键部署安装 启动。不能自动注册到时候就很尴尬要手动发送http请求(这里虽然也能实现在安装的时候发送。但是总感觉不是正道)。虽然也不是不行。但还是麻烦。就这样么就想着在不破坏原代码的基础上添加自动注册的功能。https://www.cndba.cn/Supreme_Aaron/article/106573https://www.cndba.cn/Supreme_Aaron/article/106573https://www.cndba.cn/Supreme_Aaron/article/106573

https://www.cndba.cn/Supreme_Aaron/article/106573
https://www.cndba.cn/Supreme_Aaron/article/106573

代码

https://github.com/prometheus/node_exporter 拉代码。
准备支持的:命令行参数 && viper的配置文件
后续代码上传github。后需要就往后读

阅读代码过程

启动函数在整个项目的大外层 node_exporter.go
node_Export 使用了. “gopkg.in/alecthomas/kingpin.v2” 我个人是没有用过的。但是看github应该就是命令行解析工具。我原来使用的是spf13的cobra。kingpin的github主页 作者也说不维护了。推荐使用kong这个项目。这种东西原理应该就那样简单的。花了半个小时看了一下。大概懂了。

https://www.cndba.cn/Supreme_Aaron/article/106573
https://www.cndba.cn/Supreme_Aaron/article/106573

github地址:(因为被墙 然后实在上不去)
gitee地址:https://gitee.com/bapesupreme/node-exporter-consul-sdhttps://gitee.com/bapesupreme/node-exporter-consul-sdhttps://www.cndba.cn/Supreme_Aaron/article/106573

版权声明:本文为博主原创文章,未经博主允许不得转载。

go cncf 监控 Prometheus node_exporter

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
Supreme_Aaron

Supreme_Aaron

关注
  • 67
    原创
  • 0
    翻译
  • 0
    转载
  • 8
    评论
  • 访问:201044次
  • 积分:218
  • 等级:中级会员
  • 排名:第17名
精华文章
    最新问题
    查看更多+
    热门文章
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ