中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

西安網站建設陽建seo網站排名優(yōu)化公司

西安網站建設陽建,seo網站排名優(yōu)化公司,政府網站建設自評,旅游景區(qū)網站開發(fā)的政策可行性docker容器監(jiān)控一、前言二、cAdvisor2.1、安裝cAdvisor2.2、使用Prometheus監(jiān)控cAdvisor2.3、cAdvisor暴露的Prometheus指標三、Node Exporter3.1、安裝Node Exporter3.2、指標四、Prometheus4.1、安裝4.2、規(guī)則配置4.3、報警管理器五、grafana一、前言 cAdvisor源碼 node exp…

docker容器監(jiān)控

  • 一、前言
  • 二、cAdvisor
    • 2.1、安裝cAdvisor
    • 2.2、使用Prometheus監(jiān)控cAdvisor
    • 2.3、cAdvisor暴露的Prometheus指標
  • 三、Node Exporter
    • 3.1、安裝Node Exporter
    • 3.2、指標
  • 四、Prometheus
    • 4.1、安裝
    • 4.2、規(guī)則配置
    • 4.3、報警管理器
  • 五、grafana

一、前言

cAdvisor源碼
node exporter源碼

prometheus:
官方文檔
PromQL文檔
prometheus源碼
報警管理器文檔
報警管理器源碼
中文文檔

二、cAdvisor

cAdvisor讓容器用戶了解容器的資源使用情況和性能特征。用于收集、聚合、處理和導出有關正在運行的容器的信息。它為每個容器保存資源隔離參數(shù)、歷史資源使用情況、完整歷史資源使用直方圖和網絡統(tǒng)計信息。

簡而言之:對容器進行實時監(jiān)控和性能數(shù)據(jù)采集,包括CPU、內存、網絡、文件系統(tǒng)等資源的使用情況。

2.1、安裝cAdvisor

  1. 下載二進制文件:
wget  https://github.com/google/cadvisor/releases/download/v0.46.0/cadvisor-v0.46.0-linux-amd64
  1. 編寫Dockerfile構建容器(Dockerfile)。
# ubuntu作為基礎鏡像
FROM ubuntu:latest
LABEL cadvisor 0.46.0
# 將下載的二進制文件復制到容器里
COPY ./cadvisor-v0.46.0-linux-amd64 /usr/bin/cadvisor
# 賦予權限
RUN chmod +x /usr/bin/cadvisor
# 指定程序入口,這里使用ENTERYPOINT而不使用CMD的原因是cadvisor啟動時有很多的啟動參數(shù),
# 使用CMD會需要指定太多參數(shù),不夠簡潔。
ENTRYPOINT ["/usr/bin/cadvisor"]
  1. 構建鏡像。
docker build -t cadvisor:0.46.0 .
  1. 運行容器。
docker run \
--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 \
--userns=host \
--privileged \
--device=/dev/kmsg \
cadvisor:0.46.0
  1. web訪問監(jiān)控圖標。
http://localhost:8080

在這里插入圖片描述
在這里插入圖片描述

2.2、使用Prometheus監(jiān)控cAdvisor

cAdvisor將容器和硬件統(tǒng)計數(shù)據(jù)公開為Prometheus開箱即用的指標。默認情況下,這些指標在http端點的/metrics路徑下。例如:http://192.168.0.106:8080/metrics??梢酝ㄟ^設置-
prometheus_endpoint和-disable_metrics或-enable_metrics命令行標志來自定義此端點:

  1. -disable_metrics:要禁用的指標的逗號分隔列表。選項包括:
    accelerator,advtcp,app,cpu,cpuLoad,cpu_topology,cpuset,disk,diskIO,hugetlb,memory,memory_numa,network,oom_event,percpu,perf_event,process,referenced_memory,resctrl,sched,tcp,udp。默認值:
    advtcp,cpu_topology,cpuset,hugetlb,memory_numa,process,referenced_memory,resctrl,sched,tcp,udp。
  2. -enable_metrics:要啟用的指標的逗號分隔列表,如果設置則覆蓋-disable_metrics選項。選項包括:
    accelerator,advtcp,app,cpu,cpuLoad,cpu_topology,cpuset,disk,diskIO,hugetlb,memory,memory_numa,network,oom_event,percpu,perf_event,process,referenced_memory,resctrl,sched,tcp,udp。
  3. -prometheus_endpoint:暴露普羅米修斯指標的端點(默認為“/metrics”)。
  4. 示例:
