createServerInstances

Prev Next

VPC 환경에서 이용 가능합니다.

개요

서버 인스턴스(VM)를 생성합니다.

요청

XEN/RHV/KVM 하이퍼바이저 타입의 서버 인스턴스(VM)를 생성하려면 serverImageNo와 serverSpecCode를 사용합니다.
또한, serverImageProductCode와 serverProductCode를 이용하면 XEN/RHV 하이퍼바이저 타입의 서버 인스턴스(VM)만 생성할 수 있습니다.

요청 파라미터

파라미터명 필수 여부 타입 제약 사항 설명
regionCode No String - 리전 코드
서버 인스턴가 생성될 리전(Region) 결정 가능
regionCode는 getRegionList 액션을 통해 획득 가능
Default : getRegionList 조회 결과의 첫 번째 리전을 선택
memberServerImageInstanceNo Conditional String - 회원 서버 이미지 인스턴스 번호
직접 생성한 서버 이미지로부터 서버를 생성시 입력
회원 서버 이미지 인스턴스 번호(memberServerImageInstanceNo)와 서버 이미지 상품 코드(serverImageProductCode) 중 반드시 한 개를 필수로 입력
memberServerImageInstanceNo는 getMemberServerImageInstanceList 액션을 통해 획득 가능
serverImageProductCode Conditional String - 서버 이미지 상품 코드
새로운 서버 이미지를 이용하여 서버를 생성시 입력
회원 서버 이미지 인스턴스 번호(memberServerImageInstanceNo)와 서버 이미지 상품 코드(serverImageProductCode) 중 반드시 한개를 필수로 입력
serverImageProductCode는 getServerImageProductList 액션을 통해 획득 가능
serverImageNo Conditional String - 서버 이미지 번호
새로운 서버 이미지를 이용하여 서버를 생성시 입력
회원 서버 이미지 인스턴스 번호(memberServerImageInstanceNo), 서버 이미지 상품 코드(serverImageProductCode)와 동시 사용 불가능
serverImageNo는 getServerImageList 액션을 통해 획득 가능
vpcNo Yes String - VPC 번호
서버 인스턴스가 생성될 VPC 결정
vpcNo는 getVpcList 액션을 통해 획득 가능
subnetNo Yes String - Subnet 번호
생성할 서버 인스턴스에서 기본 네트워크 인터페이스의 Subnet을 결정
subnetNo는 getSubnetList 액션을 통해 획득 가능
serverProductCode No String - 서버 상품 코드
생성할 서버의 스펙 결정 가능
serverProductCode는 getServerProductList 액션을 통해 획득 가능
Default : 최소 사양으로 선택. 최소 사양의 기준은
1. 메모리 2. CPU 3. 기본 블록 스토리지 사이즈 4. 디스크 유형(NET) 순서로 결정
serverSpecCode Conditional String - 서버 스펙 코드
생성할 서버의 스펙 결정 가능
serverSpecCode는 getServerSpecList 액션을 통해 획득 가능
serverImageNo 사용시 사용 가능.
Default : 최소 사양으로 선택. 최소 사양의 기준은
1. 메모리 2. CPU 3. 기본 블록 스토리지 사이즈 4. 디스크 유형(NET) 순서로 결정
isEncryptedBaseBlockStorageVolume No Boolean - 기본 블록 스토리지 볼륨 암호화 여부
RHV 서버 이미지 상품인 경우에 기본 블록 스토리지 암호화 여부 결정 가능
Options : true | false
Default : false
feeSystemTypeCode No String - 요금제 유형 코드
생성할 서버의 요금제 결정 가능
Options : MTRAT (시간 요금제 / 종량제) | FXSUM (월 요금제 / 정액제)
Default : MTRAT
serverCreateCount No Integer Min : 1, Max : 10 개 - 서버 생성 개수
생성할 서버의 개수 결정 가능
Default : 1 개
serverCreateStartNo No Integer Min : 0, Max : 999
서버 생성 개수와 서버 생성 시작 번호의 합이 1000 초과 불가
- 서버 생성 시작 번호
서버 생성 개수가 1보다 큰 경우 서버 이름에 일련 번호가 붙음. 이 경우 일련 번호의 시작 번호 결정 가능
Default : 1
serverName No String Min : 3, Max : 30
소문자, 숫자, "-"의 특수문자만 허용하며 알파벳 문자로 시작함
영어 또는 숫자로 끝남
- 서버 이름
Default : NAVER Cloud Platform가 자동으로 부여
networkInterfaceList.N.networkInterfaceOrder Yes Integer Min : 0, Max : 2 - 네트워크 인터페이스 순서
생성할 서버에 할당될 네트워크 인터페이스 순서 결정
해당 순서로 장치명(eth0, eth1 등)이 결정됨
기본 네트워크 인터페이스가 반드시 한 개 존재
기본 네트워크 인터페이스로 설정하려면 0 입력
네트워크 인터페이스는 최대 3개까지 할당 가능
networkInterfaceList.N.networkInterfaceNo Conditional String - 네트워크 인터페이스 번호
사용자가 직접 생성한 네트워크 인터페이스를 추가하려고 하는 경우 해당 네트워크 인터페이스 번호 입력
networkInterfaceNo는 getNetworkInterfaceList 액션을 통해 획득 가능
networkInterfaceList.N.subnetNo Conditional String - 네트워크 인터페이스의 Subnet 번호
새로 생성할 네트워크 인터페이스의 서브넷 또는 추가하려고 하는 기존 네트워크 인터페이스의 서브넷 결정
기본 네트워크 인터페이스인 경우에는 자동으로 할당
subnetNo는 getSubnetList 액션을 통해 획득 가능
networkInterfaceList.N.ip No String - 네트워크 인터페이스의 IP 주소
새로 네트워크 인터페이스를 생성하는 경우 네트워크 인터페이스에 할당할 IP 주소를 직접 입력할 수 있음
네트워크 인터페이스가 생성되는 Subnet의 IP 주소 범위에 포함되어야 함
Subnet의 0~5번째, 마지막 IP 주소는 사용할 수 없으며 Subnet 범위에서 중복된 IP 주소 사용 불가
Default : 조건을 만족하는 IP 주소가 순차적으로 할당
networkInterfaceList.N.accessControlGroupNoList.N Conditional List<String> - 네트워크 인터페이스에 적용할 ACG 번호 리스트
네트워크 인터페이스를 새로 생성하는 경우 반드시 적용할 ACG 결정
최대 3개의 ACG 적용 가능
accessControlGroupNo는 getAccessControlGroupList 액션을 통해 획득 가능
ex) accessControlGroupNoList.1=1234&accessControlGroupNoList.2=2345
placementGroupNo No String - 물리 배치 그룹 번호
서버 인스턴스의 소속 물리 배치 그룹 결정 가능
placementGroupNo는 getPlacementGroupList 액션을 통해 획득 가능
isProtectServerTermination No Boolean - 반납 보호 여부
서버 생성시 반납 보호 여부를 설정하여 실수로 반납하는 사고 방지 가능
Options : true | false
Default : false
serverDescription No String Min : 0, Max : 1000 Bytes 생성할 서버에 대한 설명
initScriptNo No String - 초기화 스크립트 번호
서버가 최초 부팅시 사용자가 설정한 초기화 스크립트 실행 가능
initScriptNo는 getInitScriptList 액션을 통해 획득 가능
loginKeyName No String - 로그인 키 이름
서버 인스턴스에 접속시 비밀번호를 암호화하고 복호화하는 키 결정 가능
loginKeyName은 getLoginKeyList 액션을 통해 획득 가능
Default : 가장 최근에 생성된 로그인 키 이름 사용
associateWithPublicIp No Boolean - 서버 생성시 공인 IP 할당 여부
서버 생성시 새로운 공인 IP를 생성하고 서버에 할당 가능
서브넷 유형이 Public Subnet 인 경우에만 할당 가능하며, 서버 생성 개수가 1개일때만 유효
서버 생성 후 '운영 중' 상태일 때 정상적으로 할당 완료
신청된 공인 IP는 보유하신 동안 요금이 과금되므로, 사용하지 않을 때는 반납 권장
Options : true | false
Default : false
raidTypeName Conditional String - RAID유형이름
BareMetal 서버를 생성하기 위해서는 raidTypeName 필수
raidTypeName은 getRaidList 액션을 통해 획득 가능
blockDevicePartitionList.N.mountPoint No String "/" (root) 경로로 시작하는 마운트 포인트 입력
첫 번째 마운트 포인트는 반드시 "/" (root) 파티션
"/" (root) 하위 명칭은 소문자와 숫자만 허용되며, 소문자로 시작
OS 종류에 따라서 /root, /bin, /dev 등의 특정 키워드는 사용 불가능
- 마운트 포인트
Bare Metal 서버를 생성하는 경우에는 파티션 지정.
서버 스펙에 따라서 파티션 기능이 지원되지 않을 수 있음
blockDevicePartitionList.N.partitionSize No String Min : 50 GiB - 파티션 사이즈
마운트 포인트의 파티션 사이즈를 결정
파티션 사이즈의 합은 서버 스펙의 전체 용량을 초과할 수 없음
마지막 파티션의 사이즈는 나머지 용량으로 자동 할당됨
blockStorageMappingList.N.order No Integer Min : 20 GiB - 생성 스토리지 순서
생성 스토리지의 순서 결정.
KVM 만 사용 가능.
blockStorageMappingList.N.snapshotInstanceNo No String - 생성 스토리지 스냅샷 번호
스냅샷으로 부터 생성하는 경우.
KVM 만 사용 가능.
blockStorageMappingList.N.blockStorageSize No String - 생성 스토리지 사이즈
생성 스토리지 사이즈 결정.
KVM 만 사용 가능.
blockStorageMappingList.N.blockStorageName No String - 생성 스토리지 이름
생성 스토리지 이름 결정.
KVM 만 사용 가능.
blockStorageMappingList.N.blockStorageVolumeTypeCode No String - 생성 스토리지 볼륨 타입 코드
생성 스토리지 볼륨 타입 결정.
KVM 만 사용 가능.
blockStorageMappingList.N.encrypted No String - 생성 스토리지 암호화 여부
생성 스토리지 암호화 여부 결정.
KVM 만 사용 가능.
responseFormatType No String - 응답 결과의 포맷 타입
Options : xml | json
Default : xml

