세이프킷 서버이중화 커뮤니티

하트비트를 서버간 다이렉트 연결외에 퍼블릭도 같이 하트비트로 지정 권장

윈도우에서,

에러 로그,
| 2019-12-12 20:09:01:906000 | heart | E | Error: heartbeat not including one locally defined address
| 2019-12-12 20:09:01:906000 | heart | E | addr: 10.0.0.1 addr: 10.0.0.2

| 2019-12-12 20:09:07:387000 | heart | E | Action wait from failover rule heartbeatlocaladdr_failure
그러니까, 컴퓨터에 하트비트가 존재하지 않아서 발생했습니다.

아래처럼, hb 있는데,… 192.168.0.2 (1번서버)가 네트워크 단절유무를 떠나,
존재만 하면 되는데, 이것자체가 없어서 그러한 현상이 발생했습니다.

  <heart timeout="10000" pulse="700">
     <heartbeat ident="hb">
        <server addr="10.0.0.1"/>
        <server addr="10.0.0.2"/>
     </heartbeat>
  </heart>

NIC가 끊어진 상태에서, 윈도우 재부팅을 했더니, 링크가 끊어진 상태에서는 IP자체가 부여되지 않는 경우가 발생하니,…
하트비트 NIC를 어떤 네트워크에라도 잠시 연결만 하면 IP는 부여됩니다. (다시 끊어도 한번부여된 IP는 남아 있습니다.)
하지만,… 잠시라도 연결하지 않아도 되도록,
다음과 같이 시나리오를 수정해서 보완할 수 있겠습니다.


두서버모두 중지해 놓고,
주서버 1번에서,
고급구성에서 시나리오 파일 중 conf/userconfig.xml 열어서

하트비트 부분에 아래와 같이 서비스IP도 하트비트가 될 수 있도록 추가하고,
ident=“flow” 는 기존hb에 추가하고 저장합니다. (복제는 이쪽으로 하라고 지정)

  <heart timeout="10000" pulse="700">
     <heartbeat ident="hb" ident="flow">
        <server addr="10.0.0.1"/>
        <server addr="10.0.0.2"/>
     </heartbeat>
     <heartbeat ident="hbpub">
        <server addr="192.168.1.101"/>
        <server addr="192.168.1.102"/>
     </heartbeat>       
  </heart>

그런 뒤, 시나리오명 우측클릭, 배포구성을 적용합니다.
이제, 일반적인 시작절차를 진행합니다.