gmlinktolerance 特性

gmlinktolerance 特性會監視 Global Mirror 關係在非循環模式中的回應時間。您可以使用 chsystem CLI 指令或管理 GUI 來設定 gmlinktolerance 特性。gmlinktolerance 特性代表次要系統回應時間緩慢時,主要系統所容許的秒數。

如果回應緩慢超過指定的容忍度,則會記載 1920 錯誤。此外,一或多個 Global Mirror 關係會自動停止,以保護主要站台上的應用程式主機。在正常作業期間,因為 Global Mirror 特性採用非同步抄寫,應用程式主機比較感受不到回應時間受到影響。但是,如果Global Mirror作業長時間遇到次要系統的回應時間緩慢,I/O 作業會在主要系統上排隊等候。此狀況會導致應用程式主機等待很長的回應時間。在此情況下,gmlinktolerance 特性會停止 Global Mirror 關係,讓應用程式主機回應時間恢復正常。發生 1920 錯誤後, Global Mirror 輔助磁區將不再處於 consistent_synchronized 狀態,直至您修復錯誤的原因並重新啟動 Global Mirror 關係為止。因此,務必監視系統來追蹤是否發生此錯誤。
您可以將 gmlinktolerance 值設為 0(零),以停用 gmlinktolerance 特性。但是,如果停用 gmlinktolerance 特性,就難以保證應用程式不會等待很長的回應時間。在下列情況下,或許應該停用 gmlinktolerance 特性:
  • 在 SAN 維護時間範圍期間,預計 SAN 元件的效能會降低,應用程式主機可承受來自 Global Mirror 磁區的延長回應時間。
  • 在應用程式主機可容忍回應時間很久的期間,預料 gmlinktolerance 特性可能會停止 Global Mirror 關係。比方說,如果您使用已配置對後端儲存體施壓的 I/O 產生器進行測試,gmlinktolerance 特性可能會偵測到嚴重延遲,因而停止 Global Mirror 關係。停用 gmlinktolerance 可避免此情況,但可能導致測試主機等待很長的回應時間。

診斷和修正 1920 錯誤

1920 錯誤表示一或多個 SAN 元件未能達到應用程式主機所需的效能。這可能是暫時性(例如,由於維護活動)或永久性(例如,由於硬體故障或非預期的主機 I/O 工作量)錯誤。

如果在 1920 錯誤之前出現參考資訊事件 985004 已超出抄寫延遲上限,就表示在抄寫延遲逾時值上限之內,系統無法在遠端系統中找到磁碟的路徑。請調查遠端系統以尋找並修復任何欠佳路徑。您還可以使用 lssystem 指令來檢視 maxreplicationdelay 值。如果此值太小,請使用 chsystem 指令來指定新的 maxreplicationdelay 值。

