본문으로 건너뛰기

공통

공통 API는 클러스터 모드의 설정(사용/사용 안 함)에 관계없이 사용할 수 있습니다. 

엔진 버전 목록 조회

사용 가능한 엔진 버전 목록을 조회합니다.

Request
엔진 버전 목록 조회 Request Syntax
curl -X GET "https://redis.kr-central-2.kakaocloud.com/v1/redis/versions" \
-H "accept: application/json" \
-H "X-Auth-Token: {token-id}"
종류파라미터유형설명
Header{token-id}*StringAPI 인증 토큰 참고
Response
상태 코드설명
200리소스 생성 요청에 대한 성공 응답
400사용자의 요청이 유효하지 않아 작업을 진행할 수 없음
403권한이 없는 사용자가 요청한 경우
404사용자가 요청한 리소스 존재하지 않은 경우
필드유형설명
[]String Array엔진 버전 목록
엔진 버전 목록 조회 Response Example
200 OK
content-length: ...
content-type: application/json; charset=UTF-8
["6.2.5","5.0.6"]

플레이버 목록 조회

사용 가능한 플레이버 목록을 조회합니다.

Request
플레이버 목록 조회 Request Syntax
curl -X GET "https://redis.kr-central-2.kakaocloud.com/v1/redis/flavors" \
-H "accept: application/json" \
-H "X-Auth-Token: {token-id}"
종류파라미터유형설명
Header{token-id}*StringAPI 인증 토큰 참고
Response
상태 코드설명
200리소스 생성 요청에 대한 성공 응답
401인증되지 않은 사용자가 요청한 경우
403권한이 없는 사용자가 요청한 경우
404사용자가 요청한 리소스 존재하지 않은 경우
500내부 에러로 작업을 진행할 수 없는 경우
필드유형설명
flavors[]Object Array플레이버 목록
flavors[].idString플레이버 ID
flavors[].nameString플레이버 이름
flavors[].vcpusInteger플레이버의 가상 CPU 수
flavors[].memoryInteger플레이버의 메모리 크기(GiB)
플레이버 목록 조회 Response Example
200 OK
content-length: ...
content-type: application/json; charset=UTF-8

{
"flavors": [
{
"id": "3830ebad-ea2f-4822-8a7d-9e301c86a58d",
"name": "a1-2-co",
"vcpus": 2,
"memory": 4
},
{
"id": "9e34af24-e1fa-475f-ba5c-11f0116e1d85",
"name": "a1-4-co",
"vcpus": 4,
"memory": 8
},
{
"id": "f443e5e2-84c1-47c1-984b-ee2221b96fe8",
"name": "a1-8-co",
"vcpus": 8,
"memory": 16
}
]
}

클러스터 목록 조회

모든 클러스터 목록을 조회합니다.

