DRBD運用メモ
あああ、大分時間が空いてしまった。
日々忙しいというのを理由に備忘録をつけないというのはいただけませんね。
憶えられることは3つだけで、4つ目から忘れちゃうのかなぁ。
DRBD運用確認
一応、テストの切替は実施してみたが、
勝手に機器がリブートするなどした場合にどのようになるのかを確認
■プライマリ機のリブートした場合
プライマリ機にて障害発生と仮定してリブートを実施し、セカンダリ側のDRBDのステータスを確認する。 # /etc/init.d/drbd status drbd driver loaded OK; device status: version: 8.4.2 (api:1/proto:86-101) GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@Build64R6, 2012-09-06 08:16:10 m:res cs ro ds p mounted fstype 0:r0 WFConnection Secondary/Unknown UpToDate/DUnknown C → プライマリ側が識別できずUnknownになっている。
リブート後にdrbdが起動した後にどのような状態かを確認 # /etc/init.d/drbd status drbd driver loaded OK; device status: version: 8.4.2 (api:1/proto:86-101) GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@Build64R6, 2012-09-06 08:16:10 m:res cs ro ds p mounted fstype 0:r0 SyncTarget Secondary/Secondary Inconsistent/UpToDate C ... sync'ed: 27.0% (149512/204792)M → リブート後はどちらもセカンダリとなっている。 → おそらくこの状態では双方のデータの整合性をチェックしていると思われる。 このままだとマウントできないのでプライマリ機にて以下実行する。 # drbdadm primary r0 → プライマリ機に変更 # /etc/init.d/drbd status drbd driver loaded OK; device status: version: 8.4.2 (api:1/proto:86-101) GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@Build64R6, 2012-09-06 08:16:10 m:res cs ro ds p mounted fstype 0:r0 SyncSource Primary/Secondary UpToDate/Inconsistent C ... sync'ed: 29.4% (144764/204792)M → プライマリに変化したことを確認 # mount /dev/drbd0 /pgdata →/pgdata をマウント # df -kh Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 290G 1.8G 273G 1% / tmpfs 32G 0 32G 0% /dev/shm /dev/sda1 485M 54M 406M 12% /boot /dev/drbd0 197G 188M 187G 1% /pgdata → /pgdataがマウントされたことを確認
■セカンダリ機をリブートした場合
プライマリ側でPrimary/Unknownとなっているかどうかを確認 # /etc/init.d/drbd status drbd driver loaded OK; device status: version: 8.4.2 (api:1/proto:86-101) GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@Build64R6, 2012-09-06 08:16:10 m:res cs ro ds p mounted fstype 0:r0 WFConnection Primary/Unknown UpToDate/DUnknown C /pgdata ext4
リブート後にdrbdが起動した後、どのような状態かを確認 # /etc/init.d/drbd status drbd driver loaded OK; device status: version: 8.4.2 (api:1/proto:86-101) GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@Build64R6, 2012-09-06 08:16:10 m:res cs ro ds p mounted fstype 0:r0 SyncSource Primary/Secondary UpToDate/Inconsistent C → 起動時にはSecondaryで起動してくるので、この状態はあっている?んだと思われる。 → ただ、セカンダリ機がリブートしても一度双方でデータチェックは行われないとおかしいと思うので これは詳細のチェックを実施する必要がある。本日はここまで、お疲れさまでした。
参照:http://www.drbd.jp/users-guide/s-configure-resource.html#s-drbdconf-example
参照:http://www.oss-d.net/ha/postgresql
参照:http://www.oss-d.net/drbd-pacemaker-corosync
参照:http://level69.net/archives/258
参照:http://centossrv.com/heartbeat-drbd.shtml
参考:http://d.hatena.ne.jp/clmind/20090612/1244816651