본문으로 건너뛰기

주요 개념

MemStore 서비스에서 클러스터, 샤드, 노드, 자동 장애 조치, 백업, 파라미터 그룹이 어떻게 구성되고 동작하는지 설명합니다. 리소스별 생성과 관리 방법은 각 How-to Guides에서 확인할 수 있습니다.

주요 개념설명
Cache Only디스크를 사용하지 않고 모든 데이터를 메모리에 저장하는 캐시 서비스
클러스터샤드와 노드를 포함하는 MemStore의 관리 단위
샤드클러스터 모드를 사용하는 클러스터에서 데이터를 분산 저장하는 단위
노드Primary 또는 Replica 역할을 가지는 MemStore 실행 단위
자동 장애 조치노드 장애 시 자동 조치를 통해 서비스를 지속할 수 있도록 지원하는 기능
승격Replica 노드를 Primary 노드로 전환하는 기능
엔드포인트클러스터 또는 노드에 접속하기 위해 제공되는 접근 주소
백업클러스터 정보를 저장해 복원에 사용하는 데이터 사본
파라미터 그룹Redis OSS, Valkey 설정 파라미터를 그룹 단위로 관리하는 객체

Cache Only

MemStore 서비스는 모든 데이터를 디스크에 저장하지 않고 메모리에 저장해 캐시 용도로만 사용할 수 있습니다.

클러스터

클러스터는 하나 이상의 노드 모음으로서, 자동으로 관리되는 구성 단위입니다. 클러스터는 다수의 샤드 내 여러 노드로 구성되며 각 노드는 Primary와 Replica의 역할을 가집니다. 필요에 따라 샤드 또는 Replica 노드를 추가하거나 삭제할 수 있습니다.

클러스터 생성 방법은 클러스터 생성을, 클러스터 조회와 관리 방법은 클러스터 관리를 참고해 주세요.

Valkey 클러스터 생명 주기 및 상태 값

Valkey는 Redis OSS와 달리 클러스터 모드 활성화 여부와 관계없이 클러스터 및 노드가 독립적인 상태 값을 갖습니다.

이미지 Valkey 클러스터 모드를 사용할 경우의 클러스터/노드 생명 주기 다이어그램

상태설명
Init클러스터 생성 초기 상태로 생성 시작 전의 상태
Creating노드 생성 및 클러스터 구성 준비하는 상태
Running클러스터가 정상적으로 동작하는 상태
Scaling(horizontal)샤드 추가/삭제, 노드 추가/삭제가 진행중일 때
Scaling(vertical)노드의 Flavor 변경이 진행중일 때
Modifying그 외 보안그룹 변경 등 클러스터에 기타 변경이 있는 상태
Deleted클러스터 삭제가 완료된 상태
Deleting클러스터 삭제 처리 중인 상태
Failed- 특정 시간 이상 클러스터 생성이 지연될 때
- 서비스에 장애가 발생했을 때
- 모든 노드가 failed 상태일 때
- 특정 시간 이상 최신 클러스터 상태를 전달받지 못했을 때
Switching승격 작업을 진행중일 때
Warning하나라도 failed 상태인 노드가 발생한 상태

Redis OSS 클러스터 생명 주기, 상태 값 및 과금

클러스터 모드 사용 시 상태 값

클러스터 모드를 사용할 경우, 샤드와 각 노드의 상태는 클러스터 상태에 의존하므로 동일한 상태를 가집니다.

이미지 Redis OSS 클러스터 모드를 사용할 경우의 클러스터/샤드/노드 생명 주기 다이어그램

상태설명과금 여부
Init클러스터 생성 초기 상태로 생성 시작 전의 상태미청구
Creating자원 생성 중미청구
Running동작 중청구
Scaling(horizontal)샤드 추가/삭제, 노드 추가/삭제가 진행 중청구
(새로 생성된 노드는 Running 상태가 될 때 과금 시작)
Scaling(vertical)노드의 Flavor 변경이 진행 중청구
(새로 생성된 노드는 Running 상태가 될 때 과금 시작)
Modifying클러스터의 보안 그룹 변경 작업 진행 중청구
Deleting자원 삭제 중미청구
Failed영구적인 오류 발생으로 인한 비정상 상태이며, 정상 상태로 복귀할 수 없으며 삭제만 가능미청구

샤드

