日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
無痛入門Prometheus:一個強大的開源監(jiān)控和告警系統(tǒng),安裝使用

一、前生今世

Prometheus 是完全開源的系統(tǒng)監(jiān)控和告警工具包,它受 Google 內部的 BorgMon 監(jiān)控系統(tǒng)啟發(fā),由前Google 工程師從 2012 年開始在 SoundCloud 以開源軟件的形式進行研發(fā),自此以后,許多公司和組織都采用了Prometheus 作為監(jiān)控告警工具。Prometheus 的開發(fā)者和用戶社區(qū)非?;钴S,它現(xiàn)在是一個獨立的開源項目,可以獨立于任何公司進行維護。

自2012年推出以來,許多公司和組織都采用了Prometheus,該項目擁有非常活躍的開發(fā)者和用戶社區(qū)。它現(xiàn)在是一個獨立的開源項目,獨立于任何公司進行維護。為了強調這一點,并明確項目的治理結構,Prometheus 于 2016 年加入 云原生計算基金會,成為繼Kubernetes之后的第二個托管項目。

Prometheus的主要特點是:

  • 多維數(shù)據(jù)模型,其中時間序列數(shù)據(jù)由指標名稱和鍵/值對標識。
  • PromQL,一種 利用此維度的靈活查詢語言。
  • 不依賴分布式存儲;單個服務器節(jié)點是自治的。
  • 時間序列收集通過 HTTP 上的拉模型進行。
  • 通過中間網關支持推送時間序列。
  • 通過服務發(fā)現(xiàn)或靜態(tài)配置發(fā)現(xiàn)目標。
  • 多種圖形和儀表板支持模式。

二、架構圖

下圖說明了 Prometheus 的架構及其一些生態(tài)系統(tǒng)組件:

三、安裝

開啟內核路由轉發(fā)。

echo -e "net.ipv4.ip_forward = 1\nnet.ipv4.conf.default.rp_filter = 0 \nnet.ipv4.conf.all.rp_filter = 0" >> /etc/sysctl.conf  sysctl -p

創(chuàng)建配置文件。

vim prometheus.yml
# my global config
global:
  scrape_interval:     15s # 采集被監(jiān)控段指標的一個周期
  evaluation_interval: 15s # 告警評估的一個周期

# 告警的配置文件
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093

# 告警規(guī)則配置
rule_files:
  # - "first_rules.yml"
# 被監(jiān)控端的配置,目前只有一個節(jié)點,就是prometheus本身
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['localhost:9090']

啟動鏡像,將主配置文件掛載到容器內。

docker run -d  -p 9090:9090 \
--name prometheus  \
--restart on-failure  \
-v /data/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
prom/prometheus

執(zhí)行后需要下載鏡像文件,需要等待一會。

完全啟動后可以,訪問Prometheus自帶的UI:http://xx.xx.xx.xx:9090/。

自帶的WEB UI比較簡單,后面會說到功能比較全面dashboard grafana。

四、使用

cAdvisor 是 Google 開源的容器監(jiān)控工具,它可以收集容器的資源使用情況、網絡流量、文件系統(tǒng)使用情況等指標數(shù)據(jù)。cAdvisor 可以部署在 Kubernetes 集群中的每個節(jié)點上,以收集集群中所有容器的監(jiān)控數(shù)據(jù)。

cAdvisor 部署的目的如下:

  • 監(jiān)控容器的運行狀態(tài):cAdvisor 可以收集容器的資源使用情況、網絡流量、文件系統(tǒng)使用情況等指標數(shù)據(jù),這些數(shù)據(jù)可以幫助我們了解容器的運行狀態(tài),并及時發(fā)現(xiàn)異常情況。
  • 分析容器的性能瓶頸:通過分析 cAdvisor 收集的監(jiān)控數(shù)據(jù),我們可以分析容器的性能瓶頸,并采取措施進行優(yōu)化。
  • 提高容器的資源利用率:通過監(jiān)控容器的資源使用情況,我們可以合理分配資源,提高容器的資源利用率。

cAdvisor 是 Kubernetes 集群中必不可少的監(jiān)控工具,它可以幫助我們更好地了解和管理容器。

cAdvisor 的優(yōu)勢

  • 開源:cAdvisor 是完全開源的,可以免費使用。
  • 輕量級:cAdvisor 是一個輕量級的應用程序,不會給集群帶來太大的負載。
  • 易用:cAdvisor 的配置和使用都非常簡單。

cAdvisor 的缺點

  • 數(shù)據(jù)存儲能力有限:cAdvisor 默認會將監(jiān)控數(shù)據(jù)存儲在內存中,如果數(shù)據(jù)量較大,可能會導致內存溢出。
  • 可視化能力有限:cAdvisor 本身沒有提供可視化工具,需要使用第三方工具來可視化監(jiān)控數(shù)據(jù)。

