이 가이드는 API 명세를 기반으로 AI가 자동 생성했습니다.
VPC 환경에서 이용 가능합니다.
Ncloud 표준 표현을 적용한 API입니다.
merge-patch(RFC 7396) 방식으로 요청에 포함된 필드만 변경합니다. 비동기(LRO)로 처리됩니다. Operation.metadata는 operationType=UPDATE, resourceType=clusters로 반환됩니다. 변경 가능 필드는 unit(min/max), multiZone, autoScale(Auto Scaling 설정), backupConfig(백업 설정)입니다. multiZone 활성화 시 백업 존 복제본 프로비저닝(데이터 동기화)이 수반됩니다. autoScale.scaleOut.enabled=false로 변경하면 replica 범위가 초기화됩니다.
요청
요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.
| 메서드 | URI |
|---|---|
| PATCH | /clusters/{clusterName} |
요청 헤더
Cloud DB Serverless API에서 공통으로 사용하는 헤더에 대한 정보는 Cloud DB Serverless 요청 헤더를 참조해 주십시오.
요청 경로 파라미터
요청 경로 파라미터에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
clusterName |
String | Required | 클러스터 이름 (cluster의 name)
|
요청 바디
요청 바디에 대한 설명은 다음과 같습니다.
요청 바디는 application/merge-patch+json, application/json 형식을 지원하며, Content-Type 헤더로 형식을 지정합니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
unit |
Object<UnitRange> | Optional | 컴퓨팅 unit |
multiZone |
Boolean | Optional | 멀티 존 구성 여부 (미포함 시 기존 값 유지)
|
autoScale |
Object<AutoscaleConfigRequest> | Optional | 변경할 Auto Scaling 설정 |
backupConfig |
Object<BackupConfig> | Optional | 변경할 자동 백업 설정 |
UnitRange
컴퓨팅 unit 범위 (0.5 단위, 1 이상, min ≤ max). scale up/down이 활성일 때 min~max 범위에서 조정되며, 비활성이면 max 값으로 고정
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
min |
Number (double) | Required | 최솟값
|
max |
Number (double) | Required | 최댓값
|
AutoscaleConfigRequest
변경할 필드만 포함 (merge-patch)
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
scaleOut |
Object | Optional | 수평 확장 설정 |
scaleOut.enabled |
Boolean | Optional | 수평 확장 활성화 여부
|
scaleOut.thresholdConnection |
Integer (int32) | Optional | 연결 수 임계값
|
scaleOut.thresholdCpu |
Integer (int32) | Optional | CPU 사용률 임계값 (%)
|
scaleOut.replica |
Object | Optional | 복제본 현황 |
scaleOut.replica.min |
Integer (int32) | Optional | 최솟값
|
scaleOut.replica.max |
Integer (int32) | Optional | 최댓값
|
scaleUp |
Object | Optional | 수직 확장 설정 |
scaleUp.enabled |
Boolean | Optional | 수직 확장(scale up/down) 활성화 여부
|
BackupConfig
자동 백업 설정
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
backupAuto |
Boolean | Optional | 자동 백업 시각 지정 방식
|
backupTime |
String | null | Optional | HH:MM (UTC). backupAuto=false 시 필수
|
retentionDays |
Integer (int32) | Required | 백업 보관일
|
요청 예시
요청 예시는 다음과 같습니다.
curl --location --request PATCH 'https://clouddb-serverless.apigw.ntruss.com/mysql/v1/clusters/new-cluster' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json'
응답
응답 형식을 설명합니다.
응답 헤더
응답 헤더에 대한 설명은 다음과 같습니다.
| 필드 | 필수 여부 | 설명 |
|---|---|---|
retry-after |
Optional | 권장 폴링 간격 (초). done=false인 동안 이 간격으로 폴링 (202 응답) |
accept-patch |
Required | 서버가 지원하는 PATCH 요청 미디어 타입. 415 응답에 포함되어 올바른 Content-Type을 안내 (415 응답) |
응답 바디
응답 바디에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
id |
String (uuid) | - | Operation 식별자
|
done |
Boolean | - | 완료 여부
|
metadata |
Object | - | 작업 유형·대상 리소스·시각 등 Operation 부가 정보 |
metadata.operationType |
String | - | 작업 유형
|
metadata.resourceType |
String | - | 대상 리소스 (REST 경로의 리소스 세그먼트와 일치 — 컬렉션은 복수형, 싱글턴은 경로 그대로)
|
metadata.startDateTime |
String (date-time) | - | 작업 시작 시각 (RFC3339 UTC)
|
metadata.endDateTime |
String (date-time) | null | - | 완료 시각 (진행 중이면 null) |
metadata.progress |
Integer (int32) | null | - | 진행률 (%) — 제공 가능한 작업에 한함
|
results |
Map<Object> | null | - | 성공 결과. 요청 인덱스를 키로 하는 Map이며 단건 작업은 "0" 키 하나를 사용. 클러스터 작업(resourceType=clusters: 생성·복원·변경·삭제)만 값을 반환하며, 값은 대상 클러스터의 name 하나를 담은 객체. 그 외 리소스(users, databases, config, backups, imported-backups, logs, processes)의 작업은 null. |
error |
Object | - | 실패 사유 (단건 작업) |
error.errorCode |
String | - | 에러 코드 |
error.message |
String | - | 에러 메시지 (기본 영어, 다국어 지원 가능) |
error.detail |
String | - | 에러 상세 정보 (기본 영어, 다국어 지원 가능) |
error.fieldErrors |
List<FieldError> | - | 입력값 에러가 발생한 경우 각 필드별 에러 상세 정보 목록 |
failures |
Map<Error> | null | - | 일괄 작업의 index별 실패 사유 |
results
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
name |
String | - | 작업 대상 클러스터 이름
|
FieldError
필드 에러 정보
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
message |
String | - | 필드 에러 메시지 (기본 영어, 다국어 지원 가능) |
field |
String | - | 입력값 검증 실패 시 해당 필드 이름 |
Error
에러 정보
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
errorCode |
String | - | 에러 코드 |
message |
String | - | 에러 메시지 (기본 영어, 다국어 지원 가능) |
detail |
String | - | 에러 상세 정보 (기본 영어, 다국어 지원 가능) |
fieldErrors |
List<FieldError> | - | 입력값 에러가 발생한 경우 각 필드별 에러 상세 정보 목록 |
응답 상태 코드
Cloud DB Serverless API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Cloud DB Serverless 응답 상태 코드를 참조해 주십시오.
이 API에만 해당하는 응답 상태 코드는 다음과 같습니다.
| HTTP 상태 코드 | 코드 | 메시지 | 설명 |
|---|---|---|---|
| 400 | InvalidParameter | The specified parameter is invalid. | 파라미터 값이 허용 범위나 형식을 벗어난 경우 |
| 400 | InvalidState | Indicates that the specified state is not a valid state for an event source. | 클러스터가 변경 가능한 상태가 아닌 경우 |
| 409 | Conflict | The request could not be processed because of a conflict in the current status of the resource. | 다른 변경 작업과 충돌하는 경우 |
| 409 | ResourceInUse | The specified resource is in use. | 클러스터에 다른 작업이 진행 중인 경우 |
응답 예시
응답 예시는 다음과 같습니다.
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"done": false,
"metadata": {
"operationType": "UPDATE",
"resourceType": "clusters",
"startDateTime": "2026-07-21T10:00:00Z"
},
"results": {
"key": {
"name": "new-cluster"
}
}
}