如果您遇到其他 1920 錯誤,請設定 SAN 效能分析工具,例如 IBM® Spectrum Control,並確保已正確配置,而且能夠在發生問題時監視統計資料。請將 SAN 效能分析工具盡可能設為最短的統計資料收集間隔。對於 IBM Spectrum Control 系統,最短間隔為 5 分鐘。如果發生多個 1920 錯誤,請先診斷最早那個錯誤的原因。下列問題有助於您判斷錯誤的原因:
  • 發生錯誤時是否正在進行維護?

    維護可能包含更換儲存體系統實體磁碟、更新儲存體系統的韌體或針對其中一個系統完成程式碼更新。 必須等到維護程序完成後,才能以非循環模式重新啟動 Global Mirror 關係。否則會再引發另一個 1920 錯誤,因為系統尚未回到效能良好的穩定狀態。

  • 來源系統或目標系統上是否有任何未修正的錯誤?

    如果有的話,請進行分析以判斷它們是否為錯誤的原因。特別要確定這些錯誤是否與關係中正在使用的磁區或 MDisk 相關,或者這些錯誤是否會使目標系統的效能降低。在重新啟動 Global Mirror 關係之前,務必修正這些錯誤。

  • 遠距鏈結是否超載?
    如果您的鏈結無法承受短期的尖峰 Global Mirror 工作量,則會發生 1920 錯誤。請完成下列檢查,以判斷遠距鏈結是否超載:
    • 查看 Global Mirror 關係停止前 Global Mirror 輔助磁區的寫入傳輸量總計。如果此數量約等於您的鏈結頻寬,您的鏈結可能已超載。此問題可能起因於應用程式主機 I/O 作業,或由主機 I/O 和背景(同步化)複製活動共同造成。
    • 查看 Global Mirror 關係停止前 Global Mirror 來源磁區的寫入傳輸量總計。此值代表應用程式主機正在完成的 I/O 作業。如果這些作業幾乎佔滿鏈結的頻寬, 請減少應用程式正在嘗試完成的 I/O 作業,或者使用 Global Mirror 來複製較少的磁區。如果輔助磁碟的寫入 I/O 操作明顯多於來源磁區,表示存在高層次的背景副本。請降低 Global Mirror 夥伴關係的背景複製比率參數,將應用程式 I/O 頻寬總計和背景複製比率控制在鏈結的能力範圍內。
    • 查看 Global Mirror 關係停止後 Global Mirror 來源磁區的寫入傳輸量總計。如果關係停止時寫入傳輸量增加 30% 或更多,表示應用程式主機試圖完成的 I/O 作業超過鏈結的承受能力。當 Global Mirror 關係處於作用中,超載的鏈結會導致對應用程式主機的回應時間更長,以致於降低可達到的傳輸量。Global Mirror 關係停止後,應用程式主機會發現回應時間縮短。在此情況下,必須增加鏈結頻寬、減少應用程式主機 I/O 速率,或者減少使用 Global Mirror 副本的磁區的數量。
  • 次要系統上的儲存體系統是否超載?

    如果由於一或多個 MDisk 為系統提供的服務不佳,導致應用程式 I/O 作業無法以應用程式主機所需的速率進行,就會發生 1920 錯誤。

    如果已符合後端儲存體系統需求,則此錯誤可能起因於儲存體系統效能下降。請使用 IBM Spectrum Control 來取得次要系統上每個 MDisk 的後端寫入回應時間。 個別 MDisk 的回應時間突然增加 50 毫秒或更多,或回應時間超過 100 毫秒,就代表有問題。請完成下列檢查以判斷儲存體系統是否超載:
    • 檢查儲存體系統是否發生錯誤狀況,例如,媒體錯誤、實體磁碟故障,或有像是 RAID 重建的相關活動。修正任何問題,然後重新啟動 Global Mirror 關係。
    • 如果沒有錯誤,請判斷次要儲存體系統處理應用程式主機 I/O 作業時是否可達到所需的層次。透過向陣列新增更多實體磁碟、變更該陣列的 RAID 層次、變更儲存體系統的快取設定、確保快取電池可正常工作或變更其他特定於儲存體系統的配置參數,均有可能提高儲存體系統的效能。
  • 主要系統上的儲存體系統是否超載?

    就像分析次要後端儲存體的效能一樣,採取相同的步驟來分析主要後端儲存體的效能。如果效能欠佳,請限制應用程式主機可完成的 I/O 作業數。即使 Global Mirror 關係未受影響,也需要監視主要站台的後端儲存體。如果效能不佳的情形持續很久,則會發生 1920 錯誤,Global Mirror 關係也會停止。

  • 某個系統是否超載?

    請使用 IBM Spectrum Control 來取得「埠到本端節點」的傳送回應時間及「埠到本端節點」的傳送佇列時間。 如果任一系統的這兩項統計資料合計超過 1 毫秒,就表示系統可能遇到很高的 I/O 負載。同時請檢查系統節點的 CPU 使用率,如果使用率大於 50%,也可能會導致此問題。在任一情況下,請聯絡 IBM 客戶服務代表,以取得進一步的協助。 如果在相同的 I/O 群組中使用不同的節點類型,則某個節點的 CPU 使用率可能遠高於另一個節點的 CPU 使用率。

  • 次要系統上是否有處於「已備妥」狀態的 FlashCopy® 作業?

    如果 Global Mirror 輔助磁區是 FlashCopy 對映的來源,並且該對映長期處於「已準備好」狀態,則由於停用了快取,可能對這些磁區的效能產生影響。請啟動 FlashCopy 對映,以啟用快取並改善 Global Mirror I/O 作業的效能。