I am using Centos5.4 & DRBD8.2.6 heartbeat2.1.3 & one java program with Mysql & Asterisk126.96.36.199.
On DRBD disk i put 2 service Asterisk & Mysql. SO if DRBD Disk not up both services not work.
I properly see
cs:Connected st:Primary/Seconday ds:UpToDate/UpToDate
when i use 2 machines & both working fine.
But when i try to test them by few test cases of network failure(so they should show changing roles & etc). I test with 1/2/3 switches in between 2 nodes.(Almost all possibilities of network failure) one test fail & it show me cs: StandAlone on Primary. & for remove StandAlone i have only answer that restart that node.
I follow following steps:
Primary(Node 1) & Secondary(Node 2) Running fine with all services. Remove Node 1's LAN cable from Switch & wait.(So secondary(Node 2) become Primary & All OK, on primary(node 1) all services stop related to DRBD) Remove Node 2's LAN cable from Switch & wait.(all services stop related to DRBD on Node 2) Attach LAN cable of Node 1 to Switch, wait(All services become normal related to DRBD) Attach LAN Cable of Node 2 to switch.
Note:- Both node attach with each other by only 1 switch.
Now at this point i try to read logs i found, Primary change its cs: WFConnection to WFReportParams then State Change Failed:- Device is Held open by someone.
As per my observation,it because as step 4 complete on node 1 DRBD become OK & it show
cs:WFConnection st: Primary/Unknown ds:UpToDate/DUknown
So Mysql & Asterisk also runs from DRBD disk on node 1. & at step 5 they still running so i think this state change failed comes.
For this what should i change in drbd.conf? Or its only answer that i should update Centos, DRBD & Heartbeat with latest versions? or any other answer/clue/idea/way?
If second answer then which combination of versions of these 3 is working fine?