DAY4 Kubernetes丛集资源监-Prometheus 前言

2021 IT铁人赛 DAY4

在昨天我们已经将kubernetes安装好,也建立了一个自己的丛集,可以在上面部属一些自己需要的服务了,可是除了部属服务外,看看自己每个服务的状态或是资源使用率等也是非常重要的,有效的监控丛集的资源使用量,在你有一个较大的丛集或是服务较多的时候,可以起到优化服务或是透过调整资源使用量来节省你的花费或是资源使用率,所以今天会来介绍一个用於监控k8s资源使用量的开源软件:Prometheus。

Prometheus

Prometheus 是一套开源的监控系统,使用Go语言开发,是一个方便且整合完善的监控预警框架 TSDB(Time Series Database)时间序列资料库,可以轻易建立不同的 metrics 以及资料视觉化,并提供 PromQL (Prometheus Query Language) 来进行 query 查询。源自於 SoundCloud 并且和 Kubernetes 都是 Cloud Native Computing Foundation(CNCF) 下的一员。

Pormetheus架构图

以上是Prometheus的架构图,以下做个简单说明:

  1. Prometheus server 会从 左下的 exporters pull 相关 metrics,而如果该 job 来不及 pull 资料回来可能就已经完成任务,清洗掉资料的话,可以透过 pushgateway 接收 job push 过来的 metrics,Prometheus server 再从其中获取资料。
  2. 可以透过 Service discovery 的方式蒐集 kubernetes 相关的资讯
  3. Prometheus server 资料拉回来後可以提供本身自带的 Web UI 或 Grafana 和其他 client 来呈现。
  4. AlertManager则是一个独立於 Prometheus 的外部套件,用於监控系统的告警,可以设定一些告警规则,Prometheus 会把告警推送到 AlertManager。

透过Prometheus我们便可监控k8s丛集中cpu、memory等的资源使用量,可以更好了解到自己丛集的健康状况和每个服务各类资源使用的情况。

明天再来装Prometheus!

再一天:)


<<:  Day 19 - 写一个含状态的 Button

>>:  如何衡量程序的好与坏?浅谈时间复杂度

Day15 [实作] 使用 Socket.io 建立聊天室

实作 聊天室 server 端,使用 SSL 聊天室 client 端,使用 SSL 为什麽要使用 ...

[DAY24]安装PGAdmin(02)

接着我们要利用PGADMIN连线我们Heroku上的资料库插件 打开PGADMIN,输入昨天输入的密...

【左京淳的JAVA学习笔记】第四章 回圈

while及do-while回圈 文法如下 while (条件式){ 执行内容 } 当条件式为tru...

#14 补值教学

今天要来解决空缺的部份,我们要使用的素材如下,是一张每隔五分钟就纪录温度的资料表,我结图整张表最上面...

DAY14 MongoDB 索引属性与进阶注意事项

DAY14 MongoDB 索引属性与进阶注意事项 昨天的文章介绍了各种索引以及建立方式,这篇会讲一...