유지 관리 모드
NCache 에 대한 유지 관리 모드를 지원합니다. 파티션-복제본 가장 일반적으로 사용되는 캐싱 토폴로지입니다.
캐싱 서버의 하드웨어/소프트웨어 패치 또는 업그레이드를 수용하기 위해 유지 관리 모드가 도입되었습니다. 일반적인 업그레이드 작업 흐름에는 한 번에 하나의 캐시 노드를 중지하고, 서버를 업그레이드하고, 서버에서 캐시를 다시 시작하는 작업이 포함됩니다. 이 업그레이드 절차를 통해 애플리케이션 가동 중지 시간을 방지할 수 있습니다. 그러나 캐시 노드를 중지하면 전체 캐시 클러스터 내에서 상태 전송이 트리거되어 네트워크 및 CPU와 같은 리소스가 과도하게 사용됩니다.
NCache 유지 관리 모드에서는 유지 관리를 위해 노드가 일시적으로 중지되는 경우 상태 전송을 중단하여 이 문제를 해결합니다. 유지 관리를 위해 노드가 특별히 중지되면 실행 중인 캐시 클러스터에 지정된 시간 초과 기간 동안 상태 전송을 중지하도록 알립니다. 클러스터가 유지 관리 모드에 있을 때 중지된 노드에 대한 클라이언트 데이터 요청은 해당 복제본 노드에서 제공됩니다. 중지된 노드가 클러스터에 다시 합류하면 복제 노드에서 데이터를 전송합니다.
유지 관리 모드 작동 방식
아래와 같이 3개 노드로 구성된 클러스터를 생각해 보세요. 노드 1이 유지 관리로 표시된 경우 노드 XNUMX의 복제본에서 모든 작업이 제공되는 동안 특정 시간 초과 동안 상태 전송이 중지됩니다. 유지 관리 기간 동안 유지 관리 노드의 복제본은 활성 파티션으로 작동합니다. 이는 클라이언트 개입 없이 발생하며 유지 관리를 위해 노드가 중지된 경우에도 클라이언트 작업이 원활하게 작동하도록 보장합니다.
시간 초과 및 상태 전송
사용자가 설정한 타임아웃은 상태 전송 스레드의 대기 기간으로 사용됩니다. 이 스레드는 노드에 다시 조인하거나 조인하지 않음으로써 클러스터가 유지 관리 모드를 종료할 때까지 기다립니다. 이 경우 두 가지 결과가 있습니다.
노드 3은 제한 시간 내에 클러스터에 다시 가입하지 않습니다.
이 경우 상태 이전 작업은 나머지 노드(노드 1과 노드 2) 사이에서 시작되고 정상 상태를 재개합니다.
이 경우 노드 2가 클러스터를 갑자기 떠나면 노드 3에 복제본이 있기 때문에 데이터 손실이 발생할 수 있습니다.
노드 3은 제한 시간 내에 클러스터에 다시 참여합니다.
노드 3이 타임아웃 기간 내에 재가입하면 클러스터의 원래 상태를 재개하기 위해 상태 이전이 시작됩니다. 이 상태 이전은 이제 두 단계로 구성됩니다.
- 노드 1(노드 3의 복제본) --> 노드 3(노드 3의 활성 파티션)
- 노드 2(노드 2의 활성 파티션) --> 노드 3(노드 2의 복제본)
행동
유지 관리를 위해 클러스터를 표시하려면 최소 2개의 노드가 필요합니다.
클러스터가 유지 관리 대상으로 표시된 경우 다음을 통해 클러스터에 노드를 추가하거나 제거할 수 없습니다. NCache 관리 센터 또는 도구.
클러스터가 유지 관리로 표시된 경우 유지 관리를 위해 중지된 노드를 제외한 다른 노드는 시작할 수 없습니다. 노드 3이 이미 중지되었고 노드 2가 유지 관리 대상으로 표시되었다고 가정하면 노드 2만 시작할 수 있습니다.
유지 관리를 위해 중지되지 않은 노드를 중지/시작하면 "클러스터가 이미 유지 관리 중입니다."라는 예외가 발생합니다.
노드 작동 중지 또는 작동으로 상태 전송이 이미 진행 중인 경우 클러스터를 유지 관리로 표시할 수 없습니다. 다음 예외가 발생합니다. "클러스터는 유지 관리, 상태 전송 또는 진행 중인 클러스터 상태 변경에 사용할 수 없습니다."
사용자는 상태 전송 카운터를 통해 또는 다음의 캐시 로그 파일을 확인하여 클러스터가 상태 전송 중인지 여부를 확인할 수 있습니다.
%NCHOME%/log-files
(Windows) 또는\opt\ncache\log-files
(리눅스). "상태 전송이 완료되었습니다"가 로그 파일에 기록됩니다.클러스터가 유지 관리로 표시되면 캐시 로그에 "클러스터가 유지 관리 중인 노드로 표시됨: [IP]:[Port] for xx:xx:xx {HH:MM:SS)' 로그가 있습니다.
클러스터는 다음 시나리오에서 유지 관리 모드를 종료할 수 있습니다.
- 유지 관리로 표시된 노드가 다시 시작됩니다.
- 유지 관리 모드에 대한 시간 초과가 발생했습니다.
- "유지 관리 모드 종료" 옵션은 다음을 통해 선택됩니다. NCache 관리 센터.
- 노드가 갑자기 클러스터를 떠납니다.
클러스터가 유지 관리 모드를 종료하면 상태 전송이 시작됩니다.