基礎監控;服務器基礎指標(cpu load、內存、用戶線程數、端口連接數、存儲)
語言相關比如jvm以及go、php等
基礎中間件監控;redis、mysql、rabbitmq
應用監控;應用接口調用頻率、應用接口響應時間、應用接口異常次數
根據監控指標可配置定制化的閾值告警
2、在多維度上靈活的查詢語言(PromQl)
3、不依賴分布式存儲(內置數據庫),單主節點工作.
4、基于HHTP的pull方式采集時間序列數據
5、可以通過pushgateway進行時序列數據推送(pushing)
6、可以通過服務發現或者靜態配置去獲取要采集的目標服務器
通常有兩種方式:
1、侵入式埋點監控(直接采集),通過在客戶端集成,如果Kubernetes API直接通過引入Prometheus go client,提供/metrics接口查詢kubernetes API各種指標;這一類Exporter直接內置了對Prometheus監控的支持,比如cAdvisor,Kubernetes,Etcd,Gokit等,都直接內置了用于向Prometheus暴露監控數據的端點。
HTTP返回Header和Body如上圖所示,指標前面兩行#是注釋,標識指標的含義和類型。指標和指標的值通過空格分割,開發者通常不需要自己拼接這種個數的數據, Prometheus提供了各種語言的SDK支持。
prometheus server:主要獲取和存儲時間序列數據
exporters:主要是作為agent收集數據發送到prometheus server,不同的數據收集由不同的exporters實現,如監控主機有node-exporters,mysql有MySQL server exporters。
pushgateway:允許短暫和批處理的jobs推送它們的數據到prometheus;由于這類工作的存在時間不夠長,所以需要他們主動將數據推送到pushgateway,然后由pushgateway將數據發送的prometheus。
prometheus直接或通過pushgateway抓取數據。(短周期任務數據)
將數據存儲在本地,并對這些數據運行規則,以便從現有數據聚合和記錄新時間序列,或者生成警報。
Prometheus targets:采集mysql數據,
▼▼▼
tar -zxvf /usr/local/src/prometheus-2.17.1.linux-amd64.tar.gz -C /usr/local
ln -s /usr/local/src/prometheus-2.17.1.linux-amd64 /usr/local/prometheus
chown -R prometheus:prometheus /usr/local/prometheus/
▼▼▼
cat >/etc/systemd/system/prometheus.service<
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/ After=network.target
[Service] Type=simple User=prometheus
ExecStart=/usr/local/prometheus/prometheus
config.file=/usr/local/prometheus/prometheus.yml
storage.tsdb.path=/var/lib/prometheus
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
查看日志
瀏覽器輸入http://192.168.**.***:9090/
下載并解壓node_exporter
wget -P /usr/local/srchttps://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.0/node_exporter-1.0.0-rc.0.linux-amd64.tar.gz
tar -zxvf /usr/local/src/node_exporter-1.0.0-rc.0.linux-amd64.tar.gz -C /usr/local
建立軟連接
ln -s /usr/local/node_exporter-1.0.0-rc.0.linux-amd64/ /usr/local/node_exporter
添加用戶名和用戶組
group add prometheus
useradd -g prometheus -s /sbin/nologinprometheus
給node_exporter主目錄賦權限
chown -R prometheus:prometheus /usr/local/node_exporter/
啟動并設置開機自啟
systemctl start node_exporter
systemctl enable node_exporter
檢查node_exporter是否已啟動node_exporter默認的端口是9100
systemctl status node_exporter
ss -ntl |grep 9100
直接關閉防火墻
systemctl stop firewalld
systemctl disable firewalld
在prometheus的web上檢查是否監控到了本機
global:
scrape_interval: 15s //全局配置,多久搜集一次
evaluation_interval: 15s //全局配置,多久搜集一次
rule_files: //規則文件
# - "first.rules"
# - "second.rules"
scrape_configs: //搜集的配置
- job_name: prometheus //監控的服務名稱
static_configs:
- targets: [localhost:9090] //監控入口
多個地址依次添加即可。
下載Grafana的rpm包
wgethttps://dl.grafana.com/oss/release/grafana-6.7.2-1.x86_64.rpm
安裝Grafana
yum install grafana-6.7.2-1.x86_64.rpm
啟動grafana,并設置其開機自啟
systemctl restart grafana-server
systemctl enable grafana-server
瀏覽器打開Grafana主頁 http://192.168.48.150:3000/
配置數據源類型Prometheus,并設置相關參數
總結:上文提到 Prometheus 是一款基于時序數據庫的監控系統,時序數據庫常簡寫為 TSDB(Time Series Database)。很多流行的監控系統都在使用時序數據庫來保存數據,這是因為時序數據庫的特點和監控系統不謀而合。本次分享到此結束,如有錯誤之處,還請多多指出。
更多精彩干貨分享
點擊下方名片關注
IT那活兒
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129925.html
摘要:二可視化是一個開源的圖表可視化系統,簡單說圖表配置比較方便生成的圖表比較漂亮。 一. 概述 Prometheus自帶了一個web服務,包括一個默認的dashboard,可以使用表達式查詢并進行圖表可視化,默認服務的地址為:http://prometheus_ip:9090 如下圖: showImg(https://segmentfault.com/img/remote/14600000...
摘要:二可視化是一個開源的圖表可視化系統,簡單說圖表配置比較方便生成的圖表比較漂亮。 一. 概述 Prometheus自帶了一個web服務,包括一個默認的dashboard,可以使用表達式查詢并進行圖表可視化,默認服務的地址為:http://prometheus_ip:9090 如下圖: showImg(https://segmentfault.com/img/remote/14600000...
摘要:二可視化是一個開源的圖表可視化系統,簡單說圖表配置比較方便生成的圖表比較漂亮。 一. 概述 Prometheus自帶了一個web服務,包括一個默認的dashboard,可以使用表達式查詢并進行圖表可視化,默認服務的地址為:http://prometheus_ip:9090 如下圖: showImg(https://segmentfault.com/img/remote/14600000...
摘要:行業內各巨頭的自動化運維架構都各種功能各種酷炫,如下圖,讓人可望不可及。面對這么多問題,我就想啊,如何在低成本情況下實現自動化運維。自動擴縮容通過配置告警規則,調用相應就可以實現實戰以上就是筆者關于自動化運維的一些實踐。 行業內各巨頭的自動化運維架構都各種功能各種酷炫,如下圖,讓人可望不可及。現在最終的樣子大家都知道了,但問題是如何根據自己團隊當前的情況一步步向那個目標演進?筆者所在團隊,三...
摘要:其他監控類服務管理其他監控類服務管理其他監控類服務管理其他監控類服務還包括等,對這些監控服務的管理方式,均與本篇指南中服務管理的管理方式類似,此處不再過多贅述。 監控類服務管理本篇目錄Prometheus服務管理Grafana服務管理其他監控類服務管理在USDP1.0.0.0版本中,集群監控類服務組件主要有AlterManager、Grafana、InfluxDB、NodeExporter、...
摘要:在和未普及之前,要實現的搭建確實要費一番工夫的,不過現在則很簡單就可以實現的監控了。下載鏡像使用方式下載極為方便,只需要執行如下命令即可,當然前提是需要安裝了。 一、背景 對于LNMP環境下的開發者來說,mysql是非常重要的一環,同時mysql的性能監控也是開發者所需要關注的一環;如果大家使用阿里云的RDS會感覺到其監控功能非常好用,但如果開發者使用的是自建數據庫,該怎么去搭建則需則...
閱讀 1346·2023-01-11 13:20
閱讀 1684·2023-01-11 13:20
閱讀 1132·2023-01-11 13:20
閱讀 1858·2023-01-11 13:20
閱讀 4100·2023-01-11 13:20
閱讀 2704·2023-01-11 13:20
閱讀 1385·2023-01-11 13:20
閱讀 3597·2023-01-11 13:20