Request
클러스터 목록 조회 Request Syntax
curl -X GET "https://redis.kr-central-2.kakaocloud.com/v1/clusters" \
-H "X-Auth-Token: {token-id}"
종류파라미터유형설명
Header{token-id}*StringAPI 인증 토큰 참고
Query{parameter-group-id or parameter-group-name}String파라미터 그룹 ID 또는 이름
Response
상태 코드설명
200리소스 생성 요청에 대한 성공 응답
400사용자의 요청이 유효하지 않아 작업을 진행할 수 없음
401인증되지 않은 사용자가 요청한 경우
403권한이 없는 사용자가 요청한 경우
500내부 에러로 작업을 진행할 수 없는 경우
필드유형설명
clusters[]Object Array클러스터 목록
clusters.projectIdString프로젝트 ID
clusters.objectIdString오브젝트 ID
clusters.nameString클러스터의 이름
clusters.descriptionString클러스터의 설명
clusters.versionStringRedis 버전
clusters.portIntegerRedis 포트 번호
clusters.clusterEnabledBoolean클러스터 모드 활성화 여부
- true: 클러스터 모드 사용
- false: 클러스터 모드 미사용
clusters.recoveryEnabledBoolean고가용성 모드 활성화 여부
- true: 고가용성 모드 사용 (클러스터 모드를 사용하는 경우 항상 true)
- false: 고가용성 모드 미사용
clusters.shardCountInteger샤드 개수
clusters.totalNodeCountInteger총 노드 개수
clusters.flavorIdString플레이버 ID
clusters.vcpuInteger가상 CPU 개수
clusters.memoryInteger메모리 크기(GiB)
clusters.endpointsObject엔드포인트 주소
clusters.endpoints.primaryEndpointString기본 엔드포인트 주소
clusters.endpoints.readEndpointString읽기 전용 엔드포인트 주소
- 클러스터 모드를 사용하는 경우, 읽기 전용 엔드포인트 없음
clusters.userNameString사용자 ID, 인증 미사용의 경우 -
clusters.subnets[]Object Array배치 가능한 서브넷 목록
clusters.subnets[].idString서브넷 ID
clusters.subnetAssignments[]Object Array서브넷 배치 목록
clusters.subnetAssignments[].primaryObjectPrimary에 배치되어 있는 서브넷
clusters.subnetAssignments[].primary.idStringPrimary에 배치되어 있는 서브넷 ID
clusters.subnetAssignments[].replicas[]Object ArrayReplica에 배치되어 있는 서브넷 목록
clusters.subnetAssignments[].replicas[].idStringReplica에 배치되어 있는 서브넷 ID
clusters.securityGroups[]Object Array클러스터에 연결되어 있는 보안 그룹 목록
clusters.securityGroups[].idString보안 그룹 ID
clusters.backupScheduleObject자동 백업 정책
clusters.backupSchedule.cronstring자동 백업 일정의 크론 표현식
clusters.backupSchedule.retentionLimitinteger자동 백업의 보존 기간(단위: 일)
clusters.creatorString클러스터 생성자 ID
clusters.licenseString라이센스 종류
clusters.statusString클러스터 상태
clusters.parameterGroupIdString클러스터에 반영되어 있는 파라미터 그룹 ID
clusters.parameterGroupNameString클러스터에 반영되어 있는 파라미터 그룹 이름
clusters.parameterGroupSyncStatusString클러스터에 파라미터 그룹의 싱크 상태
clusters.createdAtInteger클러스터 생성 시간 (RFC3339)
클러스터 목록 조회 Response Example
200 OK
content-length: ...
content-type: application/json; charset=UTF-8


