MemoryDB Multi-Region을 사용한 규모 조정
클러스터에 대한 수요 변화에 따라 MemoryDB 클러스터 내 샤드 수 또는 노드 유형을 변경해 성능을 향상시키거나 비용을 줄이도록 결정할 수 있습니다. MemoryDB Multi-Region 클러스터를 확장하면 해당 클러스터의 모든 리전 클러스터가 확장됩니다. MemoryDB Multi-Region 클러스터는 온라인 리샤딩을 지원합니다. MemoryDB Multi-Region 클러스터는 오프라인 리샤딩을 지원하지 않습니다.
클러스터를 다시 조정하도록 결정할 수 있는 조건은 다음과 같습니다.
-
메모리 부족:
리전 클러스터의 노드에서 메모리가 부족하면 데이터를 저장 및 요청 처리에 더 많은 리소스를 사용하도록 스케일 아웃 또는 스케일 업을 결정할 수 있습니다.
다음과 같은 지표를 모니터링해 노드에서 메모리가 부족한지 확인할 수 있습니다. FreeableMemory, SwapUsage, BytesUsedForMemoryDB, MultiRegionClusterReplicationLag
-
CPU 또는 네트워크 병목 현상:
클러스터에서 지연 시간/처리량 문제가 발생하면 문제를 해결하기 위해 스케일 아웃 또는 스케일 업이 필요할 수 있습니다.
다음과 같은 지표를 모니터링하여 지연 시간 및 처리량 수준을 모니터링할 수 있습니다.
CPUUtilization,NetworkBytesIn,NetworkBytesOut,CurrConnections,NewConnections,and MultiRegionClusterReplicationLag. -
클러스터가 과도하게 조정됨:
스케일 인 또는 스케일 다운과 같은 클러스터에 대한 현재 수요는 성능을 저하시키지 않고 비용을 줄입니다.
다음과 같은 지표를 사용하여 클러스터의 사용을 모니터링해 안전하게 스케일 인 또는 스케일 다운할 수 있는지 확인할 수 있습니다. FreeableMemory, SwapUsage, BytesUsedForMemoryDB, CPUUtilization, NetworkBytesIn, NetworkBytesOut, CurrConnections, NewConnections, MultiRegionClusterReplicationLag
MemoryDB 클러스터를 조정하는 방법에는 수평적 스케일링과 수직적 스케일링이라는 두 가지 방법이 있습니다.
수평적 스케일링에서는 샤드를 추가 또는 제거하여 MemoryDB Multi-Region 클러스터 내 샤드 수를 변경할 수 있습니다. 온라인 리샤딩 프로세스를 통해 리전 클러스터가 들어오는 요청을 계속 처리하는 동안 확장/축소할 수 있습니다.
수직적 스케일링에서는 노드 유형을 변경하여 MemoryDB Multi-Region 클러스터의 크기를 조정합니다. 온라인 수직적 스케일링을 통해 리전 클러스터가 들어오는 요청을 계속 처리하는 동안 확장/축소할 수 있습니다.
조정은 기본적으로 “협정된” 업데이트 전략을 사용합니다. 즉, 모든 리전 클러스터가 성공적으로 스케일링되지 않는다면 리전 클러스터가 스케일링되지 않습니다.
스케일 아웃 작업은 “협정되지 않은” 업데이트 전략도 지원합니다. 즉, 일부 리전 클러스터는 성공적으로 스케일 아웃될 수 있지만 일부 리전 클러스터는 스케일 아웃 시도에 실패합니다. 한 리전 클러스터 스케일 아웃이 성공하면 다른 모든 리전 클러스터는 다른 각 스케일 아웃도 성공할 때까지 스케일 아웃을 계속 재시도합니다.
모든 리전 클러스터가 스케일 아웃에 실패하면 다중 리전 클러스터는 “협정되지 않은” 스케일 아웃에 실패합니다.
참고
“협정되지 않은” 스케일 아웃은 리전 클러스터가 서로 다른 시간에 스케일 아웃될 때 리전 클러스터 간에 용량 불균형 상태를 연장할 수 있습니다. 이로 인해 MultiRegionClusterReplicationLag 지표가 증가하고 리전 클러스터 데이터가 장기간 발산될 수 있습니다.
MemoryDB Multi-Region 클러스터 리전 클러스터는 복제본 노드 수에 대해 서로 다른 구성을 가질 수 있지만 리전 클러스터의 모든 샤드에는 동일한 수의 복제본 노드가 있습니다.
MemoryDB Multi-Region 클러스터의 크기와 메모리 용량을 축소하려면 스케일 인 또는 스케일 다운을 통해 새 구성에 데이터를 위한 충분한 메모리와 여유 IPs, 충분한 엔진 오버헤드가 있는지, 리전 클러스터에 대한 MultiRegionClusterReplicationLag 지표가 초 또는 분 범위 내에 있는지 확인합니다.
AWS Management 콘솔, AWS CLI, MemoryDB API를 사용하여 MemoryDB Multi-Region 클러스터를 수평적 스케일링 및 수직적 스케일링할 수 있습니다.