DB2 HADR的heartbeat檢測

DB2的Primary和Standby之間是通過發送心跳信號來檢測對方是否存在的 

與此心跳有關的幾個db2pd -db xxx -hadr 監控指標 

HEARTBEAT_INTERVAL(seconds) = 30 

HEARTBEAT_MISSED = 0 

HEARTBEAT_EXPECTED = 58588 

HADR_TIMEOUT(seconds) = 120 

                 

需要查看的是 HEARTBEAT_MISSED/HEARTBEAT_EXPECTED的比值 

HADR_TIMEOUT是DB CFG的一個參數,這裏設置爲 120             

HEARTBEAT_INTERVAL 計算方法: HADR_TIMEOUT/4 = 120/4=30


HEARTBEAT_INTERVAL的最大值是 30秒



推薦的 hadr_timeout 參數設置至少爲 60 秒。


HADR_TIMEOUT 推薦值是120 seconds. 計算以後 HEARTBEAT_INTERVAL 是 30 秒. 

設置 hadr_timeout參數時,要考慮網絡穩定性和機器響應時間。如果網絡擁有不規則或長時間傳輸延遲,則應使用更長的超時設置。 


每一次心跳,在Primary端都會產生一個 PEER_WINDOW_END值,並且發送到Standby端。 

如果Primary端在 PEER_WINDOW_END之前失敗,可以執行一個沒有數據損失的故障轉移 (TAKEOVER BY FORCE 命令添加了一個 PEER WINDOW ONLY 選項) 


hadr_peer_window設置 >= 響應時間 + 安全 邊際 + 心跳間隔 

    其中: 

    響應時間 = 自動化軟件探測到失敗並調用 HADR 接管的預計時間 

    安全邊際 = 5 秒,主 - 備用機器時鐘同步的安全邊際 

    心跳間隔 = MIN(hadr_timeout值 /4,hadr_peer_window值 /4,30 秒) 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章