응답

응답 바디

예시

요청 예시

GET {API_URL}/createServerInstances
?regionCode=KR
&serverImageProductCode=SW.VSVR.OS.LNX64.CNTOS.0703.B050
&vpcNo=***04
&subnetNo=***43
&serverProductCode=SVR.VSVR.STAND.C002.M004.NET.SSD.B050.G001
&feeSystemTypeCode=MTRAT
&serverCreateCount=1
&serverName=test-***
&networkInterfaceList.1.networkInterfaceOrder=0
&networkInterfaceList.1.accessControlGroupNoList.1=***63
&placementGroupNo=***61
&isProtectServerTermination=false
&initScriptNo=***44
&loginKeyName=test-***
&associateWithPublicIp=true

응답 예시

<createServerInstancesResponse>
  <requestId>63a6fdb1-5430-417f-98a8-d20cacc83581</requestId>
  <returnCode>0</returnCode>
  <returnMessage>success</returnMessage>
  <totalRows>1</totalRows>
  <serverInstanceList>
    <serverInstance>
      <serverInstanceNo>***4299</serverInstanceNo>
      <serverName>test-***</serverName>
      <serverDescription></serverDescription>
      <cpuCount>2</cpuCount>
      <memorySize>4294967296</memorySize>
      <platformType>
        <code>LNX64</code>
        <codeName>Linux 64 Bit</codeName>
      </platformType>
      <loginKeyName>test-***</loginKeyName>
      <publicIpInstanceNo></publicIpInstanceNo>
      <publicIp></publicIp>
      <serverInstanceStatus>
        <code>INIT</code>
        <codeName>Server init state</codeName>
      </serverInstanceStatus>
      <serverInstanceOperation>
        <code>NULL</code>
        <codeName>Server NULL OP</codeName>
      </serverInstanceOperation>
      <serverInstanceStatusName>init</serverInstanceStatusName>
      <createDate>2020-08-24T09:41:23+0900</createDate>
      <uptime>2020-08-24T09:41:23+0900</uptime>
      <serverImageProductCode>SW.VSVR.OS.LNX64.CNTOS.0703.B050</serverImageProductCode>
      <serverProductCode>SVR.VSVR.STAND.C002.M004.NET.SSD.B050.G001</serverProductCode>
      <isProtectServerTermination>false</isProtectServerTermination>
      <zoneCode>KR-1</zoneCode>
      <regionCode>KR</regionCode>
      <vpcNo>***04</vpcNo>
      <subnetNo>***43</subnetNo>
      <networkInterfaceNoList>
        <networkInterfaceNo>***87</networkInterfaceNo>
      </networkInterfaceNoList>
      <initScriptNo>***44</initScriptNo>
      <serverInstanceType>
        <code>STAND</code>
        <codeName>Standard</codeName>
      </serverInstanceType>
      <baseBlockStorageDiskType>
        <code>NET</code>
        <codeName>Network Storage</codeName>
      </baseBlockStorageDiskType>
      <baseBlockStorageDiskDetailType>
        <code>SSD</code>
        <codeName>SSD</codeName>
      </baseBlockStorageDiskDetailType>
      <placementGroupNo>***61</placementGroupNo>
      <placementGroupName>test-***</placementGroupName>
    </serverInstance>
  </serverInstanceList>
</createServerInstancesResponse>