自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

使用Zabbix Api功能,跨互聯(lián)網(wǎng)監(jiān)控Zabbix-Proxy狀態(tài)

運(yùn)維 系統(tǒng)運(yùn)維
項(xiàng)目需要通過zabbix-proxy 來獲取監(jiān)控?cái)?shù)據(jù)【網(wǎng)絡(luò)是單向的,zabbix-proxy 通過公網(wǎng)主動(dòng)連接 zabbix-server ,上報(bào)監(jiān)控?cái)?shù)據(jù),已達(dá)到監(jiān)控的目的】

[[438613]]

背景:

項(xiàng)目需要通過zabbix-proxy 來獲取監(jiān)控?cái)?shù)據(jù)【網(wǎng)絡(luò)是單向的,zabbix-proxy 通過公網(wǎng)主動(dòng)連接 zabbix-server ,上報(bào)監(jiān)控?cái)?shù)據(jù),已達(dá)到監(jiān)控的目的】

需求:

因?yàn)槭菃蜗蚓W(wǎng)絡(luò),proxy 掛了后,zabbix master 都無法獲取到 zabbix-proxy 和 下面的agent 機(jī)器的離線的狀態(tài),更不會(huì)觸發(fā)告警;現(xiàn)需要對 zabbix-proxy 的狀態(tài)實(shí)行監(jiān)控,利用 zabbix-proxy 主動(dòng)上傳到 zabbix 頁面上的 agent 代理程序的 狀態(tài) 來判斷 zabbix-proxy 的存活

使用Zabbix Api功能,跨互聯(lián)網(wǎng) 監(jiān)控Zabbix-Proxy狀態(tài)

思路:

通過獲取 zabbix api 中 Proxy 代理 的 信息 來實(shí)現(xiàn) 監(jiān)控

官方api說明:

