zabbix3.0.2 監控oracle高可用dataguard的standby庫狀態詳細過程
1,判斷standby複製實時的標準
判斷標準是,通過sqlplus執行select sequence#,applied from v$archived_log order by sequence#;如果全是YES則表明standby庫已經實時複製了,primary和standby資料一致了沒有延遲,否則就是有延遲的。如下所示:
SQL> select sequence#,applied from v$archived_log order by sequence#; SEQUENCE# APPLIED ---------- --------- 5118 YES 5119 YES 5120 YES 5121 YES 5122 YES 5123 YES 5124 YES 5125 YES 5126 YES 5127 YES 5128 YES SEQUENCE# APPLIED ---------- --------- 5129 YES 419 rows selected. SQL> |
所以通過進入oracle帳號,登入sqlplus控制檯執行selectsequence#,applied from v$archived_log order by sequence#;來判斷,將獲取的查詢結果集列出來,如果都是YES表明standby複製正常,反之則有問題,編寫判斷指令碼如下:
指令碼一get_dg.sh,獲取standby狀態,將所有的YES記錄放在當前的檔案bst.csv下面:
#!/bin/bash su - oracle -c " cd /oracle/backup/data sqlplus -S zabbix/[email protected] set heading off set feedback off set pagesize 0 set verify off set echo off spool bts.csv select sequence#,applied from $1 order by sequence#; spool off exit EOF |
指令碼二check_dg.sh,取出YES的num數量,取出standy所有的記錄數,如果兩個數字相等,則證明standby複製正常,否則複製不正常,則報警出來,check_dg.sh指令碼如下:
#!/bin/bash #> /oracle/backup/data/bts.csv /bin/sh /oracle/backup/data/get_dg.sh $1 > /dev/null cd /oracle/backup/data result_num=`cat bts.csv |wc |awk '{print $1}'` yes_num=`cat bts.csv |grep YES |wc |awk '{print $1}'` in_memory_num=`cat bts.csv |grep IN-MEMORY |wc |awk '{print $1}'` out_num=0; standby_num=`expr $yes_num + $in_memory_num + $out_num` if [ "$result_num" -eq 0 ] then echo 0 elif [ "$result_num" -eq 1 ] then echo 0 elif [ "$result_num" -eq "$standby_num" ] then echo 1 else echo 0 fi |
2,Zabbix-agentd配置檔案新增引數
vim /usr/local/zabbix/conf/zabbix_agentd.conf
UnsafeUserParameters=1 UserParameter=oracle.standby_status,/oracle/backup/data/check_dg.sh 'v$archived_log' |
新增完後,重啟zabbix_agentd
3,使用普通的root帳號呼叫sqlplus指令碼報錯
在oracle伺服器可以正常呼叫:
[[email protected] data]# sh check_dg.sh'v$archived_log'
1
[[email protected] data]#
但是在zabbix-server上調用出錯:
[[email protected]_serv_121_12 ~]#/usr/local/zabbix/bin/zabbix_get -s 192.168.3.13 -p10050 -k"oracle.standby_status"
standard in must be a tty
1
[[email protected]_serv_121_12 ~]#
4,改用zabbix帳號來呼叫check_dg.sh
4.1在腳本里面新增oracle環境變數
需要在腳本里面配置一些oracle的環境變數,這樣可以利用當前的zabbix帳號來執行sqlplus命令,get_dg.sh如下:
[[email protected] data]# more get_dg.sh #!/bin/bash export NLS_LANG=american_america.ZHS16GBK export ORACLE_BASE=/oracle/app/oracle export ORACLE_HOME=/oracle/app/oracle/product/11.2.0/dbhome_1 export ORACLE_SID=powerdesdg2 export PATH=$ORACLE_HOME/bin:$PATH cd /oracle/backup/data sqlplus -S zabbix/[email protected] << EOF set heading off set feedback off set pagesize 0 set verify off set echo off spool bts.csv select sequence#,applied from $1 order by sequence#; spool off exit EOF [[email protected] data]# |
指令碼2check_dg.sh基本沒有變動,如下所示:
[[email protected] data]# more check_dg.sh #!/bin/bash #> /oracle/backup/data/bts.csv /bin/sh /oracle/backup/data/get_dg.sh $1 > /dev/null cd /oracle/backup/data result_num=`cat bts.csv |wc |awk '{print $1}'` yes_num=`cat bts.csv |grep YES |wc |awk '{print $1}'` in_memory_num=`cat bts.csv |grep IN-MEMORY |wc |awk '{print $1}'` out_num=0; standby_num=`expr $yes_num + $in_memory_num + $out_num` if [ "$result_num" -eq 0 ] then echo 0 elif [ "$result_num" -eq 1 ] then echo 0 elif [ "$result_num" -eq "$standby_num" ] then echo 1 else echo 0 fi [[email protected] data]# |
4.2將zabbix加入oracle使用者組
gpasswd -a zabbix oinstall gpasswd -a zabbix dba gpasswd -a zabbix oracle |
4.3在zabbix-server伺服器上檢查standby成功
在zabbix-server的伺服器上,遠端呼叫oracle的standby上的狀態監控,看到能獲取到實際的值1:
[[email protected]_serv_121_12 ~]# /usr/local/zabbix/bin/zabbix_get -s 192.168.3.13 -p10050 -k "oracle.standby_status" 1 [[email protected]_serv_121_12 ~]# |
5,在zabbix管理介面新增standby
建立oracle模版22.png:
在standby的主機上新增模版E:\u\azure_cloud\pd\024.png:
Actions裡面新增觸發條件的模版,這樣當standby模版的條件滿足後就會觸發這個actions事件來發報警簡訊郵件或者打電話等等,E:\u\windows\pic\21.png:
至此,在zabbix上通過自己寫的shell指令碼來監控oracle的高可用的standby庫複製狀態已經完成了。
相關推薦
zabbix3.0.2 監控oracle高可用dataguard的standby庫狀態詳細過程
1,判斷standby複製實時的標準判斷標準是,通過sqlplus執行select sequence#,applied from v$archived_log order by sequence#;如果全是YES則表明standby庫已經實時複製了,primary和stand
ZABBIX4.0.2監控歷史資料存放Elasticsearch及叢集高可用方案
一、概述 Zabbix 4.0.2是一個長期支援版本(LTS),至少提供 5 年的技術支援;下面簡單看一下Zabbix 4.0.2 新特徵更具時效的監控項值檢查(Checking item value immediately)新的 HTTP 監控項型別(New HTTP item type)監控項原型可以依
ZABBIX4.0.2監控歷史數據存放Elasticsearch及集群高可用方案
php more lar math 高可用方案 glib lock 內核參數 ec2 一、概述 Zabbix 4.0.2是一個長期支持版本(LTS),至少提供 5 年的技術支持;下面簡單看一下Zabbix 4.0.2 新特征更具時效的監控項值檢查(Checking item
zabbix3.0.2 通過orabbix監控多臺oracle資料庫
# put here your databases in a comma separated list # 放置oracle列表用逗號分隔,這裡放置的是hostname,和zabbix介面上的hosts裡面的hostname保持一模一樣。
zabbix3.0.2 通過orabbix來監控oracle11g增強版的詳細過程
-->Orabbix簡介說明 orabbix是一個用來監控oracle資料庫效能的zabbix外掛工具,通過安裝在被監控伺服器上客戶端上收集資料並傳給zabbix伺服器端,然後通過呼叫圖形顯示。具有以下功能:(1)、資料庫版本(2)、歸檔檔案(3)、等待的事件(如檔案
Zabbix3.0.4監控Windows的CPU使用百分比
log window 效果 blog -1 perf nbsp 技術分享 分享 Zabbix3.0.4監控Windows的CPU使用百分比 Zabbix 自帶的模塊沒有 CPU 使用率(百分比)這個監控項,我們可以通過添加計數器的方式實現 CPU 百分比的監控。 1.在Za
深入解讀HBase2.0新功能之高可用讀Region Replica
數據庫摘要: 基於時間線一致的高可用讀(Timeline-consistent High Available Reads),又稱Region replica,為HBase帶來了高可用讀的能力。本文主要介紹region replica這個功能設計的背景,技術細節和使用方法,同時會仔細分析這個功能的優缺點並給出使
CentOS7.5 下zabbix3.0.18監控CPU負載
clip CP vpd tex 儀表盤 mys 系統 mysql serve 大綱:一、環境準備二、創建主機三、創建監控項四、查看監控流量圖一、環境準備服務器1: IP:192.168.4.66,操作系統:CentOS 7.5 應用程序:zabbix-server-mysq
mysql 8.0.11 innodb cluster 高可用集群手冊系列之一 ------集群介紹
png nag tex 介紹 畫的 innodb process http term MySQL 8.0.11 innodb cluster 高可用集群部署運維管理手冊 一 innodb cluster 原理介紹 作者 方連超 Innodb cluster 原理介
zanePerfor前端效能監控系統高可用之Mongodb副本集讀寫分離架構
HI!,你好,我是zane,zanePerfor是一款最近我開發的一個前端效能監控平臺,現在支援web瀏覽器端和微信小程式段。 我定義為一款完整,高效能,高可用的前端效能監控系統,這是未來會達到的目的,現今的架構也基本支援了高可用,高效能的部署。實際上還不夠,在很多地方還有優化的空間,我會持續的
Oracle 高可用作業測試
1.RAC 是一種: A 分散式資料庫B 記憶體共享多節點資料庫C 能夠保護資料安全的架構 2.RAC 和CRS 的區別是: A 前者表示一種架構,後者是一套軟體B 前者表示一套軟體,後者是一種架構 C 它們之間沒有關係 3.RAC 的每個節點擁有各自的redo 檔案: A 對B 不對C 不一定
Redis: 2、Redis高可用原理,搭建與驗證
Redis高可用原理,搭建與驗證 一、redis-ha原理 1 原理 redis高可用採用的是哨兵(sentinel),多個redis-slave配備了多個哨兵程序,哨兵監控redis-master,一旦出現故障,將一臺slave提升為master。客戶端通過連線哨
iOS 從0到1搭建高可用App框架(二)
前言: 本文是繼《iOS 從0到1搭建高可用App框架》之後,通過專案實踐以及同行交流思考總結出來的一些新的架構思想,但初心仍不變,目的為搭建高可用App框架,保持框架底層健壯的同時讓程式碼更清晰,為後期頂層業務開發時,避免出現風格迥異的程式碼。 架構圖: 架構圖 效果
SpringBoot2.0 + SpringCloud Eureka搭建高可用註冊中心(Eureka之二)
上一篇中提到用SpringBoot2.0+Eureka搭建服務註冊中心和服務提供者,詳情參考: https://www.cnblogs.com/SysoCjs/p/10127448.html 現在講一下SpringCloud+Eureka搭建高可用註
redis-3.0.1 sentinel 主從高可用 詳細配置
最近專案上線部署,要求redis作高可用,由於redis cluster還不是特別成熟,就選擇了redis sentinel做高可用。redis本身有replication,實現主從備份。結合sentinel可以做主、從自動切換。 生產環境中,一般要求有3個r
zabbix3.0.4新增對web頁面url的狀態監控
1、應用集配置 在配置—>主機中開啟主機列表,選擇需要新增監控主機的web,建立應用集 2、web監測配置 選擇web場景,再單擊右上角的建立web場景 在名稱中輸入監控的名稱,客戶端是選擇測試站點的瀏覽器型別 在步驟選項卡新增測試步驟 Name是測試步驟的
深入解讀 HBase2.0 新功能之高可用讀 Region Replica
1.前言 基於時間線一致的高可用讀(Timeline-consistent High Available Reads),又稱 Region replica。其實早在 HBase-1.2 版本的時候,這個功能就已經開發完畢了, 但是還是不太穩定,離生產可用級別還有一段距離,後來社群又陸陸續續修復了 一些 bu
zabbix3.0.4監控linux主機cpu使用率超過90%的時候報警
在windows系統中監控cpu利用率非常容易,自帶模板就有這樣的功能,但是在linux裡面沒有預設的模板 只有cpu的負載,預設當cpu的負載在一定時間內5以上報警cpu utilization中有一個cpu idle時間,即cpu的空閒時間,當空閒時間小於10%的時候就
構建Oracle高可用環境pdf
下載地址:網盤下載內容簡介編輯《構建Oracle高可用環境》共分為五篇,依次為高可用性篇、資料處理篇、效能優化篇、系統維護篇和監控體系篇,其中對管理Oracle高可用資料庫的講解尤為細緻,在幫助您學習Oracle高可用性方面極具參考價值。本書不僅適合有高可用需求的Oracle
hbase-1.2.6的高可用叢集搭建安裝文件
1.安裝 zookeeper 叢集,此處略2.找到官網下載 hbase 安裝包 hbase-1.2.6-bin.tar.gz, 這裡給大家提供一個下載地址:http://mirrors.hust.edu.cn/apache/hbase/ 對應版本的官方文件:htt