14.4 DRBD 疑難排解

drbd 設定涉及眾多不同元件以及產生原因不同的各種問題。以下幾節介紹了一些常見問題,並提供了解決這些問題的提示。

14.4.1 組態

如果初始的 drbd 設定未按預期工作,則可能是組態有問題。

若要獲取有關組態的資訊,請執行下列步驟︰

  1. 開啟終端機主控台,然後以 root 使用者身份登入。

  2. 執行 drbdadm (含 -d 選項),測試組態檔案。輸入

    drbdadm -d adjust r0
    

    adjust 選項的試執行 (dry run) 期間,drbdadm 會將 DRBD 資源的實際組態與 DRBD 組態檔案進行比較,但不會執行呼叫。檢閱輸出,以確定您瞭解所有錯誤的來源及原因。

  3. 如果 drbd.conf 檔案中存在錯誤,請先校正這些錯誤再繼續。

  4. 如果分割區與設定均正確,請再次執行 drbdadm (不含 -d 選項)。輸入

    drbdadm adjust r0
    

    此指令會將組態檔案套用於 DRBD 資源。

14.4.2 主機名稱

對於 DRBD 而言,主機名稱是區分大小寫的,因此 Node0node0 是不同的主機名稱。

如果您擁有多個網路設備,並希望使用專屬的網路設備,主機名稱可能不會解析成所使用的 IP 位址。在這種情況下,請使用參數 disable-ip-verification 讓 DRBD 忽略此現象。

14.4.3 TCP 埠 7788

如果您的系統無法連接至點,這可能是因為本地防火牆出現了問題。依預設,DRBD 使用 TCP 埠 7788 存取其他節點。請確定在兩個節點上均可存取此連接埠。

14.4.4 DRBD 設備在重新開機後損毀

如果 DRBD 不知道存放最新資料的真實設備,就會導致電腦分裂狀態。在這種情況下,各個 DRBD 子系統將會做為次要項目出現,並且不會相互連接。在這種情況下,會將以下訊息寫入到 /var/log/messages

Split-Brain detected, dropping connection!

若要解決此情況,您必須選取一個應丟棄修改的節點。登入該節點,然後執行以下指令︰

drbdadm secondary r0 
drbdadm -- --discard-my-data connect r0

在其他節點上,執行指令︰

drbdadm connect r0