cAdvisor 的部署

  • 使用 Helm 部署:Helm 是一個 Kubernetes 包管理工具,可以使用 Helm 來部署 cAdvisor。
  • 使用 Docker 部署:cAdvisor 可以作為 Docker 容器運行,可以使用 Docker 來部署 cAdvisor。
  • 手動部署:可以下載 cAdvisor 的二進制文件,并手動部署到 Kubernetes 集群中。

下面介紹docker部署cAdvisor:

docker run -d   \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro  \
--volume=/sys:/sys:ro  \
--volume=/var/lib/docker/:/var/lib/docker:ro  \
--volume=/dev/disk/:/dev/disk:ro \
--publish=8080:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor:latest

訪問該地址,就能看到實時采集到的數(shù)據(jù):http://xx.xx.xx.xx:8080/containers/。

http://xx.xx.xx.xx:8080/metrics/ 就是cAdvisor提供的數(shù)據(jù)接口。

然后修改prometheus.yml。

vim /data/prometheus/prometheus.yml

修改prometheus的配置文件,復制一個job文件,job_name 指名稱,targets為cAdvisor服務器地址ip和端口。

# global config
global:
  scrape_interval:     15s # 采集被監(jiān)控段指標的一個周期
  evaluation_interval: 15s # 告警評估的一個周期

# 告警的配置文件
alerting:
  alertmanagers:
  - static_configs:
    - targets:

# 告警規(guī)則配置
rule_files:
  # - "first_rules.yml"
# 被監(jiān)控端的配置,目前只有一個節(jié)點,就是prometheus本身
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['localhost:9090']
  - job_name: 'prometheus docker'
    static_configs:
    - targets: ['10.9.2.50:8080']

修改完成重啟prometheus。

docker restart prometheus

http://xx.xx.xx.xx:9090/targets 可以看到監(jiān)控指標說明獲取數(shù)據(jù)成功。

五、監(jiān)控界面

Grafana 是一個開源的監(jiān)控和可視化工具,它可以連接到各種數(shù)據(jù)源,并以圖表、儀表盤和報表的形式展示數(shù)據(jù)。Grafana 可以用于監(jiān)控任何類型的系統(tǒng),包括 Kubernetes 集群、Web 應用程序、IoT 設備等。

Grafana 的功能

  • 連接到各種數(shù)據(jù)源:Grafana 支持連接到各種數(shù)據(jù)源,包括 Prometheus、InfluxDB、Elasticsearch、MySQL、PostgreSQL 等。
  • 以圖表、儀表盤和報表的形式展示數(shù)據(jù):Grafana 提供了豐富的圖表類型,可以滿足不同的數(shù)據(jù)展示需求。
  • 支持自定義儀表盤:Grafana 允許用戶自定義儀表盤,以滿足特定的監(jiān)控需求。
  • 支持報警:Grafana 可以將報警通知發(fā)送到 Slack、郵件等方式。

Grafana 的優(yōu)勢

  • 開源:Grafana 是完全開源的,可以免費使用。
  • 靈活:Grafana 可以連接到各種數(shù)據(jù)源,并以各種方式展示數(shù)據(jù)。
  • 易用:Grafana 的配置和使用都非常簡單。

Grafana 的缺點

  • 數(shù)據(jù)存儲能力有限:Grafana 本身沒有提供數(shù)據(jù)存儲功能,需要使用第三方工具來存儲數(shù)據(jù)。
  • 可視化能力有限:Grafana 提供的圖表類型有限,可能無法滿足復雜的監(jiān)控需求。

Grafana 的部署

  • 使用 Docker 部署:Grafana 可以作為 Docker 容器運行,可以使用 Docker 來部署 Grafana。
  • 手動部署:可以下載 Grafana 的二進制文件,并手動部署到服務器上。

下面是docker方式部署grafana。

docker  run -d --name=grafana  -p 3000:3000  grafana/grafana

執(zhí)行后,下載鏡像并啟動。http://xx.xx.xx.xx:3000,默認用戶名/密碼:admin/admin。

選擇 "Add your first data source"。

進入后選擇Prometheus。

填寫相關信息。

添加Prometheus模板。

輸入id號,193。

下拉,選擇Prometheus,然后Import。

成功展示來由Prometheus數(shù)據(jù)。


分享文章:無痛入門Prometheus:一個強大的開源監(jiān)控和告警系統(tǒng),安裝使用
地址分享:http://www.5511xx.com/article/dpdsjgp.html