要裝的東西叫 kube-prometheus-stack,用 kubectl 一個一個 apply 會有幾十個檔案,所以要先認識 Helm
Helm 是 K8s 的套件管理工具,概念上類似 apt 或 scoop。它把一組 YAML 打包成一個 chart,裡面會變動的部分抽出來變成參數,安裝的時候用參數去填。這樣一行指令就能裝好一整套東西
先裝 Helm
scoop install helm
helm version

裝完記得開一個新的 PowerShell 視窗
然後裝監控
helm upgrade --install monitoring oci://ghcr.io/prometheus-community/charts/kube-prometheus-stack --namespace monitoring --create-namespace --set alertmanager.enabled=false

裝好之後看看多了什麼
kubectl get pods -n monitoring

每個角色都不一樣
指標名稱的前綴會反映它從哪裡來。kube_ 開頭的來自 kube-state-metrics,node_ 開頭的來自 node-exporter,container_ 開頭的則是每台 Node 上的 cAdvisor 提供的
kubectl get pods -n monitoring -w
kubectl get services -n monitoring

看一下它多裝了什麼型別的資源
kubectl get crd

CRD 是自訂資源,意思是這包東西幫 K8s 增加了它原本不認識的物件種類,例如 ServiceMonitor 跟 PrometheusRule
明天見 :D
