[MSP-162] 엔진종료(MCCS Agent Service Down)에서 Running 모드로 재접속시(MCCS Agent Start) SyncPahse(Heartbeat Line을 이용한 양서버 정보동기화)가 동작하지 않는 문제점

Subject
MCCS Agent Service Down으로 인한 엔진종료상태에서 Running 모드로 재접속시(MCCS 재시작) SyncPahse(Heartbeat Line을 통한 양서버 정보동기화)가 동작하지 않는 문제점

APPLIES TO:
"MCCS version: 4.1
OS:
APPs: none
Disk Type: shared or mirror, none"




SYMPTOMS
엔진종료에서 Running 모드로 재접속시 SyncPahse가 동작하지 않음

CAUSE
"노드간 Ping은 가능 하지만, 핫빗은 단방향으로 막혀 있을떄

A(ON) ---- HB(x) ----> B(OFF)
A(ON) <--- HB(O) ----- B(OFF)

즉, 위 상황에서 노드 B는 핫빗 상태가 정상화되면 A노드에 대해 Exited-> Running으로 판단해서 syncPhase 에 들어 가야 한다.
기존 코드에서는 노드 상태가 Exited 일경우 Sync 가 가능하도록 되어 있었다."



SOLUTION
"[수정]
B 노드가 sync 신호를 주고 Sync_waiting 상태가 되면, A 노드로 부터 요청으로 받은 Cluster 정보로부터 노드 정보를 갱신하도록 수정

[추기]
이 방식은 Cluster 정보를 요청받은 (위에서는 A) 노드가 정상적인 정보를 가지지 않으면, 잘못된 정보가 갱신 될수 있고,
B노드는 자신의 정보를 A에 전달 하지 않으므로 A노드는 최신 데이타를 가지지 못할 가능성이 항상 존재 한다.
이부분은 4.2 버전에서 멀티노드 지원 노드의 정식적인 syncPahse지원으로 해결 한다."