中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

Zabbix獲取Prometheus上的監控數據

1 zabbix安裝

官方文檔參考


 

1.1 zabbix軟件安裝

[root@zabbix zabbix]# rpm -Uvh //repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm ## 安裝zabbix倉庫
[root@zabbix zabbix]# yum clean all
[root@zabbix zabbix]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent ##安裝、前端、代理

 

1.2 數據庫安裝配置

1.2.1 數據庫安裝

[root@zabbix zabbix]# yum install 
[root@zabbix zabbix]# systemctl start mariadb
[root@zabbix zabbix]# systemctl enable mariadb
[root@zabbix zabbix]# mysql_secure_installation ##設置數據庫并進行安全配置

 

1.2.2 創建zabbix用戶并授權

[root@zabbix zabbix]# mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;

 

1.2.3 導入數據庫

[root@zabbix zabbix]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

 

1.3 中修改zabbix用戶數據庫密碼

[root@zabbix zabbix]# cat /etc/zabbix/zabbix_server.conf |grep -v "^#"|grep DBPassword

 

1.4 修改前端顯示時區

[root@zabbix zabbix]# grep timezone /etc/httpd/conf.d/zabbix.conf
      php_value date.timezone Asia/Shanghai

 

1.5 啟動zabbix相關服務

[root@zabbix zabbix]# systemctl restart zabbix-server zabbix-agent httpd
[root@zabbix zabbix]# systemctl enable zabbix-server zabbix-agent httpd

 

1.6 訪問zabbix

ui上輸出(chu)zabbix服(fu)務器地(di)址加/zabbix即(ji)可訪問到zabbix初始化(hua)頁面

//172.18.100.137/zabbix

 

2 zabbix初始化

2.1 環境檢查

查看(kan)是否(fou)有包或插件(jian)不滿足(zu)條件(jian)

 

 

2.2 數據庫配置

根據實(shi)際情況配置(zhi)zabbix使用(yong)的(de)數據庫(ku)及(ji)用(yong)戶名密碼等信息(xi)

 

2.3 zabbix服務配置

 

2.4 信息確認

 

2.5 配置完成

 

 

2.6 登錄zabbix

配置完成以后即可登錄zabbix,默認(ren)zabbix的(de)用(yong)戶名為Admin,密(mi)碼為zabbix

 

 

 

2.7 修改頁面為中文顯示

 

3 zabbix對接prometheus

3.1 前提條件

  • zabbix版本要大于4.2版本
  • 需要能訪問被管控節點的9100端口

在4.2及以上版本(ben)的zabbix中(zhong)(zhong),提供了prometheus pattern和prometheus to json兩(liang)種(zhong)監控項方式(shi)來處(chu)理prometheus的監控數(shu)據,我們可以通過(guo)http代理的方式(shi)無(wu)需安裝agent來管理prometheus中(zhong)(zhong)的主(zhu)機。

 

3.2 zstack中介紹

ZStack云(yun)平臺(tai)集成了(le)promehtus來獲取物理機及云(yun)主機的監(jian)控數據。其中(zhong)cpu、內存(cun)、磁盤、網絡等監(jian)控數據來源由安裝在(zai)物理機上的Prometheus客戶端node_exporter提供。node_exporter相關信(xin)息可參考

//github.com/prometheus/node_exporter

 

可(ke)以(yi)通過//{物(wu)理機(ji)ip}:9100/metrics來查看node_exporter獲取到(dao)的監控數據

 

 

上述(shu)輸出中高亮(liang)部分,node_cpu_guest_seconds_total為(wei)(wei)metric名,cpu、mode為(wei)(wei)label名,26和user為(wei)(wei)兩(liang)個lable的值(zhi)。55184.82為(wei)(wei)metric的實際值(zhi)。

 

3.3 創建一個

創建一個名為prometheus_node的主機群組(zu)

 

 

3.4 創建一個主機