샤드는 클러스터 모드를 사용하는 노드의 그룹으로, 클러스터의 데이터를 각각의 샤드에 분할하여 할당합니다.
Valkey를 사용할 경우, 최소 3개에서 최대 12개의 샤드로 클러스터를 구성할 수 있으며, 각 샤드는 최소 2개에서 최대 5개의 노드로 구성할 수 있습니다.
Redis OSS를 사용할 경우, 최소 1개에서 최대 12개의 샤드로 클러스터를 구성할 수 있으며, 각 샤드는 최소 2개에서 최대 5개의 노드로 구성할 수 있습니다.

클러스터 모드를 사용하는 클러스터의 샤드와 노드 관리 방법은 샤드 및 노드 관리를 참고해 주세요.

노드

노드는 클러스터에 포함된 VM(Virtual Machine)입니다. 노드 생성 및 삭제 시, 필요한 작업을 수행하며 상태를 자동으로 변경합니다. 클러스터에 속한 각 노드는 Primary 역할 또는 Replica 역할을 부여받습니다. 클러스터 모드를 사용하지 않는 경우, 최대 6개의 노드를 구성할 수 있습니다.

클러스터 모드를 사용하지 않는 클러스터의 노드 관리 방법은 노드 관리를, 노드 유형 변경 방법은 노드 유형 변경을 참고해 주세요.

역할설명
Primary사용자가 일반적으로 사용하는 읽기/쓰기 목적의 노드
ReplicaPrimary의 부하를 줄이기 위한 읽기 전용의 노드

노드 유형

사용자는 노드 생성 시 데이터의 크기 및 부하를 고려하여 유형을 선택할 수 있습니다. 추후 더 다양하고 특화된 노드 유형을 지원할 예정입니다.

노드 유형vCPU (개)Memory(GB)
m2a.large28
m2a.xlarge416
m2a.2xlarge832
m2a.4xlarge1664
m2a.8xlarge32128
m2a.12xlarge48192
m2a.16xlarge64256
m2a.24xlarge96384
r2a.large216
r2a.xlarge432
r2a.2xlarge864
r2a.4xlarge16128
r2a.8xlarge32256
r2a.12xlarge48384
r2a.16xlarge64512
r2a.24xlarge96768
t1i.small22
t1i.medium24
t1i.large28
t1i.xlarge416
t1i.2xlarge832
t1i 노드 유형 사용 시 유의 사항

t1i 인스턴스 유형은 최초 생성 후 Running 상태로 전환되는 데 수 분에서 수십 분이 소요될 수 있습니다.
CPU 크레딧 잔여량이 부족할 경우 CPU 부하가 있는 작업이 정상 동작하지 않을 수 있습니다.

노드 생명 주기 및 상태 값과 과금

노드의 생명 주기와 상태 값은 다음과 같습니다.

이미지 Valkey 노드 생명 주기 다이어그램

상태설명과금 여부
Init클러스터 생성 시 설정한 각 노드들이 생성을 시작하는 상태미청구
Creating노드 생성 및 Valkey 서비스를 준비하는 상태미청구
RunningValkey 서비스가 정상적으로 기동 중인 상태청구
Deleted노드 삭제가 완료된 상태미청구
Deleting노드 삭제 처리 중인 상태미청구
Resizing노드 flavor를 변경 중인 상태청구
Warning노드 헬스 체크가 지연되고 있는 경우청구
Failed- 특정 시간 이상 클러스터 생성이 지연될 때
- 서비스를 컨트롤하는 Agent에 장애가 발생했을 때
- 서비스에 장애가 발생했을 때
미청구

자동 장애 조치

MemStore 서비스는 사용자 편의성과 안정적인 운영을 위해 자동 장애 조치 기능을 제공합니다. 해당 기능을 사용하면, 노드 장애 시 자동으로 조치하여 서비스를 지속할 수 있는 환경을 제공합니다.

사용자는 클러스터 생성 시 클러스터 모드를 사용할 경우에는 자동 장애 조치을 기본으로 사용하게 되며 사용 여부를 변경할 수 없습니다.
클러스터 모드를 사용하지 않을 경우, Valkey는 노드가 2개 이상일 경우, 자동으로 자동 장애 조치 기능이 활성화되며 Redis OSS는 클러스터 생성 시 자동 장애 조치 기능 사용 여부를 선택할 수 있고, 운영 중에도 해당 기능의 사용 여부를 변경할 수 있습니다.
클러스터의 상세 정보 탭에서 클러스터의 자동 장애 조치 기능 사용 여부를 확인할 수 있습니다. 해당 기능을 사용하는 경우에도 사용자는 노드를 추가 또는 삭제할 수 있으며, 추가된 노드는 자동 장애 조치 범위에 자동으로 포함됩니다.

