分类:: Golang

Prometheus内部实现(四)

目标该怎么管理?静态还是动态发现? 目标管理是使用静态还是动态发现,这个和基础架构有关,要回答这个问题,需要先说说应用部署的现状! 目前,企业应用部署有两种选项: 基于虚拟机 基于容器 当然,更多的是虚拟机里装docker,算是两者的结合,节省成本。 那么基于虚拟机部署应用有什么特点呢?就是变化小,你的预期和实际情况是相对静止的,在虚拟机上部署一套应用,一套流程走下来,大概得小半天吧,这

Prometheus内部实现(三)

非线性 => 线性,混乱 => 秩序 上一篇博文主要写了Prometheus server的启动过程,但是并没有深入各个组件,了解其具体实现,这篇文件主要介绍Initial configuration loading部分。 Prometheus server的main函数有两个很精彩的实现,一个是reloader的注册,一个是组件启动。但是有个问题,所有的组件都是同时启动的吗?还是

Prometheus内部实现(二)

观察事物,需要提纲挈领!软件的启动是观察软件最好的入口! Prometheus server实现入口文件在cmd/prometheus/main.go。 Prometheus的配置由两个部分构成: 配置文件:prometheus.yml 启动flag:启动时指定 入口函数如下: 123func main() { ...} 初始化一个flagConfig,这个配置

Prometheus内部实现(一)

Prometheus在监控界为什么这么🔥? Prometheus具体是怎么实现的? 人如其名,产品亦是!Prometheus就是火种,照耀在当前的监控世界! Prometheus这把火,在我看来,火在三个方面: 系出名门:CNCF的第二个项目,CNCF的老大叫K8S,老大对老二很照顾,监控首选。 门庭若市:开源,大厂竞相争用。 简单易用:架构简单,配置简单,上下游打通。 大家都在用,而且