創建一個(ge)主機(ji),填寫好以下信息(xi),主機(ji)無需(xu)安裝任(ren)何zabbix代理(li)

  • 主機名稱:填寫好主機名稱
  • 群組:選擇我們剛創建好的群組
  • 接口:填寫要添加的主機的ip地址,后面的端口無需配置保持默認即可
  • 檢測:選擇無agent代理程序

 

 

3.5 創建一個http代理類型的監控項

該代理的(de)作用為(wei)為(wei)后(hou)續的(de)監控項提供數據來源,進入剛創建(jian)的(de)主機頁(ye)面,點擊監控項,填(tian)寫以(yi)下信息,創建(jian)一個(ge)http代理類型的(de)監控項。

  • 名稱:填寫監控項的名稱
  • 類型:http代理
  • 鍵值:master
  • URL:填寫物理機的監控數據地址
  • 主機接口:選擇我們剛剛創建的主機
  • 信息類型:文本
  • 更新間隔:5s
  • 歷史數據保留時長:do not keep history

其余(yu)項(xiang)保持默認即可,設置完成后點擊添加。

 

 

 

3.6 監控

下面(mian)通(tong)過創建(jian)一個指標來獲取網卡br_bond1的傳輸包總量(liang)

3.6.1 創建一個Dependent item

首先查看相(xiang)關(guan)的指標信(xin)息。監控項相(xiang)關(guan)信(xin)息參考(kao)

//lnsyyj.github.io/2019/05/27/prometheus-node-exporter-%E7%9B%91%E6%8E%A7%E9%A1%B9/

主機下新建(jian)一個監控項

  • 名稱:填寫監控項的名稱,可以以metric name和label name命名
  • 類型:相關項目(Dependent item)
  • 鍵值:transmit_br_bond1
  • 主要項:選擇前面創建好的主要項(prometheus node exporter)
  • 信息類型:根據監控項的情況進行選擇。數據包總量是一個非負整數,所以信息類型選擇數字(無正負)

其它值保持默認

 

給(gei)監控項配置一個進程

  • 名稱:prometheus pattern
  • 參數:node_network_transmit_packets_total{device="br_bond1"}。參數的形式為"metric name{label name = label value}",根據具體的監控項而定。

 

 

3.6.2 查看創建好的監控項的數據

在監測(ce)-->最新數據一欄可(ke)以看到監控項已經獲取到了(le)數據

 

點擊圖(tu)形可以(yi)查看該的相關監(jian)控圖(tu)形信(xin)息

 

3.7 同時監控多項相同的指標

單個監(jian)控項(xiang)(xiang)的配置相對(dui)簡單,但當(dang)服務器上(shang)存在多個網(wang)卡(ka)需要監(jian)控時,一個個去配置監(jian)控項(xiang)(xiang)顯然是(shi)非常(chang)麻煩的,而且當(dang)服務器上(shang)的網(wang)卡(ka)有增加(jia)或刪除(chu)時,我們需要手動的去增加(jia)和(he)刪除(chu)監(jian)控項(xiang)(xiang),非常(chang)的麻煩。這個時候就可(ke)以使用zabbix的低級自動發現(LLD)來自動發現相關的監(jian)控項(xiang)(xiang)。

 

3.7.1 prometheus to json介紹

zabbix的Prometheus to json預定步驟(zou)會將(jiang)獲取(qu)到(dao)的metrics數(shu)據(ju)轉換為json格(ge)式。例如有以下數(shu)據(ju)。

# HELP wmi_logical_disk_free_bytes Free space in bytes (LogicalDisk.PercentFreeSpace)
# TYPE wmi_logical_disk_free_bytes gauge
wmi_logical_disk_free_bytes{volume="C:"} 3.5180249088e+11
wmi_logical_disk_free_bytes{volume="D:"} 2.627731456e+09
wmi_logical_disk_free_bytes{volume="HarddiskVolume4"} 4.59276288e+08

獲取到的json格式類似于下

