zabbix自定義監控mysql主從狀態和延遲

来源:https://www.cnblogs.com/tushanbu/archive/2022/09/08/16667857.html
-Advertisement-
Play Games

zabbix自定義監控mysql主從狀態和延遲 zabbix自定義監控mysql主從狀態 | 主機IP|角色 | 主機名| | : | : :| : | |192.168.222.250 | zabbix_server|localhost| |192.168.222.251 |zabbix_agen ...


zabbix自定義監控mysql主從狀態和延遲


目錄

zabbix自定義監控mysql主從狀態

主機IP 角色 主機名
192.168.222.250 zabbix_server localhost
192.168.222.251 zabbix_agentd、mysql從庫 slave
192.168.222.252 mysql主庫 master

配置環境監控服務zabbix部署,mysql主從可以看下麵的詳細的操作mysql進階,
mysql主從監控服務zabbix部署

在agentd客戶端被(監控端)也就是mysql從庫裡面編寫腳本,獲取mysql主從狀態
[root@slave ~]# mkdir -p /scripts/zabbix
[root@slave ~]# cd /scripts/zabbix/
[root@slave zabbix]# vim mysql_MS_sta.sh
[root@slave zabbix]# cat mysql_MS_sta.sh
#!/bin/bash
count=$(mysql   -u root -pxbz123 -e'show slave status\G' 2> /dev/null | grep -E "IO_Running:|SQL_Running:" | grep -c Yes)
//因為mysql使用密碼明文登錄會有告警,所以用錯誤重定向將他丟到黑洞里去												(/dev/null)
if [ $count == 2 ];then
         echo "0"  //0沒問題
else
         echo "1"  //1沒問題
fi
[root@slave zabbix]# chmod +x mysql_MS_sta.sh //賦予許可權
[root@slave zabbix]# ./mysql_MS_sta.sh  //測試腳本
0   //沒問題
[root@slave zabbix]# vim /usr/local/etc/zabbix_agentd.conf
//編輯/usr/local/etc/zabbix_agentd.conf
UnsafeUserParameters=1   //修改
UserParameter=check_mysql_MS_sta,/bin/bash /scripts/zabbix/mysql_MS_sta.sh    //添加
[root@slave zabbix]# pkill zabbix_agentd 
[root@slave zabbix]# zabbix_agentd 
//重啟zabbix_agentd

在服務端進行測試

[root@localhost ~]# zabbix_get -s 192.168.222.251 -k check_mysql_MS_sta
0

配置監控項


最後點擊下麵的add(添加)

配置觸發器





手動觸發告警

[root@slave ~]# mysql -uroot -pxbz123
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 19
Server version: 5.7.38 MySQL Community Server (GPL)

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> stop slave;  //在mysql從庫停掉主從複製
Query OK, 0 rows affected (0.00 sec)
mysql> start slave;  //在mysql從庫開啟主從複製
Query OK, 0 rows affected (0.00 sec)


查看郵箱信息

zabbix自定義監控mysql主從延遲

[root@slave ~]# cd /scripts/zabbix/
[root@slave zabbix]# pwd  //查看絕對路徑
/scripts/zabbix
[root@slave zabbix]# vim mysql_MS_delay.sh //編寫腳本
[root@slave zabbix]# cat mysql_MS_delay.sh
#!/bin/bash
delay=$(mysql -uroot -pxbz123 -e"show slave status\G" 2> /dev/null  | awk '/Seconds_Behind_Master/ {print $2}')

echo $delay
//在agentd客戶端(被監控端),也就是mysql從庫編寫腳本,獲取mysql主從延遲數值
[root@slave zabbix]#  chmod +x mysql_MS_delay.sh  //賦予許可權
[root@slave zabbix]# ./mysql_MS_delay.sh  //測試效果
0
[root@slave zabbix]# vim /usr/local/etc/zabbix_agentd.conf
UserParameter=check_mysql_MS_delay,/bin/bash /scripts/zabbix/mysql_MS_delay.sh //添加
//編輯zabbix_agentd的配置文件
[root@slave zabbix]# pkill zabbix_agentd 
[root@slave zabbix]# zabbix_agentd 
//重啟zabbix_agentd

在服務端測試

[root@localhost ~]# zabbix_get -s 192.168.222.251 -k check_mysql_MS_delay
0
//沒問題

配置監控項


點擊下麵的add(添加)

配置觸發器





等到mysql主從延遲大於200的時候發出告警(也有可能到不了200,那就預設0)


此處我的延遲到不了200,所以我預設0


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 來源 | Info ,整理 | 鈺瑩、Tina 回擊就代表輸了?! 今年年中,一位前谷歌、前亞馬遜的工程師推出了他創作的開源記憶體數據緩存系統 Dragonfly,用 C/C++ 編寫,基於 BSL 許可(Business Source License)分發。 根據過往的基準測試結果來看, Drago ...
  • 項目中一個常見的場景,就是介面請求或者響應參數中會有一些欄位的取值會限定為固定幾個可選值,而在代碼中這些可選值會通過枚舉類來承載,本文探討下如何讓swagger介面文檔中自動加上欄位的取值含義說明,解放生產力。 ...
  • 數組元素固定,在 Go 語言中沒有那麼常用,更常用的數據結構是切片。什麼是切片呢? 切片就是動態的數組,它的長度不固定,可以隨意向切片中追加元素,而且切片會在容量不足的時候自動擴容。切片(slice)是對數組一個連續片段的引用,這個片段可以是整個數組,或者是由起始和終止索引標識的一些項的子集,需要註 ...
  • 什麼是性能測試 在軟體開發中,性能測試是一種常見的測試實踐,用於確定系統在特定工作負載下的響應能力和穩定性表現。它還用於排查,觀察,驗證系統在其他方面的質量。例如可擴展性,可靠性和資源使用情況。 性能測試是測試工程的一個子集,是一種電腦科學實踐,致力於將性能指標構建在系統的設計,實現和架構中。 相 ...
  • 在上個月寫過一篇 .NET 純原生實現 Cron 定時任務執行,未依賴第三方組件 的文章,當時 CronSchedule 的實現是使用了,每個服務都獨立進入到一個 while 迴圈中,進行定期掃描是否到了執行時間來實現的,但是那個邏輯有些問題,經過各位朋友的測試,發現當多個任務的時候存在一定概率不按 ...
  • 利用Socket建立TCP服務端。 項目要求:建立一個TCP服務端,接收機器人發送過來的實時數據。機器人會一直嘗試連接一個IP地址埠號,連接上之後就會將數據報文發送過來。服務端要根據報文格式對數據進行解析。當發送過來的數據報文不符合格式的時候,斷開Socket連接。 主要代碼: public Ro ...
  • 開源操作系統社區 OpenCloudOS 由騰訊與合作伙伴共同倡議發起,是完全中立、全面開放、安全穩定、高性能的操作系統及生態。OpenCloudOS 沉澱了多家廠商在軟體和開源生態的優勢,繼承了騰訊在操作系統和內核層面超過10年的技術積累,在雲原生、穩定性、性能、硬體支持等方面均有堅實支撐,可以平 ...
  • 首先打開 Visual Studio Installer 可以看到vs2022 只支持安裝4.6及以上的版本,如圖所示。那麼該如何安裝4.6以下的版本,下麵將詳細介紹。 安裝4.0~4.5系列 首先在微軟 Visual Studio SDK 庫里去下載相應版本的開發者工具包,然後安裝即可,這種方法簡 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...