docker run \
--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 \
--userns=host \
--privileged \
--device=/dev/kmsg \
cadvisor:0.46.0 -disable_metrics cpu,cpuLoad

2.3、cAdvisor暴露的Prometheus指標

容器指標:

  1. 文檔。
  2. 指標:
    在這里插入圖片描述

硬件指標:

  1. 文檔。
  2. 指標:
    在這里插入圖片描述

三、Node Exporter

Node Exporter 是prometheus官方提供的agent,項目被托管在prometheus的賬號之下。用于收集主機的硬件和操作系統(tǒng)指標。

3.1、安裝Node Exporter

  1. 啟動容器,默認端口為9100
# 安裝Node Exporter 來收集硬件信息
docker run -d \
--net="host" \
--pid="host" \
--userns="host" \
-v "/:/host:ro,rslave" \
--name node_exporter \
quay.io/prometheus/node-exporter:latest \
--path.rootfs=/host
  1. 訪問http端點,查看指標
http://192.168.0.106:9100/metrics

在這里插入圖片描述

  1. –collector. 啟用指標,–no-collector. 禁用指標,–collector.disable-defaults 禁用所有默認啟用的指標。例如:
docker run -d \
--net="host" \
--pid="host" \
--userns="host" \
-v "/:/host:ro,rslave" \
--name node_exporter \
quay.io/prometheus/node-exporter:latest \
--path.rootfs=/host \
--collector.disable-defaults \
--collector.arp --collector.bcache

3.2、指標

默認啟用指標:

  1. 文檔
  2. 指標:
    在這里插入圖片描述

默認禁用指標:

  1. 文檔
  2. 禁用指標的原因:高基數(shù);運行時長超過Prometheus scrap_interval或scrap_timeout設置的時長;對主機資源消耗巨大。因此,啟用默認禁用指標需慎重,按需啟用。
  3. 指標:
    在這里插入圖片描述

四、Prometheus

一個開源的監(jiān)控和報警系統(tǒng),通過定時收集采集端的數(shù)據(jù),經過計算存入到時序數(shù)據(jù)庫。通過PromQL對時序數(shù)據(jù)庫中的指標進行計算,從而分析出系統(tǒng)的狀態(tài)。通過定時評估指定的基于PromQL的表達式從而實現(xiàn)警告的觸發(fā)。

4.1、安裝

(1)配置文件(promethus.yml),配置的編寫可以參考官網的說明。

global:# 每20s獲取一次數(shù)據(jù)指標scrape_interval: 20s# 獲取數(shù)據(jù)超時時長 10sscrape_timeout: 10s# 規(guī)則評估評率,即計算指標是否有觸發(fā)規(guī)則的計算頻率evaluation_interval: 20s
# 規(guī)則文件,從所有匹配的文件中讀取規(guī)則和警報
rule_files:- "alertRule.yml"- "recordRule.yml"
# 采集配置列表
scrape_configs:
- job_name: 'cadvisor'static_configs:- targets:- 192.168.0.106:8080
- job_name: 'node'static_configs:- targets:- 192.168.0.106:9100- 192.168.0.142:9100- 192.168.0.143:9100
- job_name: 'prometheus'static_configs:- targets:- 192.168.0.106:9090
# 報警管理
alerting:alertmanagers:- static_configs:- targets: ['192.168.20.106:9093']

(2)啟動容器。

docker run -itd --name prometheus -p 9090:9090 \
-v /opt/prometheus:/etc/prometheus \
prom/prometheus --config.file=/etc/prometheus/prometheus.yml