Redis OSS 자동 장애 조치 설정 방법은 자동 장애 조치 설정을 참고해 주세요.

노드 장애

노드의 역할에 따라 아래와 같은 방식으로 노드 장애를 해결합니다.

구분설명
Primary 노드 장애Primary 노드 장애 시 자동으로 가장 최신의 데이터를 보유한 Replica 노드를 선택하여 Primary로 승격(Automatic Failover)하며, 장애가 발생한 노드를 자동 복구 조치하여 Replica 개수를 유지함(Auto Healing)
Replica 노드 장애Replica 노드 장애 시, 장애가 발생한 노드를 자동 복구 조치하여 Replica 개수를 유지함

승격

Redis OSS의 경우 클러스터 모드 또는 자동 장애 조치 기능을 사용하는 경우에는 사용자가 승격을 요청할 수 없고, 노드 장애 상황에 따라 서비스에서 필요하다고 판단할 때 자동으로 승격을 수행합니다. 자동 장애 조치 기능을 사용하지 않는 경우에는 수동 승격 기능을 제공합니다. Primary 노드에 장애가 발생할 경우, 사용자는 승격 기능을 통해 Replica 노드를 Primary 노드로 승격할 수 있습니다. Valkey의 경우 클러스터 모드 또는 자동 장애 조치 기능 사용 여부와 관계 없이 사용자가 승격 요청을 할 수 있습니다.

노드 승격 방법은 노드 승격을 참고해 주세요.

엔드포인트

클러스터 생성 시 클라이언트가 접속할 수 있는 엔드포인트를 제공합니다.
해당 주소는 사용자가 선택한 사설 네트워크(서브넷)에서 접속 가능하며, 접근 권한 및 보안 설정까지 자동으로 처리되어 안전합니다.

클러스터 연결 방법은 MemStore 클러스터 연결을 참고해 주세요.

클러스터 모드에 따른 엔드포인트
  • 클러스터 모드를 사용하지 않는 경우, Read/Write를 할 수 있는 Primary 노드의 엔드포인트와 Read 전용 엔드포인트를 제공합니다.
  • 클러스터 모드를 사용할 경우, Read/Write를 할 수 있는 클러스터의 엔드포인트를 제공합니다.

백업

생성된 클러스터 정보를 백업하여 복원에 사용할 수 있습니다.

백업 조회와 관리 방법은 백업 관리를 참고해 주세요.

이미지

상태설명과금 여부
Available백업을 정상적으로 사용 가능한 상태청구
Copying백업을 복사중인 상태청구
Creating백업이 생성중인 상태미청구
Deleted백업 삭제가 완료된 상태미청구
Deleting백업 삭제 처리 중인 상태미청구
Error백업 중 오류가 발생한 상태미청구
Exporting백업을 사용자의 Object Storage로 내보내기 중인 상태청구
Pending백업 생성을 기다리는 상태미청구
Restoring백업이 클러스터 복원에 이용중인 상태청구

파라미터 그룹

MemStore의 파라미터 값을 그룹 단위로 생성하고 관리할 수 있습니다.

파라미터 그룹 생성과 수정 방법은 파라미터 그룹 관리를, 클러스터에 적용된 파라미터 그룹을 변경하는 방법은 파라미터 그룹 변경을 참고해 주세요.

파라미터 반영 상태

상태 값설명
Pending파라미터 반영을 대기하는 상태
Applying클러스터에 파라미터를 반영 중인 상태
In-Sync클러스터에 파라미터가 정상 반영된 상태
Error-Sync클러스터에 파라미터 반영을 실패한 상태
- 파라미터 반영을 재시도할 수 있으며, 재시도 시 Applying 상태로 변경
Suspended순차 반영 시 앞 순서의 클러스터가 파라미터 반영에 실패하여 다음 작업을 대기하는 상태
- Pending에서 Suspended로 상태가 변경되면 파라미터 반영을 재시도할 수 있음
- 재시도 시 Applying 상태로 변경