国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Prometheus監(jiān)控實戰(zhàn)之node_exporter詳解

這篇具有很好參考價值的文章主要介紹了Prometheus監(jiān)控實戰(zhàn)之node_exporter詳解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

1 概述

2 功能

2.1 不同操作系統(tǒng)采集端

2.2?linux操作系統(tǒng)采集端

2.3 監(jiān)控指標

2.4 參數(shù)定義

2.4.1?默認啟用的參數(shù)

?2.4.2?默認不啟用的參數(shù)

2.5 啟動參數(shù)

3 安裝部署

3.1?下載

3.2?安裝配置

3.3 測試驗證

3.4 prometheus配置

3.5?在 grafana 中添加圖表?


1 概述

Prometheus監(jiān)控實戰(zhàn)之node_exporter詳解

?Exporter是Prometheus的指標數(shù)據(jù)收集組件。它負責(zé)從目標Jobs收集數(shù)據(jù),并把收集到的數(shù)據(jù)轉(zhuǎn)換為Prometheus支持的時序數(shù)據(jù)格式。 和傳統(tǒng)的指標數(shù)據(jù)收集組件不同的是,他只負責(zé)收集,并不向Server端發(fā)送數(shù)據(jù),而是等待Prometheus Server 主動抓取,node-exporter?默認的抓取url地址:http://ip:9100/metrics 。

因為環(huán)境原因,網(wǎng)絡(luò)不可達的場景,Prometheus可以使用Pushgateway這個組件推送node-exporter的指標數(shù)據(jù)到遠端Prometheus,node-exporter用于采集node的運行指標,包括node的cpu、load、filesystem、meminfo、network等基礎(chǔ)監(jiān)控指標,類似于zabbix監(jiān)控系統(tǒng)的的zabbix-agent。node-exporter由Prometheus官方提供、維護,屬于監(jiān)控指標收集類UNIX內(nèi)核操作系統(tǒng)的必備的exporter。

GitHub地址:https://github.com/prometheus/node_exporter#enabled-by-default。

2 功能

2.1 不同操作系統(tǒng)采集端

  • node-exporter用于采集類UNIX內(nèi)核的硬件以及系統(tǒng)指標
  • Windows系統(tǒng)使用 WMI-exporter
  • 采集NVIDIA的GPU指標,可以使用 prometheus-dcgm

2.2?linux操作系統(tǒng)采集端

根據(jù)不同的類UNIX操作系統(tǒng),node-exporter采集指標的支持也是不一樣的。

  • diskstats 支持 Darwin, Linux
  • cpu 支持 Darwin, Dragonfly, FreeBSD, Linux, Solaris等,

2.3 監(jiān)控指標

  • CPU
  • 內(nèi)存
  • 硬盤
  • 網(wǎng)絡(luò)流量
  • 文件描述符
  • 系統(tǒng)負載
  • 系統(tǒng)服務(wù)

2.4 參數(shù)定義

黑名單: 關(guān)閉某一項默認開啟的采集項,使用--no-collector參數(shù)可指定不需要的模塊,如果不指定,將使用默認配置。

白名單:關(guān)閉默認采集項而只開啟某些采集,使用--collector.disable-defaults參數(shù)關(guān)閉默認采集項,使用--collector.<name>指定開啟的采集項。

使用--collectors.enabled參數(shù)打開node_exporter默認的采集項。

部分參數(shù)默認關(guān)閉的原因是:

  • 太重

  • 太慢

  • 太多資源開銷

2.4.1?默認啟用的參數(shù)

