Subject
Master Node에서 hb.json에 명시된 3개의 heartbeat IP 중 하나라도 잘못되면 동기화안되는 버그
APPLIES TO:
"MCCS version: 3.1.7
OS: -
APPs: -
Disk Type: -"
SYMPTOMS
"<문제가 됐던 상태의 hb.json>
Master hb.json : node1(100.100.250.11, 200.200.250.11, 10.10.250.11), node2(100.100.250.12, 200.200.250.11, 10.10.250.12)
Slave hb.json : node1(100.100.250.11, 200.200.250.11, 10.10.250.11), node2(100.100.250.12, 200.200.250.12, 10.10.250.12)
master에서 slave의 primary hb 중 하나의 IP를 200.200.250.11로 잘못 가지고 있었으나, 동작상 문제를 일으키면서도 아무런 경고메세지가 나오지 않음
<안되는 문제>
hb.json부터 그룹의 상태까지 전혀 동기화되지 않는다.
마스터에서는 슬레이브의 모든 리소스 상태를 Unknown으로 파악한다.
Group Online, Offline 명령이 동작하지 않는다 : node2에서 일부까지 Online 동작했으나 중간에서 Online 동작을 멈추고 node1에서는 동기화가 되지 않아 모두 Unknown
<hb.json 수정후>
모든 동작이 정상작동한다
<문제점>
두 노드가 통신하는 하나의 ip이 다르다고 하더라도, 나머지를 통해 이를 보정하거나, 하나의 heartbeat line에 문제가 있다는 사실을 경고해야함에도 불구하고, 서비스와 콘솔동작에는 문제가 없으면서, MCCS가 정상동작하지 않는 것은 문제라고 생각된다.
3개의 라인을 통해 주고 받는 메세지의 검증 루틴과 에러메시지 출력이 필요하다고 판단된다."
CAUSE
ㅡ
SOLUTION
hb.json에서 동일한 ip를 사용할 경우, 정상적인 에러 메시지를 mccs.log에서 확인할 수 있으므로, 본 이슈는 코드의 수정없이 종결시키도록 한다.