(3)訪問端點:http://192.168.0.106:9090
(4)指標類型:

  • Counter:計數(shù)器,只增不減,用于描述某個指標的累計狀態(tài)。比如cpu總使用時長:node_cpu_seconds_total
  • Gauge:可增可減的計量器,用于描述某個指標的當前狀態(tài),比如空閑內存空間:node_memory_MemFree_bytes

(5)5分鐘CPU使用率表達式,1 - 5分鐘內增量空閑CPU/5分鐘內增量總CPU ,按instance分組。由于node_cpu_seconds_total指標是一個counter類型,所以該指標是一直累計CPU使用量,因此需要以增量來獲取CPU的量。表達式如下:

100- sum(increase(node_cpu_seconds_total{mode="idle"}[5m])) by (instance)/sum(increase(node_cpu_seconds_total[5m])) by (instance) * 100

(6) 機器平均負載,node_load1 1分鐘平均負載,node_load5 5分鐘平均負載,node_load15 15分鐘平均負載。

node_load1
node_load5
node_load15

(7)內存使用率,node_memory_MemTotal_bytes 總內存,node_memory_MemFree_bytes 空閑內存,node_memory_Buffers_bytes 緩沖緩存,node_memory_Cached_bytes 頁面緩存。公式:總內存 -(空閑內存 + 緩沖緩存 + 頁面緩存))/ 總內存 * 100。

(node_memory_MemTotal_bytes - (node_memory_MemFree_bytes + node_memory_Buffers_bytes+node_memory_Cached_bytes ))/node_memory_MemTotal_bytes * 100

(8) 磁盤空間使用率,node_filesystem_avail_bytes 可用字節(jié)數(shù) ,node_filesystem_size_bytes 總字節(jié)數(shù)。

node_filesystem_avail_bytes{mountpoint="/"} / node_filesystem_size_bytes{mountpoint="/"} * 100

4.2、規(guī)則配置

(1)規(guī)則檢查:

promtool check rules /path/to/example.rules.yml

(2)記錄規(guī)則:

roups:
- name: RecordCpurules:- record: Cpu15mRateexpr: 100- sum(increase(node_cpu_seconds_total{mode="idle"}[15m])) by (instance)/sum(increase(node_cpu_seconds_total[15m])) by (instance) * 100labels:CpuRate: 15

(3)報警規(guī)則:

groups:
# 組名
- name: node_health# 規(guī)則rules:# 報警名稱- alert: InstanceDown# 基于PromQL的條件表達式expr: up == 0# 評估等待時間,表示,觸發(fā)條件表達式后,等待一段時間發(fā)送報警信息for: 1m# 自定義label 標簽labels:NodeHealth: false# 附加信息,比如詳細的描述報警情況annotations:# 摘要summary: "Instance {{ $labels.instance }} down"# 詳情  description: " {{ $labels.instance }} of job {{ $labels.job }} has been down for more than 1 minutes "
- name: node_resourcerules:- alert: Cpu5mRateexpr: 100- sum(increase(node_cpu_seconds_total{mode="idle"}[5m])) by (instance)/sum(increase(node_cpu_seconds_total[5m])) by (instance) * 100 > 2labels:CpuRate: hightannotations:# 摘要summary: "Instance {{ $labels.instance }} 5分鐘CPU使用率過高"# 詳情description: " {{ $labels.instance }} of job {{ $labels.job }} 5分鐘CPU使用率過高 "
- alert: NodeLoad15expr: node_load15 > 0.8labels:NodeLoad15: hightannotations:# 摘要summary: "Instance {{ $labels.instance }} 15分鐘平均負載過高請留意"# 詳情description: " {{ $labels.instance }} of job {{ $labels.job }} 15分鐘平均負載過高 "
- alert: MemRateexpr: (node_memory_MemTotal_bytes - (node_memory_MemFree_bytes + node_memory_Buffers_bytes+node_memory_Cached_bytes ))/node_memory_MemTotal_bytes * 100 > 20labels:NodeMemRate: hightannotations:# 摘要summary: "機器內存使用率過高"# 詳情description: "機器內存使用率超過20%,請留意"
- alert: DiskRateexpr: node_filesystem_avail_bytes{mountpoint="/"} / node_filesystem_size_bytes{mountpoint="/"} * 100 > 80labels:DiskRate: hightannotations:# 摘要summary: "機器磁盤使用率過高"# 詳情description: "機器磁盤使用率超過80%,請留意"