Name Description OS
arp 從/proc/net/ARP中顯示ARP統(tǒng)計信息 Linux
bcache 顯示/sys/fs/bcache/中的bcache統(tǒng)計信息。 Linux
bonding 顯示Linux綁定接口的已配置和活動從屬設(shè)備的數(shù)量。 LInux
boottime 顯示從kern.boottime sysctl派生的系統(tǒng)啟動時間 Darwin, Dragonfly, FreeBSD, NetBSD, OpenBSD, Solaris
conntrack 顯示連接統(tǒng)計信息(如果沒有/proc/sys/net/netfilter/present,則不執(zhí)行任何操作)。 Linux
cpu 顯示CPU統(tǒng)計信息 Darwin, Dragonfly, FreeBSD, Linux, Solaris
cpufreq 顯示CPU頻率統(tǒng)計信息 Linux, Solaris
diskstats 顯示磁盤I/O統(tǒng)計信息。 Darwin, Linux, OpenBSD
edac 顯示錯誤檢測和更正統(tǒng)計信息。 Linux
entropy 顯示可用熵。 Linux
exec 顯示執(zhí)行統(tǒng)計信息。 Dragonfly, FreeBSD
filefd 顯示/proc/sys/fs/file-nr中的文件描述符統(tǒng)計信息。 Linux
filesystem 顯示文件系統(tǒng)統(tǒng)計信息,如使用的磁盤空間。 Darwin, Dragonfly, FreeBSD, Linux, OpenBSD
hwmon 暴露/sys/class/hwmon/中的硬件監(jiān)控和傳感器數(shù)據(jù)。 Linux
infiniband 顯示特定于InfiniBand和Intel OmniPath配置的網(wǎng)絡(luò)統(tǒng)計信息。 Linux
ipvs 顯示/proc/net/ip_vs中的IPVS狀態(tài)和/proc/net/ip_vs_stats中的統(tǒng)計信息。 Linux
loadavg 顯示平均負載。 Darwin, Dragonfly, FreeBSD, Linux, NetBSD, OpenBSD, Solaris
mdadm 在/proc/mdstat中顯示有關(guān)設(shè)備的統(tǒng)計信息(如果不存在/proc/mdtat,則不執(zhí)行任何操作)。 Linux
meminfo 顯示內(nèi)存統(tǒng)計信息。 Darwin, Dragonfly, FreeBSD, Linux, OpenBSD
netclass 顯示/sys/class/net中的網(wǎng)絡(luò)接口信息/ Linux
netdev 顯示網(wǎng)絡(luò)接口統(tǒng)計信息,如傳輸?shù)淖止?jié)數(shù)。 Darwin, Dragonfly, FreeBSD, Linux, OpenBSD
netstat 從/proc/net/netstat中顯示網(wǎng)絡(luò)統(tǒng)計信息。這是與netstat-s相同的信息。 Linux
nfs 從/proc/net/rpc/NFS中顯示NFS客戶端統(tǒng)計信息。這是與nfsstat-c相同的信息。 Linux
nfsd 從/proc/net/rpc/nfsd中顯示NFS內(nèi)核服務(wù)器統(tǒng)計信息。這與nfsstat-s的信息相同。 Linux
pressure 顯示/proc/pressure/中的壓力失速統(tǒng)計信息。 Linux (kernel 4.20+ and/or?CONFIG_PSI)
rapl 顯示/sys/class/powercap中的各種統(tǒng)計信息。 Linux
schedstat 顯示/proc/schedstat中的任務(wù)調(diào)度程序統(tǒng)計信息。 Linux
sockstat 顯示/proc/net/sockstat中的各種統(tǒng)計信息。 Linux
softnet 顯示/proc/net/softnet_stat中的統(tǒng)計信息 Linux
stat 顯示/proc/stat中的各種統(tǒng)計信息。這包括啟動時間、分叉和中斷。 Linux
textfile 顯示從本地磁盤讀取的統(tǒng)計信息。必須設(shè)置--collector.textfile.directory標志。 any
thermal_zone 顯示/sys/class/thermal中的熱區(qū)和冷卻設(shè)備統(tǒng)計信息。 Linux
time 顯示當(dāng)前系統(tǒng)時間。 any
timex 顯示選定的adjtimex(2)系統(tǒng)調(diào)用統(tǒng)計信息 Linux
udp_queues 顯示/proc/net/UDP和/proc/net/udp6中rx_queue和tx_queue的UDP總長度。 Linux
uname 顯示uname系統(tǒng)調(diào)用提供的系統(tǒng)信息。 Linux
vmstat 顯示/proc/vmstat中的統(tǒng)計信息。 Linux
xfs 顯示XFS運行時統(tǒng)計信息。 Linux (kernel 4.4+)
zfs 顯示ZFS性能統(tǒng)計信息。 Linux, Solaris

