こんにちは、LinuCエバンジェリストこと、鯨井貴博@opensourcetechです。
DRBDを使っていると、ノード間のコネクションが切断されセカンダリノードのステータスが「connection:StandAlone」となることがあります。
以下のような状態です。
[root@db01 ~]# drbdadm status r0
r0 role:Primary
disk:UpToDate
db02 connection:StandAlone
r0 role:Primary
disk:UpToDate
db02 connection:StandAlone
[root@db02 ~]# drbdadm status r0
r0 role:Secondary
disk:UpToDate
db01 connection:StandAlone
r0 role:Secondary
disk:UpToDate
db01 connection:StandAlone
StandAloneからの復旧方法
復旧させる方法ですが、セカンダリで一度メタデータを破棄してやります。
すると、「Connecting」となりプライマリとの接続待ちになります。
[root@db02 ~]# drbdadm --discard-my-data connect r0
[root@db02 ~]# drbdadm status r0
r0 role:Secondary
disk:UpToDate
db01 connection:Connecting
[root@db02 ~]# drbdadm status r0
r0 role:Secondary
disk:UpToDate
db01 connection:Connecting
その後、プライマリでDRBDリソースへの接続を行うと「UpToDate」となり復旧させることができます。
[root@db01 ~]# drbdadm connect r0
[root@db01 ~]# drbdadm status r0
r0 role:Primary
disk:UpToDate
db02 role:Secondary
peer-disk:UpToDate
[root@db01 ~]# drbdadm status r0
r0 role:Primary
disk:UpToDate
db02 role:Secondary
peer-disk:UpToDate
[root@db02 ~]# drbdadm status r0
r0 role:Secondary
disk:UpToDate
db01 role:Primary
peer-disk:UpToDate
r0 role:Secondary
disk:UpToDate
db01 role:Primary
peer-disk:UpToDate