카우치베이스 서버의 가장 큰 장점 중 하나는 클러스터를 배포하고 관리할 때 단순하다는 점입니다. 클러스터의 토폴로지를 변경하는 작업은 몇 가지 작업과 몇 가지 상태를 통해 카우치베이스 내에서 간단하게 수행할 수 있으며, 이 글에서 소개할 내용이 바로 그 내용입니다.
모든 노드는 전송하는 바이너리와 제공하는 서비스에서 Couchbase Server에서 동일합니다. 클러스터에 노드가 추가되면 대부분 첫 번째 노드의 설정을 상속하지만, 데이터 파일 위치와 같은 노드별 특정 설정을 구성할 수 있는 옵션이 있습니다.
Couchbase Server의 첫 번째 노드는 클러스터 초기화로 시작됩니다. 초기 설정은 클러스터 전체 설정, 샘플 버킷 및 클러스터의 관리자 비밀번호 설정을 캡처합니다. 서버 추가, 서버 제거, 재조정 및 장애 조치는 노드가 상태 간에 전환되도록 하는 주요 동사입니다. 이러한 동사는 3.0의 노드에서 작동합니다.
활성 및 비활성은 노드의 정상 상태를 나타냅니다. 활성은 노드가 클러스터의 일부이며 트래픽을 수신하고 있음을 의미합니다. 비활성은 더 이상 클러스터의 일부가 아니며 트래픽을 수신하지 않는 노드입니다. 다른 모든 상태는 중요한 용도로 사용되므로 자세히 살펴보겠습니다;
서버 추가 및 제거 는 명백한 연산입니다. 그러나 한 가지 주의해야 할 점은 이러한 작업은 토폴로지에 변경 사항을 즉시 커밋하지 않고 노드를 보류 중인 추가/제거 상태로 만든다는 점입니다. 장애 조치도 비슷한 방식으로 작동합니다. 장애 조치 는 장애 조치할 레플리카가 있는 경우 레플리카를 마스터로 승격시키는 동사입니다. 또한 노드를 장애 조치 상태로 전환하고 노드를 즉시 비활성화하지 않습니다.
이러한 중간 상태가 필요한 이유는 무엇일까요? 데이터 이동을 효율적으로 하려면 토폴로지를 모두 변경하고 모든 변경 사항을 한 번에 커밋하여 데이터 이동 단계의 전환을 완료하고 싶기 때문입니다! 모든 변경을 한 번에 처리하는 것이 중간에서 데이터를 여러 번 이동하는 것보다 훨씬 효율적입니다.
재조정 는 토폴로지 변경을 커밋하고 클러스터 내에서 복제본 구축 또는 재구축을 통해 데이터 이동을 시작하는 동사입니다. 리밸런싱에는 동일한 수의 서버를 추가하고 제거한다는 사실을 감지하는 기능 등 많은 스마트 기능이 있습니다. 이 경우를 스왑 리밸런스라고 하며 보류 중인 제거 또는 추가 상태가 아닌 노드에서는 데이터 이동이 필요하지 않습니다.
이 그림에서 한 가지를 제외하고는 대부분의 사람들이 놀라지 않습니다(심지어 일부 베테랑들도 놀랐습니다). 한 가지 놀라운 점은 서버 제거 작업과 서버 제거 작업이 노드를 즉시 로테이션에서 제외하지 않는다는 사실입니다. 보류 중인 제거 상태의 노드는 재밸런싱이 이루어질 때까지 트래픽을 계속 처리합니다. 카우치베이스에서 면접을 보신다면 이 주제에 대한 트릭 질문을 조심하세요!
참고로 다음 버전의 제품에서는 이 영역에 몇 가지 주요 변경 사항을 적용하려고 합니다. 피드백을 주시고 싶으시면 언제든지 cihan@couchbase.com 으로 연락 주시기 바랍니다.
즐기세요!
여행 전기 스위치는 상대적으로 고정 된 물체 또는 움직이는 물체, 여행 스위치를 설치할 수 있습니다. 스위치 소켓접점 개폐 상태 변화는 제어 회로와 몸체의 움직임에 따라 달라집니다. 실제 생산에서 모듈의 기계식 이동 부품을 생산할 때 전기 스위치가 리미트 스위치에 닿으면 미리 정해진 위치에 설치된 전기 스위치가 트립됩니다. 회로 차단기 서킷 스위칭의 실현에 관한 접촉 스포츠.