如果不想收集某個類型的指標,就使用--no-collector.<name>參數(shù),比如:

./node_exporter --no-collector.time

?2.4.2?默認不啟用的參數(shù)

默認不啟用的參數(shù)需要通過--collector.<name>參數(shù)來啟用,官方提供的不啟用的參數(shù)如下:

Name Description OS
buddyinfo 顯示/proc/buddyinfo報告的內(nèi)存碎片統(tǒng)計信息。 Linux
devstat 顯示設(shè)備統(tǒng)計信息 Dragonfly, FreeBSD
drbd 顯示分布式復(fù)制數(shù)據(jù)塊設(shè)備統(tǒng)計信息(至8.4版) LInux
interrupts 顯示詳細的中斷統(tǒng)計信息 Linux, OpenBSD
ksmd 從/sys/kernel/mm/ksm中顯示內(nèi)核和系統(tǒng)統(tǒng)計信息。 Linux
logind 顯示登錄名中的會話計數(shù)。 Linux
meminfo_numa 從logind中顯示會話計數(shù)。從/proc/meminfo_numa中顯示內(nèi)存統(tǒng)計信息。 Linux
mountstats 從/proc/self/mountstats中顯示文件系統(tǒng)統(tǒng)計信息。顯示詳細的NFS客戶端統(tǒng)計信息。 Linux
ntp 顯示本地NTP守護程序運行狀況以檢查時間 any
processes 顯示/proc中的聚合進程統(tǒng)計信息 Linux
qdisc 顯示排隊規(guī)則統(tǒng)計信息 Linux
runit 顯示排隊規(guī)則統(tǒng)計信息從runit中顯示服務(wù)狀態(tài)。 any
supervisord 從supervisord中顯示服務(wù)狀態(tài) any
systemd 從systemd中顯示服務(wù)和系統(tǒng)狀態(tài)。 Linux
tcpstat 從/proc/net/TCP和/proc/net/trcp6中顯示TCP連接狀態(tài)信息。(警告:當(dāng)前版本在高負載情況下可能存在性能問題。) Linux
wifi 顯示W(wǎng)iFi設(shè)備和站點統(tǒng)計信息。 Linux
perf 顯示基于性能的指標(警告:指標取決于內(nèi)核配置和設(shè)置)。 ?Linux

2.5 啟動參數(shù)

  • --web.listen-address:指定啟動端口,例如:--web.listen-address=":8080"。
  • --web.config.file=web-config.yml:指定配置文件。
  • --collector.systemd:收集主機上面運行服務(wù)的狀態(tài),啟用systemd收集器。
  • --collector.systemd.unit-include="(docker|sshd).service":指定systemd服務(wù),與--collector.systemd搭配使用。
  • –collector.vmstat.fields=^(oom_kill|pgpg|pswp|nr|pg.fault):監(jiān)控系統(tǒng)事件。
  • --collector.disable-defaults:禁用所有默認開啟的收集器。
  • --collector.< name>:指定開啟的收集器,與--collector.disable-defaults搭配使用。
  • --collector.textfile.directory="/opt/prom":自定義監(jiān)控數(shù)據(jù)目錄。
  • --web.telemetry-path="/metrics":指定metrics的路徑,默認為/metrics。
  • --web.disable-exporter-metrics:是否禁用go、prome默認的metrics。
  • ?--web.max-requests=40:最大并行請求數(shù),默認40,設(shè)置為0時不限制。
  • --log.level="info":日志等級: [debug, info, warn, error, fatal]。
  • ?--log.format=logfmt :設(shè)置日志打印target和格式: [logfmt, json]。
  • --version:版本號