(4)配置文件中指定規(guī)則文件:

rule_files:- "alertRule.yml"- "recordRule.yml"

4.3、報警管理器

報警管理器負責接收prometheus產生的報警,對報警消息進行管理。
例如:

  • 去重:對同時觸發(fā)的多個相同的警報去重。
  • 分組:同一個組的所有警報信息將被合并為一個警報通知,避免一次性接收大量的警告通知。
  • 路由:可根據(jù)情況配置路由,通知不同角色的運維人員。
  • 抑制:當某一個警告發(fā)出后,可以停止重復發(fā)送由此警告引發(fā)的其他警告。
  • 靜默:被靜默的標簽將不會進行警告通知。

(1)啟動報警管理器。

docker run --name alertmanager -d -p 9093:9093 quay.io/prometheus/alertmanager

(2)添加配置到prometheus 配置文件。

# 報警管理
alerting:alertmanagers:- static_configs:- targets: ['192.168.0.106:9093']

(3) 訪問http://192.168.0.106:9093可查看報警信息。

五、grafana

一個開源的監(jiān)控系統(tǒng)Web UI ,支持多種數(shù)據(jù)源。支持自定義看板,以及采用官方現(xiàn)有數(shù)據(jù)看板。

  1. 源碼地址
  2. 官網
  3. 安裝使用,默認用戶名:admin 默認密碼:admin。
docker run -d -p 3000:3000 --name=grafana -v /var/lib/grafana grafana/grafana-enterprise
  1. 幾個現(xiàn)有的grafana 模板:
1860 、9276、193、11600
  1. 去官網挑選模板:
    在這里插入圖片描述
    在這里插入圖片描述

求關注

http://www.risenshineclean.com/news/53913.html

相關文章:

  • zhaosf做這樣網站競價托管哪家公司好
  • 鄭州網站開發(fā)比較好的網絡公司網絡營銷管理
  • 如何不要錢做網站營銷模式有幾種
  • 在西寧做網站可以嗎目前小說網站排名
  • 網站開發(fā)與維護工資多少西安百度公司官網
  • 做教育的網站有哪些指數(shù)
  • 武進區(qū)城鄉(xiāng)建設局網站營銷網站搭建
  • 楊浦做網站公司買賣交易平臺
  • 網站建設方案書是什么意思近期新聞事件
  • 自己做的網站打不開外貿營銷網站建設介紹
  • 做網站特別注意什么軟文廣告平臺
  • 采購網站平臺電商軟文范例100字
  • 做網站北京公司西安seo關鍵詞推廣
  • 電子商務網站的建設目標是什么關鍵詞優(yōu)化軟件
  • 咨詢網站 模板高端網站建設企業(yè)
  • 網頁設計素材 旅游seo服務商
  • 國外網站模版免費下載百度電腦版下載
  • 娃哈哈網絡營銷策劃方案佛山seo培訓機構
  • 天津有哪些有名的網站建設公司近三天時政熱點
  • wordpress文章發(fā)布到專題江蘇網站seo
  • 企業(yè)門戶網站包括品牌營銷策劃有限公司
  • 培訓人員網站建設建站教程
  • 安徽科技學院官網百度seo sem
  • 加強縣政府網站建設的幾點建議連云港seo優(yōu)化公司
  • 做h網站風險網站如何優(yōu)化排名
  • 建站公司的工作流程百度熱議
  • 地推拉新接單網seo網站建站
  • wordpress表單編輯插件下載湖南靠譜的關鍵詞優(yōu)化
  • 網站底部懸浮廣告投放數(shù)據(jù)分析
  • 網站搭建中企動力第一推薦幾個靠譜的網站