VPC 환경에서 이용 가능합니다.
서버 인스턴스(VM)를 생성합니다.
요청
요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.
| 메서드 | URI |
|---|---|
| GET | POST | /vserver/v2/createServerInstances |
참고
- 가이드는 GET 방식 기준으로 안내합니다. POST 방식의 호출 테스트는 네이버 클라우드 플랫폼 콘솔의 API Gateway 서비스에서 Swagger를 통해서 가능합니다.
- XEN/RHV/KVM 하이퍼바이저 타입의 서버 인스턴스(VM)를 생성하려면 serverImageNo와 serverSpecCode를 사용합니다.
또한, serverImageProductCode와 serverProductCode를 이용하면 XEN/RHV 하이퍼바이저 타입의 서버 인스턴스(VM)만 생성할 수 있습니다.
요청 헤더
Server API에서 공통으로 사용하는 헤더에 대한 정보는 Server 요청 헤더를 참조해 주십시오.
요청 쿼리 파라미터
요청 쿼리 파라미터에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
regionCode |
String | Optional | 리전 코드
|
memberServerImageInstanceNo |
String | Conditional | 서버 이미지 인스턴스 번호
|
serverImageNo |
String | Conditional | 서버 이미지 번호
|
serverImageProductCode |
String | Conditional | 서버 이미지 상품 코드
|
serverSpecCode |
String | Conditional | 서버 스펙 코드
|
serverProductCode |
String | Optional | 서버 상품 코드
|
vpcNo |
String | Required | VPC 번호
|
subnetNo |
String | Required | Subnet 번호
|
isEncryptedBaseBlockStorageVolume |
Boolean | Optional | 기본 블록 스토리지 볼륨 암호화 여부
|
feeSystemTypeCode |
String | Optional | 요금제 유형 코드
|
serverCreateCount |
Integer | Optional | 서버 생성 수
|
serverCreateStartNo |
Integer | Optional | 서버 생성 시작 번호
|
serverName |
String | Optional | 서버 이름
|
networkInterfaceList.N.networkInterfaceOrder |
Integer | Required | 네트워크 인터페이스 순서
|
networkInterfaceList.N.networkInterfaceNo |
String | Conditional | 네트워크 인터페이스 번호
|
networkInterfaceList.N.subnetNo |
String | Conditional | 네트워크 인터페이스의 Subnet 번호
|
networkInterfaceList.N.ip |
String | Optional | 네트워크 인터페이스의 IP 주소
|
networkInterfaceList.N.accessControlGroupNoList.N |
Array | Conditional | 네트워크 인터페이스의 ACG 번호 목록
|
placementGroupNo |
String | Optional | 물리 배치 그룹 번호
|
isProtectServerTermination |
Boolean | Optional | 반납 보호 여부
|
serverDescription |
String | Optional | 서버 설명(Byte)
|
initScriptNo |
String | Optional | 초기화 스크립트 번호
|
loginKeyName |
String | Optional | 인증키 이름
|
associateWithPublicIp |
Boolean | Optional | 신규 공인 IP 생성 및 할당 여부
|
raidTypeName |
String | Conditional | RAID 유형 이름
|
blockDevicePartitionList.N.mountPoint |
String | Optional | 마운트 포인트
|
blockDevicePartitionList.N.partitionSize |
String | Optional | 파티션 용량
|
blockStorageMappingList.N.order |
Integer | Required | 생성 스토리지 순서
|
blockStorageMappingList.N.snapshotInstanceNo |
String | Optional | 생성 스토리지 스냅샷 번호
|
blockStorageMappingList.N.blockStorageSize |
String | Optional | 생성 스토리지 크기
|
blockStorageMappingList.N.blockStorageName |
String | Optional | 생성 스토리지 이름
|
blockStorageMappingList.N.blockStorageVolumeTypeCode |
String | Optional | 생성 스토리지 볼륨 타입 코드
|
blockStorageMappingList.N.noBlockStorage |
Boolean | Conditional | 스토리지 제외 여부
|
blockStorageMappingList.N.emptyBlockStorage |
Boolean | Conditional | 신규 스토리지 생성 여부
|
fabricClusterPoolNo |
String | Optional | GPU Fabric Cluster Pool 지정
|
responseFormatType |
String | Optional | 응답 데이터의 형식
|
참고
요청 쿼리 파라미터 입력 시 다음 내용을 참고해 주십시오.
- 신규 서버 이미지로 서버를 생성하는 경우, 생성할 서버의 하이퍼바이저 타입에 따라 사용 가능한 필드가 다음과 같이 상이합니다.
- KVM:
serverImageNo와serverSpecCode사용 - XEN:
serverImageNo와serverSpecCode또는serverImageProductCode와serverProductCode사용 - RHV:
serverImageNo와serverSpecCode또는serverImageProductCode와serverProductCode사용
- KVM:
associateWithPublicIp: 공인 IP 할당 후 요금이 부과되므로 사용하지 않는 경우에는 반납해 주십시오.blockDevicePartitionList.N.mountPoint: 생성할 서버 스펙에 따라 파티션을 지원하지 않을 수 있습니다.
요청 예시
요청 예시는 다음과 같습니다.
curl --location --request GET 'https://ncloud.apigw.gov-ntruss.com/vserver/v2/createServerInstances
?regionCode=KR
&serverImageProductCode=SW.VSVR.OS.LNX64.UBNTU.SVR2004.B050
&vpcNo=***75
&subnetNo=***36
&serverProductCode=SVR.VSVR.STAND.C002.M008.NET.SSD.B050.G002
&feeSystemTypeCode=MTRAT
&serverCreateCount=1
&serverName=test-***
&networkInterfaceList.1.networkInterfaceOrder=0
&networkInterfaceList.1.accessControlGroupNoList.1=***43
&isProtectServerTermination=false
&loginKeyName=test-***
&associateWithPublicIp=true
&responseFormatType=json' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}'
응답
응답 형식을 설명합니다.
응답 바디
응답 바디에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
createServerInstancesResponse |
Object | - | 응답 결과 |
createServerInstancesResponse.requestId |
String | - | 요청에 대한 아이디
|
createServerInstancesResponse.returnCode |
String | - | 응답 코드 |
createServerInstancesResponse.returnMessage |
String | - | 응답 메시지 |
응답 상태 코드
Server API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Server 응답 상태 코드를 참조해 주십시오.
응답 예시
응답 예시는 다음과 같습니다.
{
"createServerInstancesResponse": {
"totalRows": 1,
"serverInstanceList": [
{
"serverInstanceNo": "*****9212",
"serverName": "test-***",
"serverDescription": "",
"cpuCount": 2,
"memorySize": 8589934592,
"platformType": {
"code": "UBS64",
"codeName": "Ubuntu Server 64 Bit"
},
"loginKeyName": "test-***",
"publicIpInstanceNo": "",
"publicIp": "",
"serverInstanceStatus": {
"code": "INIT",
"codeName": "서버 INIT 상태"
},
"serverInstanceOperation": {
"code": "NULL",
"codeName": "서버 NULL OP"
},
"serverInstanceStatusName": "init",
"createDate": "2025-06-13T17:01:34+0900",
"uptime": "2025-06-13T17:01:33+0900",
"serverImageProductCode": "SW.VSVR.OS.LNX64.UBNTU.SVR2004.B050",
"serverProductCode": "SVR.VSVR.STAND.C002.M008.NET.SSD.B050.G002",
"isProtectServerTermination": false,
"zoneCode": "KR-1",
"regionCode": "KR",
"vpcNo": "",
"subnetNo": "",
"networkInterfaceNoList": [],
"initScriptNo": "",
"serverInstanceType": {
"code": "STAND",
"codeName": "Standard"
},
"baseBlockStorageDiskType": {
"code": "NET",
"codeName": "네트웍 스토리지"
},
"baseBlockStorageDiskDetailType": {
"code": "SSD",
"codeName": "SSD"
},
"placementGroupNo": "",
"placementGroupName": "",
"memberServerImageInstanceNo": "",
"hypervisorType": {
"code": "XEN",
"codeName": "XEN"
},
"serverImageNo": "16187005",
"serverSpecCode": "s2-g2-s50",
"eventList": []
}
],
"requestId": "e4a3ca5e-9b81-4b3b-8011-ad0f0e2bf71a",
"returnCode": "0",
"returnMessage": "success",
}
}