為 IBM Db2 HADR 設定可感知 Pacemaker 的快照

Backup and DR 服務提供適用於 IBM Db2 高可用性災難復原 (HADR) 資料庫的 Pacemaker 感知快照功能。使用這項功能,安全地為 Pacemaker 叢集管理的待命資料庫建立永久磁碟快照。

這個程序可避免 Pacemaker 在快照期間,將暫時停用的資料庫誤解為失敗。避免誤解可防止不必要的資料庫重新啟動。

事前準備

在所有 Db2 HADR 待命節點上,授予 Db2 執行個體 OS 使用者必要權限,以 sudo 權限執行 Pacemaker 指令。

  1. root 使用者身分開啟 /etc/sudoers.d/db2_pacemaker_access 檔案進行編輯:

    visudo -f /etc/sudoers.d/db2_pacemaker_access
    
  2. 在檔案中新增下列這行文字:

    DB2_INSTANCE_OS_USER  ALL=(root)    NOPASSWD: /usr/sbin/pcs status, /usr/sbin/pcs resource * DB2_HADR_PACEMAKER_RESOURCE_REGEX
    
  3. 替換下列預留位置:

    • DB2_INSTANCE_OS_USER:Db2 執行個體 OS 使用者名稱。
    • DB2_HADR_PACEMAKER_RESOURCE_REGEX:符合 Db2 HADR Pacemaker 資源名稱的規則運算式。例如:*_db2

啟用可感知 Pacemaker 的備份

如要啟用這項功能,請在 Db2 應用程式的備份設定中指定 Pacemaker 資源名稱。

  1. 在 Backup and DR 管理控制台中,前往 Db2 應用程式備份設定。
  2. 找到「Db2 HADR CLUSTER PACEMAKER RESOURCE」(Db2 HADR 叢集 Pacemaker 資源) 選項。
  3. 輸入管理 HADR 叢集的 Db2 執行個體 Pacemaker 資源名稱。

Pacemaker 感知快照的運作方式

Pacemaker 感知的備份程序會透過特定作業順序,協調 Pacemaker 和 Db2。

  1. 指令碼會執行預先檢查,確認指令碼位於待命節點,且 HADR 配對處於健康狀態。
  2. 這個指令碼會將 Db2 執行個體資源置於 Pacemaker 的維護模式。這項動作會指示 Pacemaker 停止監控資源。
  3. 指令碼會使用 db2 deactivate 指令停用資料庫,藉此凍結資料庫 I/O。
  4. 腳本會建立 Persistent Disk 儲存空間快照。
  5. 指令碼會使用 db2 activate 指令啟動資料庫,以解除凍結 I/O。
  6. 這個指令碼會從維護模式中移除 Db2 執行個體資源,讓 Pacemaker 恢復監控。
  7. 指令碼會記錄所有動作,並執行清除常式。

疑難排解

如果備份工作失敗,請檢查資料庫待命節點上的下列記錄檔,瞭解更多詳細資料:

  • /var/act/log/customapp-db2instance.log:包含備用資料庫停用和啟用的相關資訊,以及 Pacemaker 資源維護模式的進入和退出。
  • /act/tmpdata/BACKUP_JOB_NAME/pcs_background_cleanup.log:指出 Pacemaker 資源是否因快照超過兩分鐘的逾時時間,而自動退出維護模式。
  • /var/log/pacemaker/pacemaker.log:提供來自 Pacemaker 的額外內容。

快照逾時

如果 Persistent Disk 快照作業超過兩分鐘,Backup and DR 會自動退出 Pacemaker 資源維護模式。備份工作狀態會變更為 Retrying,排程器會在十分鐘後啟動新的備份。

備份工作已中止或遭到封鎖

如果備份作業中止或遭到封鎖,系統會在兩分鐘後退出 Pacemaker 資源維護模式,備份作業也會失敗。

設定警告

您可以透過備份與 DR 管理控制台設定快訊,在備份工作失敗時傳送電子郵件。此外,建議您根據 pcs status 設定 Pacemaker 快訊。

後續步驟