[
           {
               "name": "wmi_logical_disk_free_bytes",
               "help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",
               "type": "gauge",
               "labels": {
                   "volume": "C:"
                },
               "value": "3.5180249088e+11",
               "line_raw": "wmi_logical_disk_free_bytes{volume=\"C:\"} 3.5180249088e+11"
           },
           {
               "name": "wmi_logical_disk_free_bytes",
               "help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",
               "type": "gauge",
               "labels": {
                   "volume": "D:"
                },
               "value": "2.627731456e+09",
               "line_raw": "wmi_logical_disk_free_bytes{volume=\"D:\"} 2.627731456e+09"
           },
           {
               "name": "wmi_logical_disk_free_bytes",
               "help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",
               "type": "gauge",
               "labels": {
                   "volume": "HarddiskVolume4"
                },
               "value": "4.59276288e+08",
               "line_raw": "wmi_logical_disk_free_bytes{volume=\"HarddiskVolume4\"} 4.59276288e+08"
           }
       ]

 

3.7.2 LLD macro和JSONPath


宏的格式為{#var_name}

 

jsonPath

macro是定義的一個變量。jsonPath的值(zhi)從哪里(li)獲取

例如有下面這段數據

           {
               "name": "wmi_logical_disk_free_bytes",
               "help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",
               "type": "gauge",
               "labels": {
                   "volume": "HarddiskVolume4",
                   "disk": "C"
                },
               "value": "4.59276288e+08",
               "line_raw": "wmi_logical_disk_free_bytes{volume=\"HarddiskVolume4\"} 4.59276288e+08"
           }

通(tong)過(guo)以下定義就能獲取到name、help、lables等(deng)值

 

3.7.3 創建LLD

在配置-->主機中選擇我們之前創(chuang)(chuang)建好的主機,點(dian)擊自動(dong)發(fa)現,創(chuang)(chuang)建自動(dong)發(fa)現規則

  • 名稱:輸入LLD的名稱
  • 類型:相關項目
  • 鍵值:net_transmit_pack_total
  • 主要項:選擇前面創建的prometheus node exporter
  • 資源周期不足:0

 

 

 

 

 

添加進程預處理步驟

  • 名稱:prometheus to json
  • 參數:node_network_transmit_packets_total{device=~".*"} , 其中~". *"表示label value可以是任意值。

 

 

添加LLD宏

我(wo)們(men)添加三個宏,LLD宏分別為

  • {#DEVICE}
  • {#HELP}
  • {#METRIC}

json路徑分別為

  • $.labels['device']
  • $['help']
  • $['name']

 

設置完成后點擊添加

3.7.4 設置自動發現規則的監控項原型

選擇剛創建好的LLD自動發現規則,點擊監控項原(yuan)(yuan)型(xing),創建監控項原(yuan)(yuan)型(xing)。

  • 名稱:
  • 類型:相關項目
  • 鍵值:Total_transmit_packets[{#DEVICE}],如果有多個宏需要將宏都寫在[]中,如[{#DEVICE},{#MODE}]
  • 主要項:此前創建的prometheus node exporter
  • 信息類型:數字(無正負)

其余信息保持不變

 

 

為監控項原型添加預處理步驟

一共需要添加兩個預定步驟(zou):

第一個:

  • 名稱:prometheus pattern
  • 參數:{#METRIC}{device="{#DEVICE}"}

第二個:

  • 名稱:每秒更改

 

 

配置完成后點擊添加

 

3.7.5 查看通過自動發現規則創建的監控項

點(dian)擊配置(zhi)-->主機-->監控項可以發(fa)現(xian)通過我們剛(gang)剛(gang)配置(zhi)的(de)自動(dong)發(fa)現(xian)規(gui)則(ze)已(yi)經自動(dong)創建了(le)多個網卡相關的(de)監控項

 

 

3.7.6 查看監控數據

點擊監測(ce)-->最(zui)新數據(ju),可以看到各(ge)項(xiang)監控(kong)(kong)項(xiang)的監控(kong)(kong)數據(ju)

 

posted @ 2025-10-29 14:37  singless233  閱讀(7)  評論(0)    收藏  舉報