版本:zabbix4.0

  1. 獲取token:https://www.zabbix.com/documentation/4.0/zh/manual/api/reference/user/login 
  2.  
  3. 獲取proxy 代理信息: https://www.zabbix.com/documentation/4.0/zh/manual/api/reference/proxy/get 

 #獲取token:

  1. #入?yún)ⅲ?nbsp;
  2. curl -s -X POST -H 'Content-Type: application/json' -d ' 
  3.     "jsonrpc""2.0"
  4.     "method""user.login"
  5.     "params": { 
  6.         "user""Admin"
  7.         "password""PASSWORD" 
  8.     }, 
  9.     "id": 1 
  10. }' http://172.16.10.37:8888/api_jsonrpc.php; 
  11.  
  12. #回參: 
  13. {"jsonrpc":"2.0","result":"為0qwewerwrsdfdsfdsafsd","id":1} 
  14.  
  15. #得到token 為0qwewerwrsdfdsfdsafsd 

 #獲取proxy 代理信息

  1. #利用上面獲取的token,來獲取api 中proxy 的代理信息 
  2.  
  3. #入?yún)ⅲ?nbsp;
  4. curl -s -X POST -H 'Content-Type: application/json' -d ' 
  5.     "jsonrpc""2.0"
  6.     "method""proxy.get"
  7.     "params": { 
  8.         "output""extend"
  9.         "selectInterface""extend" 
  10.     }, 
  11.     "auth""0qwewerwrsdfdsfdsafsd"
  12.     "id": 1 
  13. }' http://172.16.10.37:8888/api_jsonrpc.php 
  14.  
  15.  
  16. #回參 
  17.     "jsonrpc""2.0"
  18.     "result": [ 
  19.         { 
  20.             "proxy_hostid""0"
  21.             "host""a-proxy"
  22.             "status""5"
  23.             "disable_until""0"
  24.             "error"""
  25.             "available""0"
  26.             "errors_from""0"
  27.             "lastaccess""1637806905"
  28.             "ipmi_authtype""-1"
  29.             "ipmi_privilege""2"
  30.             "ipmi_username"""
  31.             "ipmi_password"""
  32.             "ipmi_disable_until""0"
  33.             "ipmi_available""0"
  34.             "snmp_disable_until""0"
  35.             "snmp_available""0"
  36.             "maintenanceid""0"
  37.             "maintenance_status""0"
  38.             "maintenance_type""0"
  39.             "maintenance_from""0"
  40.             "ipmi_errors_from""0"
  41.             "snmp_errors_from""0"
  42.             "ipmi_error"""
  43.             "snmp_error"""
  44.             "jmx_disable_until""0"
  45.             "jmx_available""0"
  46.             "jmx_errors_from""0"
  47.             "jmx_error"""
  48.             "name"""
  49.             "flags""0"
  50.             "templateid""0"
  51.             "description""a-proxy"
  52.             "tls_connect""1"
  53.             "tls_accept""1"
  54.             "tls_issuer"""
  55.             "tls_subject"""
  56.             "tls_psk_identity"""
  57.             "tls_psk"""
  58.             "proxy_address""1.1.1.1"
  59.             "auto_compress""1"
  60.             "discover""0"
  61.             "proxyid""10385"
  62.             "interface": [] 
  63.         }, 
  64.         { 
  65.             "proxy_hostid""0"
  66.             "host""b-proxy"
  67.             "status""5"
  68.             "disable_until""0"
  69.             "error"""
  70.             "available""0"
  71.             "errors_from""0"
  72.             "lastaccess""1637806906"
  73.             "ipmi_authtype""-1"
  74.             "ipmi_privilege""2"
  75.             "ipmi_username"""
  76.             "ipmi_password"""
  77.             "ipmi_disable_until""0"
  78.             "ipmi_available""0"
  79.             "snmp_disable_until""0"
  80.             "snmp_available""0"
  81.             "maintenanceid""0"
  82.             "maintenance_status""0"
  83.             "maintenance_type""0"
  84.             "maintenance_from""0"
  85.             "ipmi_errors_from""0"
  86.             "snmp_errors_from""0"
  87.             "ipmi_error"""
  88.             "snmp_error"""
  89.             "jmx_disable_until""0"
  90.             "jmx_available""0"
  91.             "jmx_errors_from""0"
  92.             "jmx_error"""
  93.             "name"""
  94.             "flags""0"
  95.             "templateid""0"
  96.             "description""b-proxy"
  97.             "tls_connect""1"
  98.             "tls_accept""1"
  99.             "tls_issuer"""
  100.             "tls_subject"""
  101.             "tls_psk_identity"""
  102.             "tls_psk"""
  103.             "proxy_address""1.1.1.1"
  104.             "auto_compress""1"
  105.             "discover""0"
  106.             "proxyid""10402"
  107.             "interface": [] 
  108.         }, 
  109.         { 
  110.             "proxy_hostid""0"
  111.             "host""c_proxy"
  112.             "status""5"
  113.             "disable_until""0"
  114.             "error"""
  115.             "available""0"
  116.             "errors_from""0"
  117.             "lastaccess""1637806905"
  118.             "ipmi_authtype""-1"
  119.             "ipmi_privilege""2"
  120.             "ipmi_username"""
  121.             "ipmi_password"""
  122.             "ipmi_disable_until""0"
  123.             "ipmi_available""0"
  124.             "snmp_disable_until""0"
  125.             "snmp_available""0"
  126.             "maintenanceid""0"
  127.             "maintenance_status""0"
  128.             "maintenance_type""0"
  129.             "maintenance_from""0"
  130.             "ipmi_errors_from""0"
  131.             "snmp_errors_from""0"
  132.             "ipmi_error"""
  133.             "snmp_error"""
  134.             "jmx_disable_until""0"
  135.             "jmx_available""0"
  136.             "jmx_errors_from""0"
  137.             "jmx_error"""
  138.             "name"""
  139.             "flags""0"
  140.             "templateid""0"
  141.             "description""c_proxy"
  142.             "tls_connect""1"
  143.             "tls_accept""1"
  144.             "tls_issuer"""
  145.             "tls_subject"""
  146.             "tls_psk_identity"""
  147.             "tls_psk"""
  148.             "proxy_address""1.1.1.1"
  149.             "auto_compress""1"
  150.             "discover""0"
  151.             "proxyid""10445"
  152.             "interface": [] 
  153.         } 
  154.     ], 
  155.     "id": 1 

 再次過濾,找到lastaccess字段,該字段的值表示 proxy 當(dāng)前的 時(shí)間戳,每5秒 內(nèi)會(huì)發(fā)生變化;通過對比該字段的值 和 zabbix-server 當(dāng)前時(shí)間戳的 時(shí)間差,來判斷 proxy 的狀態(tài)是否正常

添加監(jiān)控項(xiàng):

獲取 lastaccess字段 的值

