iT邦幫忙

2021 iThome 鐵人賽

DAY 4
0
自我挑戰組

從雲端開始的菜鳥任務系列 第 4

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!

再一天:)


上一篇
DAY3 安裝 Kubernetes
下一篇
Day 5 安裝Prometheus
系列文
從雲端開始的菜鳥任務30

尚未有邦友留言

立即登入留言