Available in VPC
Overview
Create a server instance (VM).
Request
Request parameters
| Parameter name | Required | Type | Restrictions | Description |
|---|---|---|---|---|
| regionCode | No | String | - Region code Determine the Region in which the server instance will be created. regionCode can be obtained through the getRegionList action. Default: Select the first Region of the getRegionList search result. |
|
| memberServerImageInstanceNo | Conditional | String | - Member server image instance number Enter when creating a server from a server image you created yourself. Either the member server image instance number (memberServerImageInstanceNo) or the server image product code (serverImageProductCode) must be entered. memberServerImageInstanceNo can be obtained through the getMemberServerImageInstanceList action. |
|
| serverImageProductCode | Conditional | String | - Server image product code Enter when creating a server using a new server image. Either the member server image instance number (memberServerImageInstanceNo) or the server image product code (serverImageProductCode) must be entered. serverImageProductCode can be obtained through the getServerImageProductList action. |
|
| serverImageNo | Conditional | String | - Server image number Enter when creating a server using a new server image. Member server image instance number (memberServerImageInstanceNo) and server image product code (serverImageProductCode) can't be used at the same time. serverImageNo can be obtained through the getServerImageList action. |
|
| vpcNo | Yes | String | - VPC number Determine the VPC in which the server instance will be created. vpcNo can be obtained through the getVpcList action. |
|
| subnetNo | Yes | String | - Subnet number Determine the subnet of default network interface in the server instance to be created. subnetNo can be obtained through the getSubnetList action. |
|
| serverProductCode | No | String | - Server product code Determine the specifications for the server to create. serverProductCode can be obtained through the getServerProductList action. Default: The minimum specification is selected. The minimum specification is based on: 1. memory, 2. CPU, 3. default block storage size, 4. disk type (NET) |
|
| serverSpecCode | Conditional | String | - Server product code Determine the specifications for the server to create. serverProductCode can be obtained through the getServerProductList action. serverProductCode and serverSpecCode can't be used at the same time. Default: The minimum specification is selected. The minimum specification is based on: 1. memory, 2. CPU, 3. default block storage size, 4. disk type (NET) |
|
| isEncryptedBaseBlockStorageVolume | No | Boolean | - Default block storage volume encryption status For RHV server image products, it determines the encryption status of the default block storage. Options: true | false Default: false |
|
| feeSystemTypeCode | No | String | - Pricing plan type code Determine the pricing plan of the server to create. Options: MTRAT (hourly pricing plan, pay-as-you-go plan) | FXSUM (monthly pricing plan, flat rate plan) Default: MTRAT |
|
| serverCreateCount | No | Integer | Min: 1, Max: 10 | - Number of servers to create Determine the number of servers to be created. Default: 1 |
| serverCreateStartNo | No | Integer | Min: 0, Max: 999 The sum of the number of servers to be created and the server creation starting number can't exceed 1000. |
- Server creation start number If the number of servers to be created is greater than 1, a serial number is attached to the server name. In this case, you can decide the starting number of the serial number. Default: 1 |
| serverName | No | String | Min: 3, Max: 30 Only lowercase English letters, numbers, and special character "-" are allowed, and it must start with an English letter. It must end with an English letter or number. |
- Server name Default: NAVER Cloud Platform automatically assigns it. |
| networkInterfaceList.N.networkInterfaceOrder | Yes | Integer | Min: 0, Max: 2 | - Network interface order Determine the network interface order to be assigned to the created server. The device name (eth0, eth1, etc.) is determined in the corresponding order. There must be one default network interface. Enter 0 to set it as the default network interface. Up to 3 network interfaces can be assigned. |
| networkInterfaceList.N.networkInterfaceNo | Conditional | String | - Network interface number If you want to add a network interface that you have created yourself, enter its network interface number. networkInterfaceNo can be obtained through the getNetworkInterfaceList action. |
|
| networkInterfaceList.N.subnetNo | Conditional | String | - Subnet number of the network interface Determine the subnet of the new network interface to be created or the subnet of the existing network interface to be added. Automatically assigned if it is the default network interface. subnetNo can be obtained through the getSubnetList action. |
|
| networkInterfaceList.N.ip | No | String | - Network interface's IP address Can be set directly when creating a new network interface. It must be within the IP address range of the subnet where the network interface will be created. Subnet's 0-5th and last IP addresses can't be used. Can't duplicate IP addresses within the subnet range. Default: Automatically assign IP addresses that satisfy conditions sequentially. |
|
| networkInterfaceList.N.accessControlGroupNoList.N | Conditional | List<String> | - ACG number list to apply to network interface It determines which ACG to apply when creating a new network interface. Up to 3 ACGs can be applied. accessControlGroupNo can be obtained through the getAccessControlGroupList action. |
|
| placementGroupNo | No | String | - Physical placement group number Determine the physical placement group the server instance belongs to. placementGroupNo can be obtained through the getPlacementGroupList action. |
|
| isProtectServerTermination | No | Boolean | - Termination protection status You can prevent accidental termination by setting termination protection when creating servers. Options: true | false Default: false |
|
| serverDescription | No | String | Min: 0, Max: 1000 Bytes | Description of the server to be created |
| initScriptNo | No | String | - Init script number Run user-configured init script on server's first boot. initScriptNo can be obtained through the getInitScriptList action. |
|
| loginKeyName | No | String | - Login key name Determine the key to encrypt and decrypt passwords when connecting to the server instance. loginKeyName can be obtained through the getLoginKeyList action. Default: Use the name of the most recently created login key. |
|
| associateWithPublicIp | No | Boolean | - Whether a public IP is assigned when creating a server A new public IP can be created and assigned when creating a server. It can only be assigned when the subnet type is public subnet, and is only valid when the number of servers to be created is 1. The assignment will be completed successfully when the server is created and in the "Running" status. The public IP requested is charged while you own it. When it is not used, it is recommended to terminate it. Options: true | false Default: false |
|
| raidTypeName | Conditional | String | - RAID type name raidTypeName is required to create a bare metal server. raidTypeName can be obtained through the getRaidList action. |
|
| blockDevicePartitionList.N.mountPoint | No | String | Enter the mount point that starts with the "/" (root) path. The first mount point must be entered as "/" (root) partition. The path under "/" (root) only allows lowercase English letters and numbers, and it must start with a lowercase English letter. Depending on the OS type, certain keywords such as /root, /bin, and /dev may not be available. |
- Mount point It designates partitions when creating bare metal servers. Partitions may not be supported, depending on the server specifications. |
| blockDevicePartitionList.N.partitionSize | No | String | Min: 50 GiB | - Partition size Determine the partition size of the mount point. The sum of the partition sizes can't exceed the total capacity of the server specifications. The last partition's size is automatically allocated as the capacity remaining. |
| blockStorageMappingList.N.order | No | Integer | Min : 20 GiB | - Created storage order Determine the order of created storage. Only KVM is available. |
| blockStorageMappingList.N.snapshotInstanceNo | No | String | - Created storage snapshot number When creating from a snapshot Only KVM is available. |
|
| blockStorageMappingList.N.blockStorageSize | No | String | - Created storage size Determine the created storage size. Only KVM is available. |
|
| blockStorageMappingList.N.blockStorageName | No | String | - Created storage name Determine the created storage name. Only KVM is available. |
|
| blockStorageMappingList.N.blockStorageVolumeTypeCode | No | String | - Created storage volume type code Determine the created storage volume type. Only KVM is available. |
|
| blockStorageMappingList.N.encrypted | No | String | - Created storage encryption status Determine the encryption status of created storage. Only KVM is available. |
|
| blockStorageMappingList.N.noBlockStorage | Conditional | Boolean | - Whether to exclude storage Determine whether to exclude the storage. The default storage can't be changed. Options: true | false If false, the storage snapshot instance number (snapshotInstanceNo) must be entered. |
|
| blockStorageMappingList.N.emptyBlockStorage | Conditional | Boolean | - Whether to create new storage Create new storage without creating storage from a snapshot. The default storage can't be changed. Options: true | false If false, the storage snapshot instance number (snapshotInstanceNo) must be entered. |
|
| fabricClusterPoolNo | No | String | - Specify the GPU Fabric cluster pool. Only KVM GPUs are available. fabricClusterPoolNo can be obtained through the getFabricClusterPoolList action. |
|
| isPreInstallGpuDriver | No | Boolean | - Whether to pre-install GPU driver
|
Response
Response data type
- ServerInstanceList type
| ServerInstanceList extends CommonResponse |
|---|
| private Integer totalRows; |
| private List<ServerInstance> 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; |
| private CommonCode hypervisorType; |
| private String serverImageNo; |
| private String serverSpecCode; |
| private List<String> eventList; |
| private String fabricClusterPoolNo; |
| private String fabricClusterPoolName; |
| private String fabricClusterMode; |
| private Long fabricClusterNo; |
| private String fabricClusterName; |
| private Boolean isPreInstallGpuDriver; |
| BlockDevicePartition |
|---|
| private String mountPoint; |
| private String partitionSize; |
Examples
Request example
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
Response example
<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>