3 安裝部署

3.1?下載

下載地址:

https://prometheus.io/download/

3.2?安裝配置

tar -zxvf node_exporter-0.18.1.linux-amd64.tar.gz
cp -rf node_exporter-0.18.1.linux-amd64 /usr/local/node_exporter
#啟動 
cd /usr/local/node_exporter/
nohup ./node_exporter --web.listen-address="192.168.10.131:9100" --log.level=warn &
#要想后臺運行就得加nohup,單獨加最后面的&都不管用

3.3 測試驗證


curl -g -X GET http://192.168.10.131:9100/metrics?collect[]=cpu

go_代表goruntime信息等
curl http://192.168.10.131:9100/metrics|grep go_
process_代表進程信息等
curl http://192.168.10.131:9100/metrics|grep process

3.4 prometheus配置

- job_name: node_exporter
    honor_timestamps: true
    scrape_interval: 5s
    scrape_timeout: 5s
    metrics_path: /metrics
    scheme: http
    follow_redirects: true
    static_configs:
      - targets:
        - 192.168.10.131:9100
    params:    ##配置比較雞肋,可以從node_exporter端過率
      collect[]: #node_exporter可以傳遞一個可選的收集器列表來過濾指標。該collect[]參數(shù)可以多次使用。
        - cpu
        - meminfo

重啟 prometheus,查看狀態(tài)

Prometheus監(jiān)控實戰(zhàn)之node_exporter詳解

基于發(fā)現(xiàn)配置prometheus

在prometheus 主配置文件配置定義子配置文件路徑

??-?job_name:?'node'
????static_configs:
????file_sd_configs:
????-?files:
??????-?metrics/node_exporter*.yaml
??????refresh_interval:?2m

在prometheus安裝目錄下的targets目錄下(在主配置文件定義metrics目錄不存在則手動創(chuàng)建)創(chuàng)建文件 node_exporter65.yaml。

- targets: ['192.168.111.65:9100']    # 如果有多個node_exporter,配置到[]中,隔開添加不需要重啟服務(wù),服務(wù)自動發(fā)現(xiàn)node_exporter客戶端
  labels:
   app: node-exporter
   job: node

3.5?在 grafana 中添加圖表?

Prometheus監(jiān)控實戰(zhàn)之node_exporter詳解

1)開啟alertmanager配置告警規(guī)則

prometheus 主配置文件配置定義子配置文件路徑

rule_files:
????-?"rules/*.yml"

2)prometheus 告警規(guī)則

在prometheus安裝目錄下的定義的rules目錄下(如果rules目錄不存在)創(chuàng)建文件 alarm_rule.yml,文章來源地址http://www.zghlxwxcb.cn/news/detail-435269.html

groups:
- name: hostStatsAlert
  rules:
  - alert: hostCpuUsageAlert
    expr: (1- avg(irate(node_cpu_seconds_total{instance=~"$node",mode="idle"}[30m])))*100>85
    for: 1m
    labels:
      level: disaster #定義一個等級標簽,用于altermanager 發(fā)送消息
    annotations:
      summary: "實例 {{ $labels.instance }} CPU使用率過高"
      description: "{{ $labels.instance }} CPU 使用率大于 85% (當(dāng)前值為: {{ $value }})"

  - alert: hostMemUsageAlert
    expr: (1 - (node_memory_MemAvailable_bytes / (node_memory_MemTotal_bytes)))* 100>85
    for: 1m
    labels:
      level: disaster
    annotations:
      summary: "實例 {{ $labels.instance }} 內(nèi)存使用率過高"
      description: "{{ $labels.instance }} 內(nèi)存使用率大于 85% (當(dāng)前的值: {{ $value }})"

  - alert: hostLoad
    expr: sum(node_load15) >= sum(count(node_cpu_seconds_total{mode='system'}) by (cpu)) and node_load1 > node_load5 and node_load5 > node_load15 
    for: 1m
    labels:
      level: disaster
    annotations:
      summary: "實例 {{ $labels.instance }} 15 分鐘負載過高"
      description: "{{ $labels.instance }} 15 分鐘負載大于其 cpu 核心數(shù) (當(dāng)前的值: {{ $value }})"

  - alert: hostUp
    expr: up{job="node"} == 0
    for: 1m
    labels:
      level: disaster
    annotations:
      summary: "實例 {{ $labels.instance }} 不可達"
      description: "{{ $labels.instance }} 實例不可達,請盡快解決"