{
"clusters": [
{
"projectId": "377813fe9e0144dc8cd867c2zxcvasdf",
"objectId": "qqqqwwww-7347-4d87-a49f-e705e91db2fb",
"name": "test-cluster",
"description": "test-cluster",
"version": "6.2.5",
"port": 6379,
"clusterEnabled": true, /* redis cluster */
"recoveryEnabled": true,
"shardCount": 2,
"totalNodeCount": 6,
"flavorId": "ffffffff-ea2f-4822-8a7d-9e301c86a58d",
"vcpu": 2,
"memory": 16,
"endpoints": {
"primaryEndpoint": "",
"readEndpoint": ""
},
"userName": "testusername",
"subnets": [ /* node 배치 가능한 subnet 리스트 */
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"}
],
"subnetAssignments": [
{
"primary": {"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
"replicas": [
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"}
]
},
{
"primary": {"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
"replicas": [
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"}
]
}
],
"securityGroups": [
{"id": "abcdxxxx-4870-4c4e-a267-2de13e38c2ea"},
{"id": "qwergggg-4870-4c4e-a267-2de13e38c2ea"}
],
"backupSchedule": null,
"creator": "ms@kakaoenterprise.com",
"license": "GPL",
"status": "Modifying",
"createdAt": 2024-03-06T02:35:13Z
},
{
"projectId": "377813fe9e0144dc8cd867c2zxcvasdf",
"objectId": "aaaassss-7347-4d87-a49f-e705e91db2fb",
"name": "test-instance-group",
"description": "test-instance-group",
"version": "6.2.5",
"port": 6379,
"clusterEnabled": false, /* redis instance set */
"recoveryEnabled": false,
"shardCount": 0,
"totalNodeCount": 4,
"flavorId": "3830ebad-ea2f-4822-8a7d-9e301c86a58d",
"vcpu": 2,
"memory": 8,
"endpoints": {"primaryEndpoint": "", "readEndpoint": ""},
"userName": "testusername",
"subnets": [
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
],
"subnetAssignments": [
{
"primary": {"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
"replicas": [
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"}
]
}
],
"securityGroups": [
{"id": "abcdxxxx-4870-4c4e-a267-2de13e38c2ea"},
{"id": "qwergggg-4870-4c4e-a267-2de13e38c2ea"}
],
"backupSchedule": {
"cron": "* 1 * * *",
"retentionLimit": 15
},
"creator": "ms@kakaoenterprise.com",
"license": "GPL",
"status": "Creating",
"parameterGroupId": "bbbbcccc-1234-1234-5678-e705e91db2fb",
"parameterGroupName": "test-parameter-group",
"parameterGroupSyncStatus": "In-Sync",
"createdAt": 2024-03-06T02:35:13Z
}
]
}

클러스터 상세 정보 조회

특정 클러스터의 상세 정보를 조회합니다.

Request
클러스터 상세 정보 조회 Request Syntax
curl -X GET "https://redis.kr-central-2.kakaocloud.com/v1/clusters/{cluster-id}" \
-H "X-Auth-Token: {token-id}"
종류파라미터유형설명
URL{cluster-id}*String클러스터 ID
Header{token-id}*StringAPI 인증 토큰 참고
Response
상태 코드설명
200리소스 조회/삭제 요청에 대한 성공 응답
400사용자의 요청이 유효하지 않아 작업을 진행할 수 없음
401인증되지 않은 사용자가 요청한 경우
403권한이 없는 사용자가 요청한 경우
404사용자가 요청한 리소스가 존재하지 않은 경우
500내부 에러로 작업을 진행할 수 없는 경우
필드유형설명
projectIdString프로젝트 ID
objectIdString오브젝트 ID
nameString클러스터의 이름
descriptionString클러스터의 설명
versionStringRedis 버전
portIntegerRedis 포트 번호
clusterEnabledBoolean클러스터 모드 활성화 여부
- true: 클러스터 모드 사용
- false: 클러스터 모드 사용 안 함
recoveryEnabledBoolean고가용성 모드 활성화 여부
- true: 고가용성 모드 사용 (클러스터 모드를 사용하는 경우 항상 true )
- false: 고가용성 모드 미사용
shardCountInteger샤드 개수
- 클러스터 모드를 사용하지 않는 경우 0
totalNodeCountInteger총 노드 개수
flavorIdString플레이버 ID
vcpuInteger가상 CPU 개수
memoryInteger메모리 크기(GiB)
endpointsObject엔드포인트 주소
endpoints.primaryEndpointString기본 엔드포인트 주소
endpoints.readEndpointString읽기 전용 엔드포인트 주소
- 클러스터 모드를 사용하는 경우, 읽기 전용 엔드포인트 없음
userNameString사용자 ID, 인증 미사용의 경우 -
subnets[]Object Array배치 가능한 서브넷 목록
subnets[].idString서브넷 ID
subnetAssignments[]Object Array서브넷 배치 목록
subnetAssignments[].primaryObjectPrimary에 배치되어 있는 서브넷
subnetAssignments[].primary.idStringPrimary에 배치되어 있는 서브넷 ID
subnetAssignments[].replicas[]Object ArrayReplica에 배치되어 있는 서브넷 목록
subnetAssignments[].replicas[].idStringReplica에 배치되어 있는 서브넷 ID
securityGroups[]Object Array클러스터에 연결되어 있는 보안 그룹 목록
securityGroups[].idString보안 그룹 ID
backupScheduleObject자동 백업 정책
- 클러스터 모드를 사용하는 경우 null
backupSchedule.cronstring자동 백업 일정의 크론 표현식
backupSchedule.retentionLimitinteger자동 백업의 보존 기간(단위: 일)
creatorString클러스터 생성자
licenseString라이센스 종류
statusString클러스터 상태
parameterGroupIdString클러스터에 반영되어 있는 파라미터 그룹 ID
parameterGroupNameString클러스터에 반영되어 있는 파라미터 그룹 이름
parameterGroupSyncStatusString클러스터에 파라미터 그룹의 싱크 상태
createdAtInteger클러스터 생성 시간 (RFC3339)
userNameString사용자 계정 이름, 인증 미사용의 경우 -
클러스터 상세 정보 조회 Response Example
200 OK
content-length: ...
content-type: application/json; charset=UTF-8

{
"projectId": "377813fe9e0144dc8cd867c2zxcvasdf",
"objectId": "qqqqwwww-7347-4d87-a49f-e705e91db2fb",
"name": "test-cluster",
"description": "test-cluster",
"version": "6.2.5",
"port": 6379,
"clusterEnabled": true, /* redis cluster */
"recoveryEnabled": true,
"shardCount": 2,
"totalNodeCount": 6,
"flavorId": "ffffffff-ea2f-4822-8a7d-9e301c86a58d",
"vcpu": 2,
"memory": 16,
"endpoints": {
"primaryEndpoint": "",
"readEndpoint": ""
},
"userName": "testusername",
"subnets": [ /* node 배치 가능한 subnet 리스트 */
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"}
],
"subnetAssignments": [
{
"primary": {"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
"replicas": [
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"}
]
},
{
"primary": {"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
"replicas": [
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "yyyyyyyy-0a69-4f8b-b56d-59ce12b4d55b"}
]
}
],
"securityGroups": [
{"id": "abcdxxxx-4870-4c4e-a267-2de13e38c2ea"},
{"id": "qwergggg-4870-4c4e-a267-2de13e38c2ea"}
],
"backupSchedule": null,
"creator": "ms@kakaoenterprise.com",
"license": "GPL",
"status": "Modifying",
"parameterGroupId": "bbbbcccc-1234-1234-5678-e705e91db2fb",
"parameterGroupName": "test-parameter-group",
"parameterGroupSyncStatus": "In-Sync",
"createdAt": 2024-03-06T02:35:13Z
}

인스턴스 세트 상세 정보 조회

지정한 인스턴스 세트의 상세 정보를 조회합니다.

Request
인스턴스 세트(클러스터 모드 미사용) 상세 정보 조회 Request Syntax
curl -X GET "https://redis.kr-central-2.kakaocloud.com/v1/clusters/{instance-set-id}" \
-H "X-Auth-Token: {token-id}"
종류파라미터유형설명
URL{instance-set-id}*String인스턴스 세트 ID
Header{token-id}*StringAPI 인증 토큰 참고
Response
상태 코드설명
200리소스 조회/삭제 요청에 대한 성공 응답
400사용자의 요청이 유효하지 않아 작업을 진행할 수 없음
401인증되지 않은 사용자가 요청한 경우
403권한이 없는 사용자가 요청한 경우
404사용자가 요청한 리소스가 존재하지 않은 경우
500내부 에러로 작업을 진행할 수 없는 경우
필드유형설명
projectIdString프로젝트 ID
objectIdString클러스터/인스턴스 세트 ID
nameString클러스터의 이름
descriptionString클러스터의 설명
versionStringRedis 버전
portIntegerRedis 포트 번호
clusterEnabledBoolean클러스터 모드 활성화 여부
- true: 클러스터 모드 사용
- false: 클러스터 모드 미사용
recoveryEnabledBoolean고가용성 모드 활성화 여부
- true: 고가용성 모드 사용 (클러스터 모드를 사용하는 경우 항상 true )
- false: 고가용성 모드 미사용
shardCountInteger샤드 개수
- 클러스터 모드를 사용하지 않는 경우 0
totalNodeCountInteger총 노드 개수
flavorIdString플레이버 ID
vcpuInteger가상 CPU 개수
memoryInteger메모리 크기(GiB)
endpointsObject엔드포인트 주소
endpoints.primaryEndpointString기본 엔드포인트 주소
endpoints.readEndpointString읽기 전용 엔드포인트 주소
- 클러스터 모드를 사용하는 경우 읽기 전용 엔드포인트 없음
userNameString사용자 ID, 인증 미사용의 경우 -
subnets[]Object Array배치 가능한 서브넷 목록
subnets[].idString서브넷 ID
subnetAssignments[]Object Array서브넷 배치 목록
subnetAssignments[].primaryObjectPrimary에 배치되어 있는 서브넷
subnetAssignments[].primary.idStringPrimary에 배치되어 있는 서브넷 ID
subnetAssignments[].replicas[]Object ArrayReplica에 배치되어 있는 서브넷 목록
subnetAssignments[].replicas[].idStringReplica에 배치되어 있는 서브넷 ID
securityGroups[]Object Array클러스터에 연결되어 있는 보안 그룹 목록
securityGroups[].idString보안 그룹 ID
backupScheduleObject자동 백업 정책
backupSchedule.cronstring자동 백업 일정의 크론 표현식
backupSchedule.retentionLimitinteger자동 백업의 보존 기간(단위: 일)
creatorString클러스터 생성자
licenseString라이센스 종류
statusString클러스터 상태
parameterGroupIdString클러스터에 반영되어 있는 파라미터 그룹 ID
parameterGroupNameString클러스터에 반영되어 있는 파라미터 그룹 이름
parameterGroupSyncStatusString클러스터에 파라미터 그룹의 싱크 상태
createdAtInteger클러스터 생성 시간 (RFC3339)
userNameString사용자 계정 이름, 인증 미사용의 경우 -
인스턴스 세트(클러스터 모드 미사용) 상세 정보 조회 Response Example
200 OK
content-length: ...
content-type: application/json; charset=UTF-8

{
"projectId": "377813fe9e0144dc8cd867c2zxcvasdf",
"objectId": "aaaassss-7347-4d87-a49f-e705e91db2fb",
"name": "test-instance-group",
"description": "test-instance-group",
"version": "6.2.5",
"port": 6379,
"clusterEnabled": false, /* redis instance set */
"recoveryEnabled": false,
"shardCount": 0,
"totalNodeCount": 4,
"flavorId": "3830ebad-ea2f-4822-8a7d-9e301c86a58d",
"vcpu": 2,
"memory": 8,
"endpoints": {"primaryEndpoint": "", "readEndpoint": ""},
"userName": "testusername",
"subnets": [
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"}
],
"subnetAssignments": [
{
"primary": {"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
"replicas": [
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"},
{"id": "xxxxxxxx-0a69-4f8b-b56d-59ce12b4d55b"}
]
}
],
"securityGroups": [
{"id": "abcdxxxx-4870-4c4e-a267-2de13e38c2ea"},
{"id": "qwergggg-4870-4c4e-a267-2de13e38c2ea"}
],
 "backupSchedule": {
"cron": "* 1 * * *",
"retentionLimit": 15
},
"creator": "ms@kakaoenterprise.com",
"license": "GPL",
"status": "Creating",
"parameterGroupId": "bbbbcccc-1234-1234-5678-e705e91db2fb",
"parameterGroupName": "test-parameter-group",
"parameterGroupSyncStatus": "In-Sync",
"createdAt": 2024-03-06T02:35:13Z
}

클러스터 파라미터 그룹 반영 재시도

파라미터 그룹 반영 상태가 Error-Sync, Suspended 등으로 정상이 아닌 경우, 클러스터에 파라미터 그룹 반영을 재시도합니다.

Request
파라미터 그룹 반영 재시도 Request Syntax
curl -X POST "https://redis.kr-central-2.kakaocloud.com/v1/clusters/{cluster-id or instance-set-id}/parameter-group/apply" \
-H "X-Auth-Token: {token-id}"
종류파라미터유형설명
URL{cluster-id or instance-set-id}*String클러스터 ID 또는 인스턴스 세트 ID
Header{token-id}*StringAPI 인증 토큰 참고
Response
상태 코드설명
200리소스 조회/삭제 요청에 대한 성공 응답
400사용자의 요청이 유효하지 않아 작업을 진행할 수 없음
401인증되지 않은 사용자가 요청한 경우
403권한이 없는 사용자가 요청한 경우
404사용자가 요청한 리소스가 존재하지 않은 경우
500내부 에러로 작업을 진행할 수 없는 경우
필드유형설명
objectIdString클러스터 ID
파라미터 그룹 반영 재시도 Response Example
200 OK
content-length: ...
content-type: application/json; charset=UTF-8

{
"objectId": "aaaassss-7347-4d87-a49f-e705e91db2fb",
}