파라미터 그룹 생성 및 관리
파라미터 그룹에서는 엔진 버전에 따라 MemStore Redis OSS 설정에 필요한 파라미터들을 한 번에 조회하고 관리할 수 있습니다.
또한, 해당 파라미터 그룹에 연결된 클러스터들의 파라미터들을 일괄로 관리할 수 있습니다.
카카오클라우드의 MemStore에서 제공하는 파라미터 목록과 기본개념은 Redis OSS와 호환됩니다. 파라미터 변경 시 MemStore 서비스에 영향을 미칠 수 있으므로 사전에 입력해야하는 적절한 파라미터 확인을 권장드립니다.
MemStore 서비스에서 파라미터 그룹을 관리하는 방법은 다음과 같습니다.
- 생성, 수정 등 파라미터 그룹에 대한 이벤트들을 Alert Center > 이벤트 알림 기능을 통해 받아볼 수 있습니다.
- 설정 가능한 이벤트 내역은 Cloud Trail > 주요개념, 이벤트 알림 설정은 Alert Center > 알림 정책 생성 및 관리 가이드 내용을 확인하세요.
파라미터 그룹 목록 보기
카카오클라우드 MemStore에서 제공하는 파라미터 그룹, 기본/커스텀 그룹 목록을 확인할 수 있습니다.
-
카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
-
Parameter Group 메뉴를 클릭하고 확인할 파라미터 그룹 분류에 따라 커스텀 그룹/기본 그룹 탭을 선택합니다.
-
선택한 탭에 맞는 Parameter Group 메뉴로 이동합니다.
항목 설명 이름 파라미터 그룹 이름 클러스터 모드 클러스터 모드 사용 여부 패밀리 파라미터 그룹과 호환되는 MemStore 패밀리 엔진 버전 연결된 클러스터 수 해당 그룹에 연결된 클러스터 수
- 연결된 클러스터의 파라미터 반영 상태에 이상이 있을 경우, 경고 아이콘 노출설명 파라미터 그룹 설명 더 보기 커스텀 그룹만 제공
- 수정: 파라미터 수정
- 복사: 해당 그룹과 동일한 파라미터로 새로운 파라미터 그룹 생성
- 초기값으로 재설정: 해당 그룹의 파라미터를 생성 시의 초기값으로 재설정
- 롤백: 파라미터 그룹의 파라미터를 직전값으로 되돌림, 수정한 내역이 없거나 이미 롤백을 한 경우 롤백 불가능
- 삭제: 파라미터 그룹 삭제
파라미터 그룹 상세 보기
MemStore 파라미터 그룹의 상세 정보를 확인할 수 있습니다.
- 카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
- Parameter Group 메뉴를 클릭하고 확인할 파라미터 그룹 분류에 따라 커스텀 그룹/기본 그룹 탭을 선택합니다.
- 선택한 탭에 맞는 Parameter Group 메뉴로 이동한 뒤 상세 정보를 조회할 파라미터 그룹을 선택합니다.
탭: 파라미터
항목 | 설명 |
---|---|
이름 | 파라미터 이름 |
값 | 파라미터의 값 |
유형 | 파라미터의 유형, - Dynamic 파라미터 중 일부는 글로벌로 적용되므로 세션 갱신 필요 |
데이터 형식 | 파라미터 데이터 형식 |
수정 여부 | 불가능 , 가능 , 가능(수정됨) - 가능 일 경우만 값 수정이 가능하며 수정된 경우 가능(수정됨) 으로 표기 |
탭: 연결된 클러스터
항목 | 설명 |
---|---|
이름 | 클러스터 이름 |
상태 | 클러스터 상태 |
파라미터 반영 상태 | 파라미터의 반영 상태, 자세한 설명은 파라미터 반영 상태 참고 |
엔진 버전 | 클러스터의 Redis OSS 엔진 버전 |
노드 유형 | 클러스터 구성을 위한 인스턴스 유형 |
클러스터 모드 | 클러스터 모드 사용 유무, 사용 , 미사용 |
고가용성 | 고가용성 사용 유무, 사용 , 미사용 |
[버튼] 재시도 | 파라미터 반영 상태가 Error-Sync , Suspended 일 때 파라미터 그룹에 연결된 클러스터에 파라미터 반영을 재시도 |
탭: 최근 이벤트
최근 7일간 발생한 파라미터 그룹의 주요 이벤트를 확인할 수 있습니다.
항목 | 설명 |
---|---|
시간 | 이벤트가 발생한 시간 |
이름 | 이벤트 이름 |
내용 | 이벤트 내용, 결과, 이벤트가 발생한 클러스터 이름 등을 확인 가능 |
- 파라미터 그룹, 최근 이벤트 종류
파라미터 그룹 유형 | 이벤트 이름 | 설명 |
---|---|---|
그룹 공통 | Apply Parameter Group | 파라미터 그룹 적용 요청이 들어왔을 때 발생 |
Apply Parameter Group Failed | 클러스터에 파라미터 그룹 적용 작업이 완료되었으나 실패했을 때 발생 | |
Apply Parameter Group Complete | 모든 클러스터에 파라미터 그룹 적용 작업을 완료했을 때 발생 | |
Apply Parameter Group To Cluster | 클러스터에 파라미터 그룹 적용 작업을 시작했을 때 발생 | |
Apply Parameter Group To Cluster Failed | 클러스터에 파라미터 그룹 적용을 실패했을 때 발생 | |
Apply Parameter Group To Cluster Complete | 특정 클러스터에 파라미터 그룹 적용을 완료했을 때 발생 | |
커스텀 | Create Parameter Group | 파라미터 그룹 생성 요청이 들어왔을 때 발생 |
Update Parameter Group | 파라미터 그룹 수정 요청이 들어왔을 때 발생 | |
Update Parameters | 파라미터 값 수정 요청이 들어왔을 때 발생 | |
Reset Parameters | 파라미터 초기화 요청이 들어왔을 때 발생 | |
Rollback Parameters | 파라미터 이전값으로 롤백 요청이 들어왔을 때 발생 |
파라미터 그룹 생성
-
카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
-
Parameter Group 메뉴를 클릭하고 확인할 파라미터 그룹 분류에 따라 커스텀 그룹 탭을 선택합니다.
-
커스텀 그룹 탭으로 이동한 뒤 아이콘 > 파라미터 그룹 생성을 선택합니다.
-
파라미터 그룹 생성 페이지에서 필요한 내용을 입력합니다. 파라미터값은 파라미터 그룹 생성 후 수정 가능합니다.
항목 구분 설명 기본 설정 파라미터 그룹 이름 파라미터 그룹의 이름
- 동일 프로젝트 내에서 중복된 이름은 사용할 수 없음설명(선택) 파라미터 그룹에 대한 부가 설명을 100자까지 입력 가능 파라미터 그룹 설정 패밀리 파라미터 그룹의 MemStore 패밀리 엔진 버전 클러스터 모드 클러스터 모드 사용 여부 기본 파라미터 그룹 해당 엔진 버전에서 제공하는 기본 파라미터 그룹 선택 파라미터 해당 파라미터 그룹의 초기 파라미터 값
파라미터 그룹 수정
커스텀 파라미터 그룹은 파라미터 그룹을 만든 후 설명 및 수정하고자 하는 파라미터의 값을 변경할 수 있습니다. 수정 여부가 가능
인 파라미터만 수정할 수 있으며,값이 수정된 파라미터는 수정 여부가 가능(수정됨)
으로 변경됩니다.
Dynamic
유형인 파라미터 중 일부는 글로벌로 적용되므로 세션 갱신이 필요합니다.- 연결된 클러스터의 파라미터 반영 상태가
Pending
,Applying
인 경우에는 파라미터를 수정할 수 없습니다. - 파라미터 그룹 수정 페이지에서는 수정 가능한 파라미터 목록 내에서 목록을 이동하여도 선택한 체크박스가 유지됩니다.
- 일부 파라미터는 수정 시 MemStore 서비스 운영에 영향을 미칠 수 있습니다. 자세한 내용은 수정 시 주의해야 할 파라미터를 확인해 주세요.
- 파라미터 수정 후 문제가 발생한 경우, 설정한 파라미터 백업을 위해서는 파라미터 그룹
복사
와재시도/롤백/초기화
를 진행하는 것을 권장합니다.
-
카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
-
Parameter Group 메뉴를 클릭하고 커스텀 그룹 탭을 선택합니다.
-
수정할 파라미터 그룹을 확인한 뒤 [더 보기] 아이콘 > 수정을 선택합니다.
-
파라미터 그룹 수정 페이지에서 필요한 내용을 수정합니다.
항목 구분 설명 기본 정보 파라미터 그룹 이름 파라미터 그룹의 이름 설명(선택) 파라미터 그룹에 대한 부가 설명을 100자까지 입력 가능 수정 가능한 파라미터 파라미터 그룹 내에서 수정 가능한 파라미터 목록
- 수정된 파라미터는 수정 여부가가능(수정됨)
으로 변경 -
클러스터에 연결된 파라미터 그룹이 복수개인 경우, 파라미터 적용 방식을 선택할 수 있습니다.
일괄반영
: 수정된 파라미터를 모든 클러스터에 일괄 반영합니다.
순차반영
: 수정된 파라미터를 클러스터에 연속해서 반영합니다.
수정 시 주의해야 할 파라미터
커스텀 파라미터 그룹 내 파라미터 값 수정 시, 일부 파라미터는 수정 시 MemStore 서비스 운영에 영향을 미칠 수 있습니다. 자세한 내용은 아래의 내용을 참고 부탁드립니다.
repl-backlog
- 프라이머리, 레플리카 노드의 레플리케이션이 네트워크 단절로 끊어졌을 경우, 부분 동기화를 위해 레플리카 노드에 전송할 데이터를 임시 보관하는 버퍼
- 네트워크 단절이 발생하면 프라이머리 노드에서는 동기화할 데이터를 backlog에 쌓아놓고, 레플리카가 다시 연결되었을 때 해당 backlog에 저장된 데이터로 부분 동기화(psync)를 시도합니다.
- 프라이머리 노드는 마지막 레플리카 노드와 연결 해제된 후에 일정 시간(repl-backlog-ttl)까지만 백로그 데이터를 유지하고 이후에 백로그 버퍼를 해제합니다.
백로그 버퍼 해제 이후, 레플리카 노드가 다시 연결되면 데이터 동기화를 위해 full sync를 진행합니다. - 연관 파라미터:
repl-backlog-size
,repl-backlog-ttl
client-output-buffer-limit-normal-hard-limit
유형 | 입력 가능 범위 | 설명 | 발생 가능한 문제 |
---|---|---|---|
integer | 0~ | 클라이언트 출력 버퍼 메모리 사용량 상한 값0 으로 설정 시 상한을 두지 않습니다. | 클라이언트 출력 버퍼가 사용하는 메모리가 해당 파라미터 설정값에 도달하면 클라이언트 연결이 해제됩니다. 너무 낮은 값으로 설정 시 MemStore 서비스가 프로비저닝되지 않을 수 있습니다. 워크 로드를 고려하여 **충분한 수치 또는 기본값(0)**으로 설정하는 것을 권장합니다. |
client-output-buffer-limit-normal-soft-limit
유형 | 입력 가능 범위 | 설명 | 발생 가능한 문제 |
---|---|---|---|
integer | 0~ | 클라이언트 출력 버퍼 메모리 사용량 임곗값 일정 시간(client-output-buffer-limit-normal-soft-seconds) 동안 허용됩니다. 0 으로 설정 시 임곗값을 두지 않습니다. | 클라이언트 출력 버퍼가 사용하는 메모리가 해당 파라미터 설정값을 넘어서는 것을 임계 시간(client-output-buffer-limit-normal-soft-seconds) 동안 허용하며, 이후에는 클라이언트 연결이 해제됩니다. 너무 낮은 값으로 설정 시 MemStore 서비스가 프로비저닝되지 않을 수 있습니다. 워크로드를 고려하여 **충분한 수치 또는 기본 값(0)**으로 설정하는 것을 권장합니다. |
client-output-buffer-limit-normal-soft-seconds
유형 | 입력 가능 범위 | 설명 | 발생 가능한 문제 |
---|---|---|---|
integer | 0~2147483647 | 클라이언트 출력 버퍼가 설정된 임곗값에 도달했을 때, 해당 클라이언트가 제한을 받기 전까지 허용되는 시간(초) 0 으로 설정 시 시간제한을 두지 않습니다. | 클라이언트 출력 버퍼가 사용하는 메모리가 임곗값(client-output-buffer-limit-normal-soft-limit)을 넘어서는 시간이 해당 파라미터 값보다 오래 유지되면 클라이언트 연결이 해제됩니다. 너무 낮은 값으로 설정 시 MemStore 서비스가 프로비저닝되지 않을 수 있습니다. 워크 로드를 고려하여 **충분한 수치 또는 기본값(0)**으로 설정하는 것을 권장합니다. |
min-replicas-max-lag
유형 | 입력 가능 범위 | 설명 | 발생 가능한 문제 |
---|---|---|---|
integer | 0~2147483647 | 프라이머리 노드가 허용하는 레플리카 노드의 핑 수신 최대 지연 시간 | 해당 파라미터 설정 시간까지 프라이머리가 핑을 수신하지 못하면 다시 연결되기 이전까지 레플리카를 사용 불가로 간주합니다. 서비스 안정성을 고려하여 적절한 수치로 설정하는 것을 권장합니다. |
min-replicas-to-write
유형 | 입력 가능 범위 | 설명 | 발생 가능한 문제 |
---|---|---|---|
integer | 0~2147483647 | 프라이머리가 쓰기 요청을 받기 위해 유지해야 하는 최소 레플리카 개수 | 프라이머리 노드가 쓰기 요청을 처리하기 위해서는 min-replicas-to-write 로 설정값 이상의 레플리카 노드를 필요로 합니다. 해당 파라미터 설정값만큼 레플리카 노드 개수가 확보되지 않을 시에는 프라이머리 노드에서 쓰기가 거부됩니다. *예: min-replicas-to-write: 5 로 설정되어 있으나클러스터에서 두 개의 레플리카 노드를 보유하고 있는 경우 primary.memstore:6379> SET hello memstore(error) NOREPLICAS Not enough good replicas to write. |
repl-backlog-size
유형 | 입력 가능 범위 | 설명 | 발생 가능한 문제 |
---|---|---|---|
integer | 16384~ | 프라이머리 노드가 레플리카 노드와 데이터 동기화를 위해 백로그 버퍼의 사이즈 | 프라이머리, 레플리카 노드의 복제 지연이 해당 파라미터 값으로 설정한 backlog size보다 크게 차이가 난다면 전체 동기화(full sync)가 발생합니다. 워크 로드 요구사항보다 낮은 값으로 설정 시, 전체 동기화가 빈번하게 발생하여 서비스 성능에 영향을 미치거나 순간적으로 서비스 가용성이 저하될 수 있습니다. 워크 로드를 고려하여 충분한 수치로 설정하는 것을 권장합니다. |
repl-backlog-ttl
유형 | 입력 가능 범위 | 설명 | 발생 가능한 문제 |
---|---|---|---|
integer | 0~2147483647 | 프라이머리 노드가 레플리카 노드와 데이터 동기화를 위해 백로그 버퍼를 보관하는 주기 0 으로 설정 시 백로그 버퍼는 절대 해제되지 않습니다. | 해당 파라미터 설정 시간 이후에는 프라이머리의 백로그 데이터가 해제되어, 레플리카 노드와 데이터 복제를 위해서는 full sync가 수행됩니다. 너무 낮은 값으로 설정 시, 전체 동기화가 빈번하게 발생하여 서비스 성능에 영향을 미치거나 순간적으로 서비스 가용성이 저하될 수 있습니다. 워크 로드를 고려하여 충분한 수치로 설정하는 것을 권장합니다. |
maxclients
유형 | 입력 가능 범위 | 설명 | 발생 가능한 문제 |
---|---|---|---|
integer | 100~65000 | 노드에 연결할 수 있는 최대 클라이언트 개수 | 워크로드 요구사항보다 낮은 값으로 설정 시, 클라이언트 커넥션에 실패하고 노드 health check 불가로 Failover가 발생할 수 있습니다. 노드 유형과 워크로드를 고려하여 충분한 수치로 설정하는 것을 권장합니다. |
파라미터 그룹 복사
커스텀 파라미터 그룹에서는 복사 기능을 제공하며 백업용으로 사용할 수 있습니다. 선택한 파라미터 그룹을 복사하여 새로운 파라미터 그룹을 만듭니다.
- 카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
- Parameter Group 메뉴를 클릭하고 커스텀 그룹 탭을 선택합니다.
- 복사할 파라미터 그룹을 확인한 뒤 [더 보기] 아이콘 > 복사를 선택합니다.
- 파라미터 그룹 복사 팝업창에서 입력 정보를 확인한 후 [확인] 버튼을 클릭합니다.
- 커스텀 그룹 탭에서 복사된 파라미터 그룹을 확인합니다.
파라미터 그룹 초기값으로 재설정
커스텀 파라미터 그룹에서는 파라미터의 값을 변경한 후에 다시 초기값으로 재설정할 수 있는 기능을 제공합니다. 초기값이란 파라미터 그룹을 만들때 선택한 엔진 버전에서 기본적으로 제공하는 디폴트값을 의미합니다. 초기값으로 재설정을 하게되면 연결된 클러스터 전체에 일괄적으로 파라미터 변경을 시도합니다.
연결된 클러스터의 파라미터 반영 상태가 Pending, Applying인 경우에는 파라미터를 초기값으로 재설정할수 없습니다.
- 카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
- Parameter Group 메뉴를 클릭하고 커스텀 그룹 탭을 선택합니다.
- 초기값으로 재설정할 파라미터 그룹을 확인한 뒤 [더 보기] 아이콘 > 파라미터 초기값으로 재설정을 선택합니다.
- 파라미터 초기값으로 재설정 팝업창에서 안내사항을 확인한 후 [확인] 버튼을 클릭합니다.
클러스터에 연결된 파라미터 그룹이 복수 개인 경우, 파라미터 적용 방식을 선택할 수 있습니다.일괄반영
: 수정된 파라미터를 모든 클러스터에 일괄 반영합니다.
순차반영
: 수정된 파라미터를 클러스터에 연속해서 반영합니다. 대기 중인 클러스터의 파라미터 반영상태는Pending
이 됩니다. - 연결된 클러스터가 있는 경우, 각 클러스터의 파라미터 반영 상태로 재설정이 잘 반영되었는지 확인합니다.
파라미터 그룹 롤백
커스텀 파라미터 그룹에서는 파라미터값을 수정한 후 직전값으로 변경할 수 있도록 롤백 기능을 제공합니다. 파라미터 그룹을 롤백하기 직전에 수정된 이력이 있는 경우에만 사용 가능한 기능입니다.
- 연결된 클러스터의 파라미터 반영 상태가
Pending
,Applying
인 경우에는 파라미터 그룹을 롤백할 수 없습니다. - 롤백을 수행한 후에는 이미 직전의 수정 이력으로 변경되었기 때문에 더 이전의 수정 이력으로 롤백할 수는 없습니다. 롤백 후 다시 파라미터를 수정하게 되면 수정 이력이 생기므로 다시 롤백을 사용할 수 있습니다.
- 카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
- Parameter Group 메뉴를 클릭하고 커스텀 그룹 탭을 선택합니다.
- 롤백할 파라미터 그룹을 확인한 뒤 [더 보기] 아이콘 > 롤백을 선택합니다.
- 파라미터 그룹 롤백 팝업창에서 안내 사항을 확인하고, [확인] 버튼을 클릭합니다.
- 연결된 클러스터가 있는 경우, 각 클러스터의 파라미터 반영 상태로 롤백이 잘 반영되었는지 확인합니다.
파라미터 그룹 삭제
커스텀 파라미터 그룹을 더 이상 사용하지 않는 경우, 파라미터 그룹을 삭제할 수 있습니다.
- 기본 파라미터 그룹은 삭제할 수 없습니다.
- 연결된 클러스터가 있는 경우에는 파라미터 그룹을 삭제할 수 없습니다.
- 카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
- Parameter Group 메뉴를 클릭하고 커스텀 그룹 탭을 선택합니다.
- 삭제할 파라미터 그룹을 확인한 뒤 [더 보기] 아이콘 > 삭제를 선택합니다.
- 파라미터 그룹 삭제 팝업창에서 입력 정보를 작성한 후 [확인] 버튼을 클릭합니다.
- 커스텀 그룹 탭에서 파라미터 그룹이 삭제되었는지 확인합니다.
파라미터 그룹 반영 재시도
연결된 인스턴스의 파라미터 반영 상태가 In-Sync
가 아닌 Error-Sync
, Suspended
일 때만 파라미터 반영을 재시도할 수 있습니다.
파라미터 반영 상태에 대한 자세한 설명은 파라미터 반영 상태 참고하시기 바랍니다.
- 카카오클라우드 콘솔 > Data Store > MemStore 메뉴로 이동합니다.
- Parameter Group 메뉴를 클릭하고 커스텀 그룹 탭을 선택합니다.
- 선택한 탭에 맞는 Parameter Group 메뉴로 이동한 뒤 상세 정보를 조회할 파라미터 그룹을 선택합니다.
- 연결된 클러스터 탭으로 이동합니다.
- 재시도할 인스턴스의 [재시도] 버튼을 클릭합니다.