Prometheus是一個(gè)開(kāi)源的系統(tǒng)監(jiān)控和報(bào)警工具包,普羅米修斯在2016年加入了云原生計(jì)算基金會(huì),成為繼Kubernetes之后的第二個(gè)項(xiàng)目。
資溪網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)建站,資溪網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為資溪1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營(yíng)銷網(wǎng)站建設(shè)要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的資溪做網(wǎng)站的公司定做!
普羅米修斯的主要特征是:
多維數(shù)據(jù)模型,時(shí)間序列數(shù)據(jù)由度量名稱和鍵/值對(duì)標(biāo)識(shí)
PromQL是一種靈活的查詢語(yǔ)言,可以利用這種維度
不依賴分布式存儲(chǔ);單個(gè)服務(wù)器節(jié)點(diǎn)是自治的
時(shí)間序列收集通過(guò)HTTP上的拉模型進(jìn)行
通過(guò)中間網(wǎng)關(guān)支持時(shí)間序列的推送
通過(guò)服務(wù)發(fā)現(xiàn)或靜態(tài)配置發(fā)現(xiàn)目標(biāo)
Prometheus生態(tài)系統(tǒng)包含多個(gè)組件,其中許多是可選的:
Prometheus主服務(wù)器,它會(huì)刮取并存儲(chǔ)時(shí)間序列數(shù)據(jù)
客戶端庫(kù),用于檢測(cè)應(yīng)用程序代碼
一個(gè)支持短期工作的推送網(wǎng)關(guān)
諸如HAProxy,StatsD,Graphite等服務(wù)的專用出口商
一個(gè)alertmanager處理警報(bào)
各種支持工具
大多數(shù)Prometheus組件都是用Go編寫(xiě)的,因此易于構(gòu)建和部署為靜態(tài)二進(jìn)制文件。
下圖說(shuō)明了Prometheus的體系結(jié)構(gòu)及其某些生態(tài)系統(tǒng)組件:
Prometheus直接或通過(guò)中介推送網(wǎng)關(guān)從已檢測(cè)作業(yè)中刪除指標(biāo),以用于短期作業(yè)。它在本地存儲(chǔ)所有報(bào)廢的樣本,并對(duì)這些數(shù)據(jù)運(yùn)行規(guī)則,以匯總和記錄現(xiàn)有數(shù)據(jù)中的新時(shí)間序列,或生成警報(bào)。Grafana或其他API使用者可以用來(lái)可視化收集的數(shù)據(jù)。
前提需要有helm環(huán)境:
helm install prometheus stable/prometheus
安裝成功,查看pod狀態(tài)會(huì)發(fā)現(xiàn)有兩個(gè)處于pending狀態(tài),是因?yàn)樾枰?qǐng)求pv
這里使用hostPath來(lái)創(chuàng)建pv
apiVersion: v1 kind: PersistentVolume metadata: name: prometheus-pv1 spec: capacity: storage: 2Gi volumeMode: Filesystem accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: /app/prometheus/pv1
查看pod狀態(tài)會(huì)發(fā)現(xiàn)有個(gè)pod會(huì)報(bào)錯(cuò),并查看日志是報(bào)錯(cuò)是容器名不同
真正的原因是因?yàn)槭褂玫膆oatPath,pvc請(qǐng)求的權(quán)限不夠,到worker節(jié)點(diǎn)給對(duì)應(yīng)的hostpath加777的權(quán)限即可,這是我通過(guò)rancher查看到的報(bào)錯(cuò)
msg="Error opening query log file" file=/data/queries.active err="open /data/queries.active: permission denied"
這里還需要修改Prometheus-server的Port類型為NodePort。
helm pull stable/grafana
tar xvf grafana-4.2.2.tgz
vim grafana/values.yaml #設(shè)置admin的密碼為admin123
helm install grafana ./grafana
由于grafana沒(méi)有使用持久存儲(chǔ),根據(jù)需求修改為hostpath持久存儲(chǔ),需要注意的是,宿主機(jī)目錄也需要777的權(quán)限
還需要需改grafana的svc類型為NodePort
訪問(wèn)web界面,用戶admin,密碼:admin123
填入Prometheus的地址
則表示驗(yàn)證通過(guò)
導(dǎo)入grafana的模板
這里選擇Prometheus
即可看到灰常華麗的儀表盤(pán)了
這里提供幾個(gè)模板的編號(hào):
10000,315,7249,5228,8685,8588
完美結(jié)束!