Mailing List Archive

Re: DRBD$B%9%W%j%C%H%V%l(B$B%$%s$NH/@8860x$K4X$7$F(B
$B$"$-$d$^$5$s(B

$B5WJ]$H?=$7$^$9!#(B

corosync$B$N%m%0$N%a%C%;!<%8$K4X$7$F;3Fb$5$s$,;XE&$5$l$^$7$?$,!"(BDRBD$B$N5sF0(B
$B$NLL$+$i$b!"2?$i$+$NDL?.>c32$,5/$3$C$?$h$&$K8+<u$1$i$l$^$9!#(B

$B%M%C%H%o!<%/$N5sF0$r>\:Y$K%A%'%C%/$9$kI,MW$,$"$j$=$&$G$9!#$b$7$b2>A[4D6-(B
$B$J$i!"B>$N%2%9%H(BOS$B$,9bIi2Y$K$J$C$F$7$o4s$;$r<u$1$?2DG=@-$b%l%S%e!<$5$l$k(B
$B$H$$$$$+$H;W$$$^$9!#(B

$B$J$*!"E=$jIU$1$F$$$?$@$$$?%m%0$NHO0OFb$G$O!"%9%W%j%C%H%V%l%$%s$O5/$3$C$F(B
$B$$$^$;$s!#C1$K0l;~E*$K%M%C%H%o!<%/>c32$+2?$+$N860x$G!"%l%W%j%1!<%7%g%s$,(B
$BES@Z$l$?$@$1$G$9!#(B

$B%W%i%$%^%jB&$N(Bmessages$B%m%0$K$D$$$F!"(BDRBD$B$+$i$NFCD'E*$J%a%C%;!<%8$rH4$-=P(B
$B$7$F!"Cm<a$r=q$$$F$_$^$7$?!#(B

> Feb 16 18:00:05 server1 kernel: block drbd0: short read expecting header
> on sock: r=-110

$BIT40A4$J%G!<%?$7$+FI$_9~$a$J$+$C$?$H$$$&DL?.>c32$r8!=P!#(B

> Feb 16 18:00:05 server1 kernel: block drbd0: receiver terminated

DRBD$B$O%3%M%/%7%g%s$r@ZCG(B

> Feb 16 18:00:05 server1 kernel: block drbd0: Restarting drbd0_receiver

DRBD$B$O?7$?$J@\B3$r3+;O$7$h$&$H$7$?(B

$B<!$N%a%C%;!<%8$H$N4V$K(B23$BIC$[$I%V%i%s%/$,$"$j$^$9!#DL>o(BDRBD$B$O$?$@$A$K:F@\(B
$BB3$r;n$_$k$N$G!"$3$N%V%i%s%/$O>/!9IT2D2r$G$9!#(B

> Feb 16 18:00:28 server1 kernel: block drbd0: Handshake successful:
> Agreed network protocol version 97

$B%;%+%s%@%jB&$H$N%3%M%/%7%g%s$r:FEY3NN)$7$?!#%l%W%j%1!<%7%g%s:F3+$N$?$a$N(B
$B=i4|$N<jB3$-$r$3$l$+$i3+;O$9$k(B

> Feb 16 18:00:28 server1 kernel: block drbd0: meta connection shut down
> by peer.

$B=i4|<jB3$-Cf$KAj<j$+$i%3%M%/%7%g%s$r@ZCG$5$l$?!#$3$l$bDL?.>c32$KAjEv(B

> Feb 16 18:00:30 server1 kernel: block drbd0: receiver terminated

$B%3%M%/%7%g%s$r@ZCG(B

> Feb 16 18:00:30 server1 kernel: block drbd0: Restarting drbd0_receiver

DRBD$B$O?7$?$J@\B3$r3+;O$7$h$&$H$7$?(B

--
----------------------------------------------------------------------
$B5WJ](B $B85<#(B ($B3t(B)$B%5!<%I%&%'%"(B

_______________________________________________
Linux-ha-japan mailing list
Linux-ha-japan@lists.sourceforge.jp
http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan
Re: DRBDスプリットブレインの発生原因に関して [ In reply to ]
久保様

あきやまです。

messagesログの詳細な解説ありがとうございます。

> なお、貼り付けていただいたログの範囲内では、スプリットブレインは起こって
> いません。単に一時的にネットワーク障害か何かの原因で、レプリケーションが
> 途切れただけです。
セカンダリ側のログがプライマリの内容になっていました。申し訳ございません。
以下の「Split-Brain detected but unresolved, dropping
connection!」よりスプリットブレインと判断しました。

【セカンダリ側のmessagesログ】
Feb 16 18:00:04 server2 kernel: block drbd0: sock_recvmsg returned -110
Feb 16 18:00:04 server2 kernel: block drbd0: peer( Primary -> Unknown )
conn( Connected -> NetworkFailure ) pdsk( UpToDate -> DUnknown )
Feb 16 18:00:04 server2 kernel: block drbd0: asender terminated
Feb 16 18:00:04 server2 kernel: block drbd0: Terminating drbd0_asender
Feb 16 18:00:04 server2 kernel: block drbd0: Connection closed
Feb 16 18:00:04 server2 kernel: block drbd0: conn( NetworkFailure ->
Unconnected )
Feb 16 18:00:04 server2 kernel: block drbd0: receiver terminated
Feb 16 18:00:04 server2 kernel: block drbd0: Restarting drbd0_receiver
Feb 16 18:00:04 server2 kernel: block drbd0: receiver (re)started
Feb 16 18:00:04 server2 kernel: block drbd0: conn( Unconnected ->
WFConnection )
Feb 16 18:00:26 server2 kernel: block drbd0: role( Secondary -> Primary )
Feb 16 18:00:26 server2 kernel: block drbd0: new current UUID
2F15B4CF1A2353F7:1CC1ED4094EA9EB6:9A0088783FE79A74:99FF88783FE79A75
Feb 16 18:00:27 server2 kernel: block drbd0: Handshake successful: Agreed
network protocol version 97
Feb 16 18:00:27 server2 kernel: block drbd0: conn( WFConnection ->
WFReportParams )
Feb 16 18:00:27 server2 kernel: block drbd0: Starting asender thread (from
drbd0_receiver [1961])
Feb 16 18:00:27 server2 kernel: block drbd0: data-integrity-alg: <not-used>
Feb 16 18:00:27 server2 kernel: block drbd0: drbd_sync_handshake:
Feb 16 18:00:27 server2 kernel: block drbd0: self
2F15B4CF1A2353F7:1CC1ED4094EA9EB6:9A0088783FE79A74:99FF88783FE79A75 bits:0
flags:0
Feb 16 18:00:27 server2 kernel: block drbd0: peer
626E92ABB7AC7487:1CC1ED4094EA9EB7:9A0088783FE79A75:99FF88783FE79A75
bits:670 flags:0
Feb 16 18:00:27 server2 kernel: block drbd0: uuid_compare()=100 by rule 90
Feb 16 18:00:27 server2 kernel: block drbd0: helper command: /sbin/drbdadm
initial-split-brain minor-0
Feb 16 18:00:27 server2 kernel: block drbd0: helper command: /sbin/drbdadm
initial-split-brain minor-0 exit code 0 (0x0)
Feb 16 18:00:27 server2 kernel: block drbd0: Split-Brain detected but
unresolved, dropping connection!
Feb 16 18:00:27 server2 kernel: block drbd0: helper command: /sbin/drbdadm
split-brain minor-0
Feb 16 18:00:27 server2 kernel: block drbd0: helper command: /sbin/drbdadm
split-brain minor-0 exit code 0 (0x0)
Feb 16 18:00:27 server2 kernel: block drbd0: conn( WFReportParams ->
Disconnecting )
Feb 16 18:00:27 server2 kernel: block drbd0: error receiving ReportState,
l: 4!
Feb 16 18:00:27 server2 kernel: block drbd0: asender terminated
Feb 16 18:00:27 server2 kernel: block drbd0: Terminating drbd0_asender
Feb 16 18:00:27 server2 kernel: block drbd0: Connection closed
Feb 16 18:00:27 server2 kernel: block drbd0: conn( Disconnecting ->
StandAlone )
Feb 16 18:00:27 server2 kernel: block drbd0: receiver terminated
Feb 16 18:00:27 server2 kernel: block drbd0: Terminating drbd0_receiver
Feb 16 18:02:28 server2 kernel: block drbd0: role( Primary -> Secondary )
Feb 16 18:02:28 server2 kernel: block drbd0: bitmap WRITE of 0 pages took 0
jiffies
Feb 16 18:02:28 server2 kernel: block drbd0: 0 KB (0 bits) marked
out-of-sync by on disk bit-map.

2015年2月17日 13:34 Motoharu Kubo <mkubo@3ware.co.jp>:

> あきやまさん
>
> 久保と申します。
>
> corosyncのログのメッセージに関して山内さんが指摘されましたが、DRBDの挙動
> の面からも、何らかの通信障害が起こったように見受けられます。
>
> ネットワークの挙動を詳細にチェックする必要がありそうです。もしも仮想環境
> なら、他のゲストOSが高負荷になってしわ寄せを受けた可能性もレビューされる
> といいかと思います。
>
> なお、貼り付けていただいたログの範囲内では、スプリットブレインは起こって
> いません。単に一時的にネットワーク障害か何かの原因で、レプリケーションが
> 途切れただけです。
>
> プライマリ側のmessagesログについて、DRBDからの特徴的なメッセージを抜き出
> して、注釈を書いてみました。
>
> > Feb 16 18:00:05 server1 kernel: block drbd0: short read expecting header
> > on sock: r=-110
>
> 不完全なデータしか読み込めなかったという通信障害を検出。
>
> > Feb 16 18:00:05 server1 kernel: block drbd0: receiver terminated
>
> DRBDはコネクションを切断
>
> > Feb 16 18:00:05 server1 kernel: block drbd0: Restarting drbd0_receiver
>
> DRBDは新たな接続を開始しようとした
>
> 次のメッセージとの間に23秒ほどブランクがあります。通常DRBDはただちに再接
> 続を試みるので、このブランクは少々不可解です。
>
> > Feb 16 18:00:28 server1 kernel: block drbd0: Handshake successful:
> > Agreed network protocol version 97
>
> セカンダリ側とのコネクションを再度確立した。レプリケーション再開のための
> 初期の手続きをこれから開始する
>
> > Feb 16 18:00:28 server1 kernel: block drbd0: meta connection shut down
> > by peer.
>
> 初期手続き中に相手からコネクションを切断された。これも通信障害に相当
>
> > Feb 16 18:00:30 server1 kernel: block drbd0: receiver terminated
>
> コネクションを切断
>
> > Feb 16 18:00:30 server1 kernel: block drbd0: Restarting drbd0_receiver
>
> DRBDは新たな接続を開始しようとした
>
> --
> ----------------------------------------------------------------------
> 久保 元治 (株)サードウェア
>
> _______________________________________________
> Linux-ha-japan mailing list
> Linux-ha-japan@lists.sourceforge.jp
> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan
>
Re: DRBD$B%9%W%j%C%H%V%l(B$B%$%s$NH/@8860x$K4X$7$F(B [ In reply to ]
$B5WJ]$G$9!#(B

>> $B$J$*!"E=$jIU$1$F$$$?$@$$$?%m%0$NHO0OFb$G$O!"%9%W%j%C%H%V%l%$%s$O5/$3$C$F(B
>> $B$$$^$;$s!#C1$K0l;~E*$K%M%C%H%o!<%/>c32$+2?$+$N860x$G!"%l%W%j%1!<%7%g%s$,(B
>> $BES@Z$l$?$@$1$G$9!#(B
> $B%;%+%s%@%jB&$N%m%0$,%W%i%$%^%j$NFbMF$K$J$C$F$$$^$7$?!#?=$7Lu$4$6$$$^$;$s!#(B
> $B0J2<$N!V(BSplit-Brain detected but unresolved, dropping connection!$B!W$h$j(B
> $B%9%W%j%C%H%V%l%$%s$HH=CG$7$^$7$?!#(B

$B$J$k$[.$I!#$?$7$+$K(B18:00:27$B$K(BSplit-Brain...$B$,I=<($5$l$F$$$^$9$M!#(B

$B;~7ONs$KDI$$$+$1$k$H!"<!$N$h$&$J>uBV$K$J$C$F$$$?$3$H$K$J$j$^$9!#(B

18:00:05$B:"(B $B%M%C%H%o!<%/$NDL?.>c32$,5/$-$FN>%N!<%I$N(BDRBD$B$O$H$b$K$$$C$?$s(B
$B@\B3$r@Z$C$F!":FEYAj<j$H$N@\B3BT$A$KF~$C$?!#(B

$B$=$N8e%M%C%H%o!<%/>c32$,B3$-!"N>%N!<%I$H$bAj<j$H$N@\B3BT$A>u(B
$BBV$N$^$^BT$AB3$1$k$3$H$K$J$C$F$7$^$C$?(B(WFConnection)

18:00:26$B:"(B $B%;%+%s%@%jB&$N(BCorosync/Pacemaker$B$,%U%'!<%k%*!<%P$9$k$3$H$r7h(B
$BCG!#(Bserver2$B$N(BPacemaker$B$O(BDRBD$B$r%W%i%$%^%j$K>:3J$5$;$?!#(BDRBD$B$O(B
$BAj<j$H$N%3%M%/%7%g%s$,@Z$l$?$^$^$J$N$G!"<B:]$K%W%i%$%^%j$K@Z(B
$B$jBX$o$C$?(B(role(Secondary -> Primary))$B!#(B

$B$?$^$?$^%W%i%$%^%j$K@Z$jBX$o$C$?D>8e$K!"N>%N!<%I4V$NDL?.$,2D(B
$BG=$K$J$C$?(B(Handshake successful)$B!#(B

$B$3$N;~E@$G(Bserver1$B$H(Bserver2$B$NN>J}$,!"Aj<j$HL54X78$K%W%i%$%^%j$K$J$C$F$7$^(B
$B$$!"%9%W%j%C%H%V%l%$%s$,H/@8$7$F$7$^$C$?$o$1$G$9!#(B

$B$?$@$7<B:]$K(BDRBD$B$,%9%W%j%C%H%V%l%$%s$r8!=P$9$k$K$O!"Aj8_$N%3%M%/%7%g%s$,(B
$B:FEY3NN)$9$kI,MW$,$"$j!"(B18:00:27$B$K(BSplit-Brain ....$B$,I=<($5$l$^$7$?!#(B

$B860x$O!"%M%C%H%o!<%/$NABDL$,0l;~E*$K$J$/$J$C$F$$$?$3$H$G$9!#$3$l$O!"(Bcs:
($B%m%0$G$O(Bconn)$B$,(BWFConnection$B$N>uBV$,(B20$BIC6a$/B3$$$?$3$H$+$iL@$i$+$G$9!#(B
$B%M%C%H%o!<%/$NABDL$,@5>o$J>l9g!"(BWFConnection->WFReportParams->....$B$H$$$&(B
$B>uBVA+0\$,DL>o(B1$BIC0J2<$N$&$A$K?J$_!"(BConnected$B$K$J$k$O$:$G$9!#(B

$B@5>o$KF0:n$7$F$$$?$H$-$N%m%0$N(Bconn(...)$B$NA+0\$rDI$$$+$1$FHf3S$9$k$H$h$/(B
$B$o$+$k$s$8$c$J$$$+$H;W$$$^$9$h!#(B

--
$B5WJ](B $B85<#(B ($B3t(B)$B%5!<%I%&%'%"(B

_______________________________________________
Linux-ha-japan mailing list
Linux-ha-japan@lists.sourceforge.jp
http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan
Re: DRBDスプリットブレインの発生原因に関して [ In reply to ]
久保様

あきやまです。

ご回答ありがとうございます。

> 原因は、ネットワークの疎通が一時的になくなっていたことです。これは、cs:
> (ログではconn)がWFConnectionの状態が20秒近く続いたことから明らかです。
> ネットワークの疎通が正常な場合、WFConnection->WFReportParams->....という
> 状態遷移が通常1秒以下のうちに進み、Connectedになるはずです。
ネットワークの疎通がなくなった事に起因した事象という事を理解しました。
ネットワークの疎通がなくなった原因を調査したいと思います。
当該時間帯(18:00:01〜18:00:32)にPostgreSQLのAnalyzeが実行されていたので、
そのあたりも含めて調査したいと思います。


2015年2月17日 23:15 Motoharu Kubo <mkubo@3ware.co.jp>:

> 久保です。
>
> >> なお、貼り付けていただいたログの範囲内では、スプリットブレインは起こって
> >> いません。単に一時的にネットワーク障害か何かの原因で、レプリケーションが
> >> 途切れただけです。
> > セカンダリ側のログがプライマリの内容になっていました。申し訳ございません。
> > 以下の「Split-Brain detected but unresolved, dropping connection!」より
> > スプリットブレインと判断しました。
>
> なるほど。たしかに18:00:27にSplit-Brain...が表示されていますね。
>
> 時系列に追いかけると、次のような状態になっていたことになります。
>
> 18:00:05頃 ネットワークの通信障害が起きて両ノードのDRBDはともにいったん
> 接続を切って、再度相手との接続待ちに入った。
>
> その後ネットワーク障害が続き、両ノードとも相手との接続待ち状
> 態のまま待ち続けることになってしまった(WFConnection)
>
> 18:00:26頃 セカンダリ側のCorosync/Pacemakerがフェールオーバすることを決
> 断。server2のPacemakerはDRBDをプライマリに昇格させた。DRBDは
> 相手とのコネクションが切れたままなので、実際にプライマリに切
> り替わった(role(Secondary -> Primary))。
>
> たまたまプライマリに切り替わった直後に、両ノード間の通信が可
> 能になった(Handshake successful)。
>
> この時点でserver1とserver2の両方が、相手と無関係にプライマリになってしま
> い、スプリットブレインが発生してしまったわけです。
>
> ただし実際にDRBDがスプリットブレインを検出するには、相互のコネクションが
> 再度確立する必要があり、18:00:27にSplit-Brain ....が表示されました。
>
> 原因は、ネットワークの疎通が一時的になくなっていたことです。これは、cs:
> (ログではconn)がWFConnectionの状態が20秒近く続いたことから明らかです。
> ネットワークの疎通が正常な場合、WFConnection->WFReportParams->....という
> 状態遷移が通常1秒以下のうちに進み、Connectedになるはずです。
>
> 正常に動作していたときのログのconn(...)の遷移を追いかけて比較するとよく
> わかるんじゃないかと思いますよ。
>
> --
> 久保 元治 (株)サードウェア
>
> _______________________________________________
> Linux-ha-japan mailing list
> Linux-ha-japan@lists.sourceforge.jp
> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan
>