Tihiroの頭を休めるIT教室

少しだけ頭使って後は根性

スプリットブレインの解消方法

概要

君もなったことがあるだろう? そう、スプリットブレインにね!

環境

DRBD 9.0 Pacemaker 1.1

cat /proc/drbd
pacemakerd --version

でDRBDとPacemakerのバージョンを確認。

解消する

まずはリソースの確認

ls /etc/drbd.d/*.res

-> xxx.resのxxxがリソース名。

そしてクラスタ状態の確認

pcs status

-> 正しくクラスタの状態(マスタとスレーブのサーバー)が想定通りになっているのか確認。

同期状態の確認(各サーバーで実施)

drbdadm cstate all
drbdadm role all

-> マスタにしたいのが正しくマスタになっているかどうかを確認する。なっていないのなら

pcs cluster standby node_name

とかでマスタとスレーブの状態を想定通りにする。

failcountの確認とクリア

pcs resource failcount show resource_name
pcs resource cleanup resource_name

クリアしておかないと正しくリソース(?)が起動しない。

スプリッドブレインからの復帰

セカンダリ側から念のため作業

セカンダリとなる側(つまり、変更点があっても破棄される側)では、以下のコマンドを実行するらしい。

drbdadm secondary resource_name

drbdadm -- --discard-my-data connect resource_name

誤ってプライマリ側でやっちゃうと目も当てられない。ホントにそのサーバーがセカンダリかどうか確認してからやってください。

プライマリー側も作業

drbdadm connect resource_name

まとめ

クラスタ環境超怖い。