createServerInstances

Prev Next

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

개요

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

요청

요청 파라미터

파라미터명 필수 여부 타입 제약 사항 설명
regionCode No String - 리전 코드
서버 인스턴가 생성될 리전(Region) 결정 가능
regionCode는 getRegionList 액션을 통해 획득 가능
Default : getRegionList 조회 결과의 첫 번째 리전을 선택
memberServerImageInstanceNo Conditional String - 회원 서버 이미지 인스턴스 번호
직접 생성한 서버 이미지로부터 서버를 생성시 입력함
회원 서버 이미지 인스턴스 번호(memberServerImageInstanceNo)와 서버 이미지 상품 코드(serverImageProductCode) 중 반드시 한 개를 필수로 입력함
memberServerImageInstanceNo는 getMemberServerImageInstanceList 액션을 통해 획득 가능
serverImageProductCode Conditional String - 서버 이미지 상품 코드
새로운 서버 이미지를 이용하여 서버를 생성시 입력함
회원 서버 이미지 인스턴스 번호(memberServerImageInstanceNo)와 서버 이미지 상품 코드(serverImageProductCode) 중 반드시 한개를 필수로 입력함
serverImageProductCode는 getServerImageProductList 액션을 통해 획득 가능
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) 순서로 결정됨
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 액션을 통해 획득 가능
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 - 파티션 사이즈
마운트 포인트의 파티션 사이즈를 결정
파티션 사이즈의 합은 서버 스펙의 전체 용량을 초과할 수 없음
마지막 파티션의 사이즈는 나머지 용량으로 자동 할당됨

응답

응답 데이터 타입

  • ServerInstanceList 타입
ServerInstanceList extends CommonResponse
private Integer totalRows;
private List serverInstanceList = new ArrayList<>();
ServerInstance
private String serverInstanceNo;
private String serverName;
private String serverDescription;
private Integer cpuCount;
private Long memorySize;
private CommonCode platformType;
private String loginKeyName;
private String publicIpInstanceNo;
private String publicIp;
private CommonCode serverInstanceStatus;
private CommonCode serverInstanceOperation;
private String serverInstanceStatusName;
private Date createDate;
private Date uptime;
private String serverImageProductCode;
private String serverProductCode;
private Boolean isProtectServerTermination;
private String zoneCode;
private String regionCode;
private String vpcNo;
private String subnetNo;
private NetworkInterfaceNoList networkInterfaceNoList;
private String initScriptNo;
private CommonCode serverInstanceType;
private CommonCode baseBlockStorageDiskType;
private CommonCode baseBlockStorageDiskDetailType;
private String placementGroupNo;
private String placementGroupName;
private String memberServerImageInstanceNo;
private List<BlockDevicePartition> blockDevicePartitionList;

예시

요청 예시

ncloud vserver 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 "networkInterfaceOrder='0', accessControlGroupNoList=['***63', '***64']" "networkInterfaceOrder='1', subnetNo='***43', accessControlGroupNoList=['***63', '***64']" --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>