創(chuàng)建監(jiān)控腳本:

  1. [root@sre ~]# cd /etc/zabbix/zabbix_agentd.d 
  2.  
  3. [root@sre zabbix_agentd.d]#  vim a-proxy-check.sh 
  4. #!/bin/bash 
  5. curl -s -X POST -H 'Content-Type: application/json' -d ' 
  6.     "jsonrpc""2.0"
  7.     "method""proxy.get"
  8.     "params": { 
  9.         "output""extend"
  10.         "selectInterface""extend" 
  11.     }, 
  12.     "auth""0qwewerwrsdfdsfdsafsd"
  13.     "id": 1 
  14. }' http://172.16.10.37:8888/api_jsonrpc.php | awk -F '{"' '{print $3}' | awk -F ',' '{print $8}' | awk -F '"' '{print $4}' 
  15.  
  16.  
  17. [root@sre zabbix_agentd.d]# chmod +x /etc/zabbix/zabbix_agentd.d/a-proxy-check.sh 

 修改 zabbix_agentd.conf 配置文件,創(chuàng)建KEY ,指定腳本路徑

  1. [root@sre ~]# vim /etc/zabbix/zabbix_agentd.conf  
  2. ........ 
  3. UnsafeUserParameters=1 
  4. #自定義一個(gè)key,監(jiān)控a_proxy的狀態(tài) 
  5. UserParameter=a_proxy_status,/bin/bash /etc/zabbix/zabbix_agentd.d/a-proxy-check.sh 
  6. ........ 

 重啟 zabbix-agent

  1. systemctl restart zabbix-agent 

登錄到zabbix-server 使用zabbix-get 測試監(jiān)控項(xiàng)

  1. [root@sre zabbix]# zabbix_get -s 172.16.10.37 -p 10050 -k "a_proxy_status" 
  2. 1637923240 

 登錄到zabbix web 控制臺(tái),

#添加監(jiān)控項(xiàng)

使用Zabbix Api功能,跨互聯(lián)網(wǎng) 監(jiān)控Zabbix-Proxy狀態(tài)

#添加觸發(fā)器

觸發(fā)器表達(dá)式表示: 當(dāng)a-proxy 時(shí)間戳的 值 和 zabbix 當(dāng)前時(shí)間戳的值 ,相差60 秒 ,觸發(fā)告警

使用Zabbix Api功能,跨互聯(lián)網(wǎng) 監(jiān)控Zabbix-Proxy狀態(tài)

修改觸發(fā)器值,模擬觸發(fā)告警

使用Zabbix Api功能,跨互聯(lián)網(wǎng) 監(jiān)控Zabbix-Proxy狀態(tài)

總結(jié): 本篇文能寫出來也是被逼無奈,單向網(wǎng)絡(luò),跨互聯(lián)網(wǎng)監(jiān)控,也是生產(chǎn)上一個(gè)案例吧.

 

責(zé)任編輯:姜華 來源: 今日頭條
相關(guān)推薦

2024-04-24 08:01:47

日常監(jiān)控服務(wù)器ZABBIX

2010-06-07 12:56:58

Zabbix中文

2015-06-18 10:45:31

英特爾

2015-06-24 15:35:54

2014-03-13 15:14:19

Zabbix監(jiān)控報(bào)警Zabbix

2011-03-29 11:27:37

監(jiān)控Zabbix

2011-04-01 16:40:00

2011-03-29 13:25:10

Zabbix監(jiān)控

2011-04-01 10:18:12

zabbix

2014-01-15 14:35:35

云計(jì)算

2015-05-28 16:11:07

互聯(lián)網(wǎng)+

2015-10-08 15:20:34

互聯(lián)網(wǎng)物聯(lián)網(wǎng)

2013-10-08 10:56:38

zabbix監(jiān)控

2015-10-30 17:50:18

互聯(lián)網(wǎng)金融

2018-08-15 09:02:59

產(chǎn)業(yè)互聯(lián)網(wǎng)工業(yè)互聯(lián)網(wǎng)物聯(lián)網(wǎng)

2023-06-20 07:19:00

2015-09-22 09:17:33

互聯(lián)網(wǎng)發(fā)展史

2011-03-29 11:17:57

ZABBIX監(jiān)控

2011-03-30 10:07:05

Zabbix監(jiān)控

2011-04-01 17:22:32

ZABBIX監(jiān)控
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號