1.1Prometheus?是一個(gè)開源的系統(tǒng)監(jiān)控和報(bào)警系統(tǒng)钩乍,現(xiàn)在已經(jīng)加入到?CNCF?基金會(huì)铡俐,成為繼?k8s?之后
第二個(gè)在?CNCF?托管的項(xiàng)目叫惊,在?kubernetes?容器管理系統(tǒng)中寞肖,通常會(huì)搭配?prometheus?進(jìn)行監(jiān)控哲身,同 時(shí)也支持多種?exporter?采集數(shù)據(jù)辩涝,還支持?pushgateway?進(jìn)行數(shù)據(jù)上報(bào),Prometheus?性能足夠支撐 上萬臺(tái)規(guī)模的集群律罢。
下次有空多學(xué)一下relabel_configs膀值,對(duì)k8s監(jiān)控的服務(wù)發(fā)現(xiàn)很有幫助
prometheus?特點(diǎn)
1.多維度數(shù)據(jù)模型
每一個(gè)時(shí)間序列數(shù)據(jù)都由?metric?度量指標(biāo)名稱和它的標(biāo)簽?labels?鍵值對(duì)集合唯一確定:
這個(gè)?metric?度量指標(biāo)名稱指定監(jiān)控目標(biāo)系統(tǒng)的測(cè)量特征(如:http_requests_total-?接收?http?請(qǐng) 求的總計(jì)數(shù))。labbels?開啟了?Prometheus?的多維數(shù)據(jù)模型:對(duì)于相同的度量名稱误辑,通過不同標(biāo)簽列表 的結(jié)合,?會(huì)形成特定的度量維度實(shí)例沧踏。(例如:所有包含度量名稱為/api/tracks?的?http?請(qǐng)求,打上method=POST?的標(biāo)簽巾钉,則形成了具體的?http?請(qǐng)求)翘狱。這個(gè)查詢語言在這些度量和標(biāo)簽列表的基礎(chǔ)上進(jìn)行過 濾和聚合。改變?nèi)魏味攘可系娜魏螛?biāo)簽值砰苍,則會(huì)形成新的時(shí)間序列圖潦匈。
2.靈活的查詢語言(PromQL)
可以對(duì)采集的?metrics?指標(biāo)進(jìn)行加法,乘法赚导,連接等操作;?3.可以直接在本地部署茬缩,不依賴其他分布式存儲(chǔ);
4.通過基于?HTTP?的?pull?方式采集時(shí)序數(shù)據(jù);
5.可以通過中間網(wǎng)關(guān)?pushgateway?的方式把時(shí)間序列數(shù)據(jù)推送到?prometheus server?端;?6.可通過服務(wù)發(fā)現(xiàn)或者靜態(tài)配置來發(fā)現(xiàn)目標(biāo)服務(wù)對(duì)象(targets)。?7.有多種可視化圖像界面吼旧,如?Grafana?等凰锡。
8.高效的存儲(chǔ),每個(gè)采樣數(shù)據(jù)占?3.5 bytes?左右,300?萬的時(shí)間序列掂为,30s?間隔裕膀,保留?60?天,消耗 磁盤大概?200G勇哗。
9.做高可用昼扛,可以對(duì)數(shù)據(jù)做異地備份,聯(lián)邦集群欲诺,部署多套?prometheus抄谐,pushgateway?上報(bào)數(shù)據(jù)
1.3 prometheus?組件
從上圖可發(fā)現(xiàn),Prometheus?整個(gè)生態(tài)圈組成主要包括?prometheus server瞧栗,Exporter斯稳,?pushgateway,alertmanager迹恐,grafana,Web ui?界面卧斟,Prometheus server?由三個(gè)部分組成殴边,?Retrieval,Storage珍语,PromQL
1.Retrieval?負(fù)責(zé)在活躍的?target?主機(jī)上抓取監(jiān)控指標(biāo)數(shù)據(jù)?
2.Storage?存儲(chǔ)主要是把采集到的數(shù)據(jù)存儲(chǔ)到磁盤中?
3.PromQL?是?Prometheus?提供的查詢語言模塊锤岸。
1.Prometheus Server:
用于收集和存儲(chǔ)時(shí)間序列數(shù)據(jù)。
2.Client Library:
客戶端庫板乙,檢測(cè)應(yīng)用程序代碼是偷,當(dāng)?Prometheus?抓取實(shí)例的?HTTP?端點(diǎn)時(shí),客戶端庫會(huì)將所有跟蹤
的?metrics?指標(biāo)的當(dāng)前狀態(tài)發(fā)送到?prometheus server?端募逞。?3.Exporters:
prometheus?支持多種?exporter蛋铆,通過?exporter?可以采集?metrics?數(shù)據(jù),然后發(fā)送到?prometheus server?端放接,所有向?promtheus server?提供監(jiān)控?cái)?shù)據(jù)的程序都可以被稱為?exporter
4.Alertmanager:
從?Prometheus server?端接收到?alerts?后刺啦,會(huì)進(jìn)行去重,分組纠脾,并路由到相應(yīng)的接收方玛瘸,發(fā)出 報(bào)警,常見的接收方式有:電子郵件苟蹈,微信糊渊,釘釘, slack?等。
5.Grafana:
監(jiān)控儀表盤慧脱,可視化監(jiān)控?cái)?shù)據(jù)
6.pushgateway:
各個(gè)目標(biāo)主機(jī)可上報(bào)數(shù)據(jù)到?pushgatewy渺绒,然后?prometheus server?統(tǒng)一從?pushgateway?拉取
數(shù)據(jù)。
1.4 prometheus?幾種部署模式
基本?HA?模式
基本的?HA?模式只能確保?Promthues?服務(wù)的可用性問題,但是不解決?Prometheus Server?之間 的數(shù)據(jù)一致性問題以及持久化問題(數(shù)據(jù)丟失后無法恢復(fù))芒篷,也無法進(jìn)行動(dòng)態(tài)的擴(kuò)展搜变。因此這種部署方式適 合監(jiān)控規(guī)模不大,Promthues Server?也不會(huì)頻繁發(fā)生遷移的情況针炉,并且只需要保存短周期監(jiān)控?cái)?shù)據(jù)的 場(chǎng)景挠他。
基本?HA +?遠(yuǎn)程存儲(chǔ)方案
在解決了?Promthues?服務(wù)可用性的基礎(chǔ)上,同時(shí)確保了數(shù)據(jù)的持久化篡帕,當(dāng)?Promthues Server?發(fā) 生宕機(jī)或者數(shù)據(jù)丟失的情況下殖侵,可以快速的恢復(fù)。 同時(shí)?Promthues Server?可能很好的進(jìn)行遷移镰烧。因 此拢军,該方案適用于用戶監(jiān)控規(guī)模不大,但是希望能夠?qū)⒈O(jiān)控?cái)?shù)據(jù)持久化怔鳖,同時(shí)能夠確保?Promthues Server?的可遷移性的場(chǎng)景茉唉。
基本?HA +?遠(yuǎn)程存儲(chǔ)?+?聯(lián)邦集群方案
Promthues?的性能瓶頸主要在于大量的采集任務(wù),因此用戶需要利用?Prometheus?聯(lián)邦集群的特 性结执,將不同類型的采集任務(wù)劃分到不同的?Promthues?子服務(wù)中度陆,從而實(shí)現(xiàn)功能分區(qū)。例如一個(gè)?Promthues Server?負(fù)責(zé)采集基礎(chǔ)設(shè)施相關(guān)的監(jiān)控指標(biāo)献幔,另外一個(gè)?Prometheus Server?負(fù)責(zé)采集應(yīng)用 監(jiān)控指標(biāo)懂傀。再有上層?Prometheus Server?實(shí)現(xiàn)對(duì)數(shù)據(jù)的匯聚。
1.5 prometheus?工作流程
1. Prometheus server?可定期從活躍的(up)目標(biāo)主機(jī)上(target)拉取監(jiān)控指標(biāo)數(shù)據(jù)蜡感,目標(biāo)主
機(jī)的監(jiān)控?cái)?shù)據(jù)可通過配置靜態(tài)?job?或者服務(wù)發(fā)現(xiàn)的方式被?prometheus server?采集到蹬蚁,這種方式默認(rèn)的?pull?方式拉取指標(biāo);也可通過?pushgateway?把采集的數(shù)據(jù)上報(bào)到?prometheus server?中;還可通過 一些組件自帶的?exporter?采集相應(yīng)組件的數(shù)據(jù);
2.Prometheus server?把采集到的監(jiān)控指標(biāo)數(shù)據(jù)保存到本地磁盤或者數(shù)據(jù)庫;
3.Prometheus?采集的監(jiān)控指標(biāo)數(shù)據(jù)按時(shí)間序列存儲(chǔ),通過配置報(bào)警規(guī)則郑兴,把觸發(fā)的報(bào)警發(fā)送到?alertmanager
4.Alertmanager?通過配置報(bào)警接收方犀斋,發(fā)送報(bào)警到郵件,微信或者釘釘?shù)?
5.Prometheus?自帶的?web ui?界面提供?PromQL?查詢語言杈笔,可查詢監(jiān)控?cái)?shù)據(jù)
6.Grafana?可接入?prometheus?數(shù)據(jù)源闪水,把監(jiān)控?cái)?shù)據(jù)以圖形化形式展示出
1.6 prometheus?如何更好的監(jiān)控?k8s?
對(duì)于 Kubernetes?而言,我們可以把當(dāng)中所有的資源分為幾類:
1蒙具、基礎(chǔ)設(shè)施層(Node):集群節(jié)點(diǎn)球榆,為整個(gè)集群和應(yīng)用提供運(yùn)行時(shí)資源?2、容器基礎(chǔ)設(shè)施(Container):為應(yīng)用提供運(yùn)行時(shí)環(huán)境
3禁筏、用戶應(yīng)用(Pod):Pod?中會(huì)包含一組容器持钉,它們一起工作,并且對(duì)外提供一個(gè)(或者 一組)功能
4篱昔、內(nèi)部服務(wù)負(fù)載均衡(Service):在集群內(nèi)每强,通過?Service?在集群暴露應(yīng)用功能始腾,集群內(nèi) 應(yīng)用和應(yīng)用之間訪問時(shí)提供內(nèi)部的負(fù)載均衡
5、外部訪問入口(Ingress):通過?Ingress?提供集群外的訪問入口空执,從而可以使外部客戶 端能夠訪問到部署在?Kubernetes?集群內(nèi)的服務(wù)
因此浪箭,在不考慮?Kubernetes?自身組件的情況下,如果要構(gòu)建一個(gè)完整的監(jiān)控體系辨绊,我們應(yīng)該 考慮奶栖,以下?5?個(gè)方面:
1)、集群節(jié)點(diǎn)狀態(tài)監(jiān)控:從集群中各節(jié)點(diǎn)的?kubelet?服務(wù)獲取節(jié)點(diǎn)的基本運(yùn)行狀態(tài);?
2)门坷、集群節(jié)點(diǎn)資源用量監(jiān)控:通過?Daemonset?的形式在集群中各個(gè)節(jié)點(diǎn)部署?Node Exporter?采集節(jié)點(diǎn)的資源使用情況;
3)宣鄙、節(jié)點(diǎn)中運(yùn)行的容器監(jiān)控:通過各個(gè)節(jié)點(diǎn)中?kubelet?內(nèi)置的?cAdvisor?中獲取個(gè)節(jié)點(diǎn)中所有容器的運(yùn)行狀態(tài)和資源使用情況;
4)、從黑盒監(jiān)控的角度在集群中部署?Blackbox Exporter?探針服務(wù)默蚌,檢測(cè)?Service?和?Ingress?的可用性;
5)冻晤、如果在集群中部署的應(yīng)用程序本身內(nèi)置了對(duì)?Prometheus?的監(jiān)控支持,那么我們還應(yīng)該找 到相應(yīng)的?Pod?實(shí)例绸吸,并從該?Pod?實(shí)例中獲取其內(nèi)部運(yùn)行狀態(tài)的監(jiān)控指標(biāo)鼻弧。
2安裝采集節(jié)點(diǎn)資源指標(biāo)組件?node-exporter
node-exporter?是什么?
采集機(jī)器(物理機(jī)、虛擬機(jī)锦茁、云主機(jī)等)的監(jiān)控指標(biāo)數(shù)據(jù)温数,能夠采集到的指標(biāo)包括?CPU,?內(nèi)存,磁 盤蜻势,網(wǎng)絡(luò),文件數(shù)等信息鹉胖。
安裝?node-exporter?組件握玛,在?k8s?集群的控制節(jié)點(diǎn)操作
# kubectl create ns monitor-sa
把課件里的?node-exporter.tar.gz?鏡像壓縮包上傳到?k8s?的各個(gè)節(jié)點(diǎn),
手動(dòng)解壓: ?docker load -i node-exporter.tar.gz
?docker load -i node-exporter.tar.gz
node-export.yaml?文件在課件甫菠,可自行上傳到自己?k8s?的控制節(jié)點(diǎn)挠铲,內(nèi)容如下:?
# cat node-export.yaml
apiVersion: apps/v1
kind: DaemonSet
metadata:
? name: node-exporter
? namespace: monitor-sa
? labels:
? ? name: node-exporter
spec:
? selector:
? ? matchLabels:
? ? name: node-exporter
? template:
? ? metadata:
? ? ? labels:
? ? ? ? name: node-exporter
? ? spec:
? ? ? hostPID: true
? ? ? hostIPC: true
? ? ? hostNetwork: true
? ? ? containers:
? ? ? - name: node-exporter
? ? ? ? image: prom/node-exporter:v0.16.0
? ? ? ? ports:
? ? ? ? - containerPort: 9100
? ? ? ? resources:
? ? ? ? ? requests:
? ? ? ? ? ? cpu: 0.15
? ? ? ? securityContext:
? ? ? ? ? privileged: true
? ? ? ? args:
? ? ? ? - --path.procfs
? ? ? ? - /host/proc
? ? ? ? - --path.sysfs
? ? ? ? - /host/sys
? ? ? ? - --collector.filesystem.ignored-mount-points
? ? ? ? - '"^/(sys|proc|dev|host|etc)($|/)"'
? ? ? ? volumeMounts:
? ? ? ? - name: dev
? ? ? ? ? mountPath: /host/dev
? ? ? ? - name: proc
? ? ? ? ? mountPath: /host/proc
? ? ? ? - name: sys
? ? ? ? ? mountPath: /host/sys
? ? ? ? - name: rootfs
? ? ? ? ? mountPath: /rootfs
? ? ? tolerations:
? ? ? - key: "node-role.kubernetes.io/master"
? ? ? ? operator: "Exists"
? ? ? ? effect: "NoSchedule"
? ? ? volumes:
? ? ? ? - name: proc
? ? ? ? ? hostPath:
? ? ? ? ? ? path: /proc
? ? ? ? - name: dev
? ? ? ? ? hostPath:
? ? ? ? ? ? path: /dev
? ? ? ? - name: sys
? ? ? ? ? hostPath:
? ? ? ? ? ? path: /sys
? ? ? ? - name: rootfs
? ? ? ? ? hostPath:
? ? ? ? ? ? path: /
kubectl apply -f node-export.yaml
#查看?node-exporter?是否部署成功
kubectl get pods -n monitor-sa
NAME? ? ? ? ? ? ? ? ? READY? STATUS? ? RESTARTS? AGE
node-exporter-5dh6b? 1/1? ? Running? 0? ? ? ? ? 11m
node-exporter-qd9f7? 1/1? ? Running? 0? ? ? ? ? 11m
通過?node-exporter?采集數(shù)據(jù)
curl http://主機(jī)?ip:9100/metrics
#node-export?默認(rèn)的監(jiān)聽端口是?9100,可以看到當(dāng)前主機(jī)獲取到的所有監(jiān)控?cái)?shù)據(jù)
curl http://192.168.172.163:9100/metrics | grep node_cpu_seconds
顯示?192.168.172.163?主機(jī)?cpu?的使用情況
curl http://192.168.172.163:9100/metrics | grep node_cpu_seconds
? % Total? ? % Received % Xferd? Average Speed? Time? ? Time? ? Time? Current
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Dload? Upload? Total? Spent? ? Left? Speed
100 78237? 100 78237? ? 0? ? 0? 10.5M? ? ? 0 --:--:-- --:--:-- --:--:-- 12.4# HELP node_cpu_seconds_total Seconds the cpus spent in each mode.
M
# TYPE node_cpu_seconds_total counter
node_cpu_seconds_total{cpu="0",mode="idle"} 64776.09
node_cpu_seconds_total{cpu="0",mode="iowait"} 16.41
node_cpu_seconds_total{cpu="0",mode="irq"} 0
node_cpu_seconds_total{cpu="0",mode="nice"} 0.63
node_cpu_seconds_total{cpu="0",mode="softirq"} 121.24#HELP:解釋當(dāng)前指標(biāo)的含義寂诱,上面表示在每種模式下?node?節(jié)點(diǎn)的?cpu?花費(fèi)的時(shí)間拂苹,以?s?為單位?#TYPE:說明當(dāng)前指標(biāo)的數(shù)據(jù)類型,上面是?counter?類型?node_cpu_seconds_total{cpu="0",mode="idle"}?:
cpu0?上?idle?進(jìn)程占用?CPU?的總時(shí)間痰洒,CPU?占用時(shí)間是一個(gè)只增不減的度量指標(biāo)瓢棒,從類型中也可以 看出?node_cpu?的數(shù)據(jù)類型是?counter(計(jì)數(shù)器)
counter?計(jì)數(shù)器:只是采集遞增的指標(biāo)
curl http://192.168.172.163:9100/metrics | grep node_load
# HELP node_load1 1m load average.
# TYPE node_load1 gauge
node_load1 0.1
node_load1?
該指標(biāo)反映了當(dāng)前主機(jī)在最近一分鐘以內(nèi)的負(fù)載情況,系統(tǒng)的負(fù)載情況會(huì)隨系統(tǒng)資源的
使用而變化丘喻,因此?node_load1?反映的是當(dāng)前狀態(tài)脯宿,數(shù)據(jù)可能增加也可能減少,從注釋中可以看出當(dāng)前 指標(biāo)類型為?gauge(標(biāo)準(zhǔn)尺寸)
gauge?標(biāo)準(zhǔn)尺寸:統(tǒng)計(jì)的指標(biāo)可增加可減少
3.在?k8s?集群中安裝?Prometheus server?服務(wù)
3.1創(chuàng)建?sa?賬號(hào)
#在?k8s?集群的控制節(jié)點(diǎn)操作泉粉,創(chuàng)建一個(gè)?sa?賬號(hào)
kubectl create serviceaccount monitor -n monitor-sa
#把?sa?賬號(hào)?monitor?通過?clusterrolebing?綁定到?clusterrole?上
kubectl create clusterrolebinding monitor-clusterrolebinding -n monitor-sa --clusterrole=cluster-admin --serviceaccount=monitor-sa:monitor
#執(zhí)行上面授權(quán)也會(huì)報(bào)錯(cuò)连霉,那就需要下面的授權(quán)命令:
kubectl create clusterrolebinding monitor-clusterrolebinding-1 -n monitor-sa -- clusterrole=cluster-admin --user=system:serviceaccount:monitor:monitor-sa
3.2?創(chuàng)建數(shù)據(jù)目錄
#在 god64?作節(jié)點(diǎn)創(chuàng)建存儲(chǔ)數(shù)據(jù)的目錄:?
]# mkdir /data?
]# chmod 777 /data/
3.3?安裝?prometheus?服務(wù)
以下步驟均在?
k8s?集群的控制節(jié)點(diǎn)操作:
創(chuàng)建一個(gè)?configmap?存儲(chǔ)卷榴芳,用來存放?prometheus?配置信息?prometheus-cfg.yaml ,k8s?的控制節(jié)點(diǎn)
安裝?prometheus server鏡像?prometheus-2-2-1.tar.gz跺撼,上傳到?k8s?的工作節(jié)點(diǎn)
cat prometheus-deploy.yaml?
apiVersion: apps/v1
kind: Deployment
metadata:
? name: prometheus-server
? namespace: monitor-sa
? labels:
? ? app: prometheus
spec:
? replicas: 1
? selector:
? ? matchLabels:
? ? ? app: prometheus
? ? ? component: server
? ? #matchExpressions:
? ? #- {key: app, operator: In, values: [prometheus]}
? ? #- {key: component, operator: In, values: [server]}
? template:
? ? metadata:
? ? ? labels:
? ? ? ? app: prometheus
? ? ? ? component: server
? ? ? annotations:
? ? ? ? prometheus.io/scrape: 'false'
? ? spec:
? ? ? nodeName: god64
? ? ? serviceAccountName: monitor
? ? ? containers:
? ? ? - name: prometheus
? ? ? ? image: prom/prometheus:v2.2.1
? ? ? ? imagePullPolicy: IfNotPresent
? ? ? ? command:
? ? ? ? ? - prometheus
? ? ? ? ? - --config.file=/etc/prometheus/prometheus.yml
? ? ? ? ? - --storage.tsdb.path=/prometheus? #舊數(shù)據(jù)存儲(chǔ)目錄
? ? ? ? ? - --storage.tsdb.retention=720h? ? #何時(shí)刪除舊數(shù)據(jù)窟感,默認(rèn)為 15 天。
? ? ? ? ? - --web.enable-lifecycle? ? ? ? ? #開啟熱加載
? ? ? ? ports:
? ? ? ? - containerPort: 9090
? ? ? ? ? protocol: TCP
? ? ? ? volumeMounts:
? ? ? ? - mountPath: /etc/prometheus/prometheus.yml
? ? ? ? ? name: prometheus-config
? ? ? ? ? subPath: prometheus.yml
? ? ? ? - mountPath: /prometheus
? ? ? ? ? name: prometheus-storage-volume
? ? ? volumes:
? ? ? ? - name: prometheus-config
? ? ? ? ? configMap:
? ? ? ? ? ? name: prometheus-config
? ? ? ? ? ? items:
? ? ? ? ? ? - key: prometheus.yml
? ? ? ? ? ? ? path: prometheus.yml
? ? ? ? ? ? ? mode: 0644
? ? ? ? - name: prometheus-storage-volume
? ? ? ? ? hostPath:
? ? ? ? ? ? path: /data
? ? ? ? ? ? type: Directory
工作 節(jié)點(diǎn)我們創(chuàng)建了數(shù)據(jù)目錄/data歉井,你在?k8s?集群的哪個(gè)節(jié)點(diǎn)創(chuàng)建/data柿祈,就讓?pod?調(diào)度到哪個(gè)節(jié)點(diǎn)。
kubectl apply -f prometheus-deploy.yaml
#查看?prometheus?是否部署成功
kubectl get pods -n monitor-sa
NAME? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? READY? STATUS? ? RESTARTS? AGE
node-exporter-5dh6b? ? ? ? ? ? ? ? ? 1/1? ? Running? 0? ? ? ? ? 4d1h
node-exporter-qd9f7? ? ? ? ? ? ? ? ? 1/1? ? Running? 0? ? ? ? ? 4d1h
prometheus-server-5bc47cc46d-6wn4t? 1/1? ? Running? 0? ? ? ? ? 2m49s
給?prometheus pod?創(chuàng)建一個(gè)?service
cat prometheus-svc.yaml
apiVersion: v1
kind: Service
metadata:
? name: prometheus
? namespace: monitor-sa
? labels:
? ? app: prometheus
spec:
? type: NodePort
? ports:
? ? - port: 9090
? ? ? targetPort: 9090
? ? ? protocol: TCP
? selector:
? ? app: prometheus
? ? component: server
kubectl apply -f prometheus-svc.yaml
#查看?service?在物理機(jī)映射的端口
kubectl get svc -n monitor-sa
NAME? ? ? ? TYPE? ? ? CLUSTER-IP? ? ? EXTERNAL-IP? PORT(S)? ? ? ? ? AGE
prometheus? NodePort? 10.106.198.175? <none>? ? ? ? 9090:31994/TCP? 28s
通過上面可以看到?service?在宿主機(jī)上映射的端口是?30009酣难,這樣我們?cè)L問?k8s?集群的控制節(jié)點(diǎn)的?ip:30009谍夭,就可以訪問到?prometheus?的?web ui?界面了
#訪問?prometheus web ui?界面 火狐瀏覽器輸入如下地址:
http://192.168.172.164:31994/graph
kubectl get pods -n monitor-sa -o wide
NAME? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? READY? STATUS? ? RESTARTS? AGE? ? IP? ? ? ? ? ? ? ? NODE? ? ? NOMINATED NODE? READINESS GATES
node-exporter-5dh6b? ? ? ? ? ? ? ? ? 1/1? ? Running? 0? ? ? ? ? 4d4h? 192.168.172.164 ? ??
node-exporter-qd9f7? ? ? ? ? ? ? ? ? 1/1? ? Running? 0? ? ? ? ? 4d4h? 192.168.172.163 ? ?
prometheus-server-5bc47cc46d-6wn4t? 1/1? ? Running? 0? ? ? ? ? 143m? 10.244.209.134 ? ?
curl -X POST?http://10.244.209.134:9090/-/reload