到了這里,關(guān)于Prometheus監(jiān)控實戰(zhàn)之node_exporter詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • prometheus使用node_exporter監(jiān)控Linux主機CPU、內(nèi)存、磁盤、服務(wù)運行狀況

    prometheus使用node_exporter監(jiān)控Linux主機CPU、內(nèi)存、磁盤、服務(wù)運行狀況

    目錄 1.node_exporter簡介 2.部署node_exporter 2.1.安裝node_exporter 2.2.編寫system啟動腳本 3.prometheus監(jiān)控Linux主機 3.1.修改配置文件增加主機節(jié)點 3.2.主機添加成功 4.監(jiān)控Linux主機CPU、內(nèi)存、磁盤使用率 4.1.監(jiān)控CPU使用率 4.1.1.獲取空閑CPU監(jiān)控數(shù)據(jù) 4.1.2.獲取5分鐘內(nèi)的監(jiān)控數(shù)據(jù) 4.1.3.獲取5分鐘

    2024年04月16日
    瀏覽(52)
  • 【監(jiān)控系統(tǒng)】Prometheus監(jiān)控組件Node-Exporter配置實戰(zhàn)

    【監(jiān)控系統(tǒng)】Prometheus監(jiān)控組件Node-Exporter配置實戰(zhàn)

    這一節(jié),我們來配置一下Node-Exporter,那么我們先來了解一下什么是Prometheus的Exporter? 任何向Prometheus提供監(jiān)控樣本數(shù)據(jù)的程序都可以被稱為一個Exporter,它是一種用于將不同數(shù)據(jù)源的指標提供給Prometheus進行收集和監(jiān)控的工具。運行在應(yīng)用程序、計算機、網(wǎng)絡(luò)設(shè)備或者其他系統(tǒng)

    2024年02月15日
    瀏覽(23)
  • Linux部署docker以及prometheus+node_exporter+mysqld-exporter+grafana+cadvisor+Alertmanager(告警)

    Linux部署docker以及prometheus+node_exporter+mysqld-exporter+grafana+cadvisor+Alertmanager(告警)

    Linux安裝docker以及部署prometheus+node_exporter+mysqld-exporter+grafana+cadvisor+Alertmanager(告警) 1、官方安裝腳本自動安裝docker curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 2、啟動docker systemctl start docker 3、搜索鏡像-例如搜索prometheus docker search prom/prometheus 4、拉取鏡像--這里僅列出我

    2024年03月15日
    瀏覽(28)
  • Linux 集群監(jiān)控部署:prometheus + node-exporter + Grafana

    Linux 集群監(jiān)控部署:prometheus + node-exporter + Grafana

    之前我們有用到top、free、iostat等等命令,去監(jiān)控服務(wù)器的性能,但是這些命令,我們只針對單臺服務(wù)器進行監(jiān)控,通常我們線上都是一個集群的項目,難道我們需要每一臺服務(wù)器都去敲命令監(jiān)控嗎?這樣顯然不是符合邏輯的,Linux中就提供了一個集群監(jiān)控工具 – prometheus。

    2024年02月04日
    瀏覽(26)
  • k8s集群監(jiān)控方案--node-exporter+prometheus+grafana

    k8s集群監(jiān)控方案--node-exporter+prometheus+grafana

    目錄 前置條件 一、下載yaml文件 二、部署yaml各個組件 2.1 node-exporter.yaml 2.2 Prometheus 2.3 grafana 2.4訪問測試 三、grafana初始化 3.1加載數(shù)據(jù)源 3.2導(dǎo)入模板 四、helm方式部署 安裝好k8s集群(幾個節(jié)點都可以,本人為了方便實驗k8s集群只有一個master節(jié)點),注意prometheus是部署在k8s集群

    2024年02月12日
    瀏覽(91)
  • 【監(jiān)控系統(tǒng)】Prometheus監(jiān)控組件Mysql-Exporter配置實戰(zhàn)

    【監(jiān)控系統(tǒng)】Prometheus監(jiān)控組件Mysql-Exporter配置實戰(zhàn)

    Mysql-Exporter主要監(jiān)控Mysql數(shù)據(jù)庫的穩(wěn)定性、吞吐量、連接情況、緩沖池使用情況、查詢性能等各項指標,是我們壓測時常常需要監(jiān)控的一些指標。 目前,Exporter 支持高于5.6版本的 MySQL 和高于10.1版本的 MariaDB。在 MySQL/MariaDB 低于5.6版本時,部分監(jiān)控指標可能無法被采集。 OK,下

    2024年02月16日
    瀏覽(19)
  • 配置node_exporter

    配置node_exporter

    在Prometheus的架構(gòu)設(shè)計中,PrometheusServer并不直接服務(wù)監(jiān)控特定的目標,其主要任務(wù)負責(zé)數(shù)據(jù)的收集,存儲并且對外提供數(shù)據(jù)查詢支持。因此為了能夠能夠監(jiān)控到某些東西,如主機的CPU使用率,我們需要使用到Exporter。Prometheus周期性的從Exporter暴露的HTTP服務(wù)地址(通常是/metric

    2024年02月10日
    瀏覽(23)
  • 運維學(xué)習(xí)之采集器 node_exporter 1.3.1安裝并使用

    運維學(xué)習(xí)之采集器 node_exporter 1.3.1安裝并使用

    參考《監(jiān)控系統(tǒng)部署prometheus基本功能》先完成prometheus部署。 wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz 下載壓縮包。 tar -zxf node_exporter-1.3.1.linux-amd64.tar.gz 進行解壓。 cp node_exporter-1.3.1.linux-amd64/* /opt/prometheus/ 進行復(fù)制。 nohup /opt/pr

    2024年02月09日
    瀏覽(22)
  • 關(guān)于k8s中的node_exporter異常write: broken pipe問題排查

    關(guān)于k8s中的node_exporter異常write: broken pipe問題排查

    公司網(wǎng)絡(luò)更改重啟服務(wù)器后,發(fā)現(xiàn)Prometheus監(jiān)控中node節(jié)點三個掛掉了,實際上節(jié)點服務(wù)器是正常的,但是監(jiān)控的node_exporter請求http://IP:9100/metrics超過10秒沒有獲取返回數(shù)據(jù)則認為服務(wù)掛掉。 到各個節(jié)點服務(wù)器用curl命令檢測多久返回數(shù)據(jù) time_connect :連接時間,從開始到TCP三次握

    2024年02月10日
    瀏覽(18)
  • 助力工業(yè)物聯(lián)網(wǎng),工業(yè)大數(shù)據(jù)之服務(wù)域:node_exporter插件【三十七】_node_expoter 電源(1)

    助力工業(yè)物聯(lián)網(wǎng),工業(yè)大數(shù)據(jù)之服務(wù)域:node_exporter插件【三十七】_node_expoter 電源(1)

    小結(jié) 實現(xiàn)node_exporter插件的安裝監(jiān)控Linux指標 07:mysqld_exportor插件 目標 : 實現(xiàn)mysqld_exportor插件的安裝監(jiān)控MySQL指標 實施 上傳安裝 配置MySQL用戶授權(quán) 注冊服務(wù) 啟動服務(wù) 配置Prometheus 自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進入

    2024年04月15日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包