Creates a pay-as-you-go or subscription cluster.
Description
After you create a cluster, you are charged for cluster resources. We recommend that you learn about the billing methods of Elastic High Performance Computing (E-HPC) in advance. For more information, see Billing overview.
Debugging
Request parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
Action | String | Yes | CreateCluster |
The operation that you want to perform. Set the value to CreateCluster. |
ZoneId | String | No | cn-hangzhou-b |
The ID of the zone. You can call the ListRegions and DescribeZones operations to query IDs of the zones where E-HPC is supported. |
Name | String | Yes | test |
The name of the cluster. The name must be 2 to 64 characters in length. |
Description | String | No | TestDescription |
The description of the cluster. The description must be 2 to 256 characters in length. It cannot start with http:// or https://. |
EhpcVersion | String | No | 1.0.0 |
The version of E-HPC. By default, the parameter is set to the latest version number. |
ClientVersion | String | No | 1.0.64 |
The version of the E-HPC client. By default, the parameter is set to the latest version number. You can call the ListCurrentClientVersion operation to query the current version of the E-HPC client. |
OsTag | String | Yes | CentOS_7.2_64 |
The image tag of the operating system. |
AccountType | String | No | nis |
The service type of the domain account. Valid values:
Default value: nis |
SchedulerType | String | No | pbs |
The type of the scheduler. Valid values:
Default value: pbs |
SecurityGroupId | String | No | sg-bp13n61xsydodfyg**** |
The ID of the security group to which the cluster belongs. You can call the DescribeSecurityGroups operation to query available security groups in the current region. |
SecurityGroupName | String | No | ehpc-SecurityGroup |
If you do not use an existing security group, set the parameter to the name of a new security group. A default policy is applied to the new security group. |
VpcId | String | No | vpc-b3f3edefefeep0760yju**** |
The ID of the virtual private cloud (VPC) to which the cluster belongs. You can call the DescribeVpcs operation to query available VPCs. |
VSwitchId | String | No | vsw-bp1lfcjbfb099rrjn**** |
The ID of the vSwitch. E-HPC supports only VPC networks. You can call the DescribeVSwitches operation to query available vSwitches. |
VolumeType | String | No | NAS |
The type of the shared storage. Only Apsara File Storage NAS file systems are supported. |
VolumeId | String | No | 008b64**** |
The ID of the file system. If you leave the parameter empty, a Performance NAS file system is created by default. You can call the ListFileSystemWithMountTargets operation to query available mount targets. |
VolumeProtocol | String | No | NFS |
The type of the protocol that is used by the file system. Valid values:
Default value: NFS |
VolumeMountpoint | String | No | 008b648bcb-s****.cn-hangzhou.nas.aliyuncs.com |
The mount target of the file system. Take note of the following information:
|
RemoteDirectory | String | No | NasMountpoint:/RemoteDirectory |
The remote directory to which the file system is mounted. |
DeployMode | String | No | Simple |
The mode in which the cluster is deployed. Valid values:
Default value: Standard |
HaEnable | Boolean | No | true |
Specifies whether to enable the high availability feature. Valid values:
Default value: false Note If high availability is enabled, primary management nodes and secondary management
nodes are used.
|
EcsChargeType | String | No | PostPaid |
The billing method of the nodes. Valid values:
If you set the parameter to PrePaid, auto-renewal is enabled by default. |
Password | String | No | 123**** |
The root password of the logon node. The password must be 8 to 30 characters in length and contain at least three of the following items: uppercase letters, lowercase letters, digits, and special characters. The password can contain the following special characters: ( ) ~ ! @ # $ % ^ & * - + = | { } [ ] : ; ‘ < > , . ? /
You must specify either Password or KeyPairName. If both are specified, the Password parameter prevails. Note We recommend that you use HTTPS to call the API operation to prevent password leakages.
|
KeyPairName | String | No | test |
The name of the AccessKey pair. Note For more information, see Create an SSH key pair.
|
ImageOwnerAlias | String | No | self |
The type of the image. Valid values:
Default value: system |
ImageId | String | No | centos_7_02_64_20G_alibase_20170818**** |
The ID of the image. You can call the ListImages and ListCustomImages operations to query the images that are supported by E-HPC. |
EcsOrder.Manager.Count | Integer | No | 1 |
The number of the management nodes. Valid values: 1 and 2. |
EcsOrder.Manager.InstanceType | String | Yes | ecs.n1.tiny |
The instance type of the management nodes. You can call the ListPreferredEcsTypes operation to query the recommended instance types. |
EcsOrder.Compute.Count | Integer | Yes | 1 |
The number of the compute nodes. Valid values: 1 to 99. |
EcsOrder.Compute.InstanceType | String | Yes | ecs.n1.tiny |
The instance type of the compute nodes. You can call the ListPreferredEcsTypes operation to query the recommended instance types. |
EcsOrder.Login.Count | Integer | Yes | 1 |
The number of the logon nodes. Valid value: 1. |
EcsOrder.Login.InstanceType | String | Yes | ecs.n1.tiny |
The instance type of the logon nodes. You can call the ListPreferredEcsTypes operation to query the recommended instance types. |
SccClusterId | String | No | 00b648b**** |
The ID of the Super Computing Cluster (SCC) instance. If you specify the parameter, the SCC instance is moved to a new SCC cluster. |
ComputeSpotStrategy | String | No | NoSpot |
The bidding method of the compute nodes. Valid values:
Default value: NoSpot |
ComputeSpotPriceLimit | String | No | 0.034 |
The maximum hourly price of the compute nodes. A maximum of three decimal places can be used in the value of the parameter. The parameter is valid only when the ComputeSpotStrategy parameter is set to SpotWithPriceLimit. |
ComputeEnableHt | Boolean | No | true |
Specifies whether the compute nodes support hyper-threading. Valid values:
Default value: true |
Period | Integer | No | 1 |
The duration of the subscription. The unit of the duration is specified by the
Default value: 1 |
PeriodUnit | String | No | Year |
The unit of the subscription duration. Valid values:
Default value: Month |
AutoRenew | String | No | false |
Specifies whether to enable auto-renewal for the subscription. Valid values:
Default value: false |
AutoRenewPeriod | Integer | No | 1 |
The auto-renewal period of the subscription compute nodes. The parameter takes effect when AutoRenew is set to true. |
InputFileUrl | String | No | https://ehpc-tianshui.oss-cn-beijing.aliyuncs.com/test-u****/testlist_ehpc.sh |
The URL of the job files that are uploaded to an Object Storage Service (OSS) bucket. |
JobQueue | String | No | workq |
The queue to which the compute nodes are added. |
SystemDiskType | String | No | cloud_ssd |
The category of the system disk. Valid values:
Default value: cloud_ssd |
SystemDiskSize | Integer | No | 40 |
The size of the system disk. Unit: GB Valid values: 40 to 500 Default value: 40 |
RemoteVisEnable | String | No | false |
Specifies whether to enable Virtual Network Computing (VNC). Valid values:
Default value: false |
ResourceGroupId | String | No | rg-acfmxazb4ph**** |
The ID of the resource group. You can call the ListResourceGroups operation to obtain the ID of the resource group. |
ClientToken | String | No | 123e4567-e89b-12d3-a456-426655440000 |
The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see How to ensure the idempotence of a request. |
WithoutElasticIp | Boolean | No | true |
Specifies whether the logon node uses an elastic IP address (EIP). Default value: false |
SystemDiskLevel | String | No | PL0 |
The performance level of the ESSD that is used as the system disk. Valid values:
Default value: PL1 For more information, see ESSDs. |
IsComputeEss | Boolean | No | false |
Specifies whether to enable auto scaling. Valid values:
Default value: false |
ClusterVersion | String | No | 1.0 |
The version of the cluster. Default value: 1.0 |
Plugin | String | No | '{ "pluginMod": 'oss', 'pluginLocalPath': '/opt/plugin', 'pluginOssPath': 'https://bucket.oss-cn-hangzhou.aliyuncs.com/plugin/plugin.tgz' }' |
The mode configurations of the plug-in. This parameter takes effect only when the SchedulerType parameter is set to custom. The value must be a JSON string. The parameter contains the following parameters: pluginMod, pluginLocalPath, and pluginOssPath.
|
WithoutAgent | Boolean | No | false |
Specifies whether not to install the agent.
Default value: false |
RamRoleName | String | No | testRamRoleName |
The name of the Resource Access Management (RAM) role. You can call the ListRoles operation provided by RAM to query the created RAM roles. |
Application.N.Tag | String | No | OpenMPI_11.1 |
The tag of the software. Valid values of N: 0 to 100 You can call the ListSoftwares operation to query the tag of the software. |
AdditionalVolumes.N.JobQueue | String | No | high |
The queue of the nodes to which the additional file system is attached. Valid values of N: 1 to 10. |
AdditionalVolumes.N.VolumeId | String | No | extreme-00b88**** |
The ID of the additional file system. Valid values of N: 1 to 10 |
AdditionalVolumes.N.Roles.N.Name | String | No | ["Compute"] |
The type of the nodes to which the additional file system is attached. Valid values of N in AdditionalVolumes.N.Roles: 1 to 10 Valid values of N in Roles.N.Name: 0 to 8 |
AdditionalVolumes.N.VolumeMountpoint | String | No | 0088****-sihc.cn-hangzhou.extreme.nas.aliyuncs.com |
The mount target of the additional file system. Valid values of N: 1 to 10 |
AdditionalVolumes.N.RemoteDirectory | String | No | /test |
The remote directory to which the additional file system is mounted. Valid values of N: 1 to 10 |
AdditionalVolumes.N.VolumeType | String | No | nas |
The type of the additional shared storage. Only NAS file systems are supported. Valid values of N: 1 to 10 |
AdditionalVolumes.N.LocalDirectory | String | No | /ff |
The local directory to which the additional file system is mounted. Valid values of N: 1 to 10 |
AdditionalVolumes.N.VolumeProtocol | String | No | NFS |
The type of the protocol that is used by the additional file system. Valid values:
Valid values of N: 1 to 10 Default value: NFS |
AdditionalVolumes.N.Location | String | No | PublicCloud |
The type of the cluster. Valid value: PublicCloud. Valid values of N: 1 to 10 |
PostInstallScript.N.Args | String | No | bashfile.sh |
The parameters that are used to run the script after the cluster is created. Valid values of N: 0 to 16 |
PostInstallScript.N.Url | String | No | /opt/job.sh |
The URL that is used to download the script after the cluster is created. Valid values of N: 0 to 16 |
RamNodeTypes.N | String | No | manager |
The node of the RAM role. Valid values of N: 0 to 3
|
Response parameters
Parameter | Type | Example | Description |
---|---|---|---|
RequestId | String | F6757FA4-8FED-4602-B7F5-3550C084**** |
The ID of the request. |
TaskId | String | F6757FA4-8FED-4602-B7F5-3550C084**** |
The ID of the task. Note CreateCluster is an asynchronous API operation. If a request succeeds, a response
is immediately generated before nodes are created. You can call the ListTasks operation to query the result of the task.
|
ClusterId | String | ehpc-hz-FYUr32**** |
The ID of the cluster. |
Examples
Sample requests
http(s)://ehpc.cn-hangzhou.aliyuncs.com/?Action=CreateCluster
&EcsOrder.Compute.Count=1
&EcsOrder.Compute.InstanceType=ecs.n1.tiny
&EcsOrder.Login.Count=1
&EcsOrder.Login.InstanceType=ecs.n1.tiny
&EcsOrder.Manager.InstanceType=ecs.n1.tiny
&Name=test
&OsTag=CentOS_7.2_64
&<Common request parameters>
Sample success responses
XML
format
HTTP/1.1 200 OK
Content-Type:application/xml
<CreateClusterResponse>
<TaskId>F6757FA4-8FED-4602-B7F5-3550C084****</TaskId>
<RequestId>F6757FA4-8FED-4602-B7F5-3550C084****</RequestId>
<ClusterId>ehpc-hz-FYUr32****</ClusterId>
</CreateClusterResponse>
JSON
format
HTTP/1.1 200 OK
Content-Type:application/json
{
"TaskId" : "F6757FA4-8FED-4602-B7F5-3550C084****",
"RequestId" : "F6757FA4-8FED-4602-B7F5-3550C084****",
"ClusterId" : "ehpc-hz-FYUr32****"
}
Error codes
HttpCode | Error code | Error message | Description |
---|---|---|---|
400 | InvalidParams | The specified parameter %s is invalid. | The error message returned because the following parameter is invalid: %s. |
400 | NotEnabled | You have not enabled this service | The error message returned because the service is not activated for your account. |
400 | InDebt | Your account has overdue payments. | The error message returned because your account has overdue payments. |
400 | OrderError.InsufficientBalance | The account balance is insufficient. Please add funds first and try again. | The error message returned because your account has overdue payments. Add funds to the account and try again. |
400 | OrderError.InstHasUnpaidOrder | Your account has an unpaid order. | The error message returned because your account has unsettled orders. Settle them and try again. |
400 | OrderError.Arrearage | Your account balance is less than CNY 100. Please add funds to your account and try again. | The error message returned because the balance of your account is less than CNY 100. Add funds to the account and try again. |
400 | OrderError.NoCard | No credit card is bound to your account. | The error message returned because no credit card is bound to your account. Bind a credit card and try again. |
400 | OrderError.InvalidPayMethod | No valid default payment method is specified for your account. | The error message returned because the default payment method is invalid. |
400 | OrderError.NoRealNameAuthentication | You have not completed the real name authentication. | The error message returned because you have not completed real-name verification. Complete real-name verification and try again. |
400 | OrderError.NoRealNameRegistration | Real name registration is required for instances launched in mainland China. | The error message returned because you have not completed real-name registration before you purchase cloud services in the Chinese mainland. |
400 | OrderError.UserProfileIncomplete | You have not completed your user profile. | The error message returned because you have not provided complete personal information. |
400 | InvalidVpc | The specified VPC is invalid. | The error message returned because the specified VPC is invalid. |
400 | InvalidVolume | The specified volume is invalid. | The error message returned because the specified NAS file system is invalid. |
400 | InvalidSoftware | The specified software is not supported. | The error message returned because the specified software is not supported. |
400 | InvalidVolumeProtocal | The specified volume protocol is invalid. | The error message returned because the specified storage protocol is invalid. |
400 | InvalidVolumeMountpoint | The specified volume mount point is invalid. | The error message returned because the specified mount target is invalid. |
403 | TooManyClusters | The number of user clusters exceeds the quota. | The error message returned because the number of clusters has exceeded the cluster quota, which is three. To raise the quota, submit a ticket. |
403 | TooManyComputes | The number of computing nodes exceeds the quota. | The error message returned because the number of compute nodes has exceeded the compute node quota. |
403 | TooManyLogins | The maximum number of logged on nodes is exceeded. | The error message returned because the number of logon nodes has exceeded the logon node quota, which is two. To raise the quota, submit a ticket. |
403 | TooManyScc | The maximum number of SCC instances is exceeded. | The error message returned because the number of SCC instances has exceeded the SCC instance quota, which is 15. To raise the quota, submit a ticket. |
403 | QuotaExceeded.PrivateIpAddress | Insufficient private IP addresses in vSwitch: %s. | The error message returned because the available private IP addresses that can be used by the following vSwitch is insufficient: %s. |
403 | ConflictOpt | A conflicting operation is running. | The error message returned because an operation that conflicts with the current operation is in progress. Try again later. |
403 | ImageNotSupported | The specified image is not supported. | The error message returned because the selected image is not supported. Change the image and try again. |
404 | ImageNotFound | The specified image does not exist. | The error message returned because the specified image does not exist. |
404 | VolumeNotFound | The specified volume does not exist. | The error message returned because the specified NAS file system does not exist. |
404 | VpcNotFound | The specified VPC does not exist. | The error message returned because the specified VPC does not exist. |
406 | EcsError | An error occurred while calling the ECS API operation. | The error message returned because the ECS API call has failed. |
406 | NasError | NAS API request failed. | The error message returned because the NAS API call has failed. |
406 | NasServiceNotOpen | The NAS service is not activated. | The error message returned because the NAS service is not activated. |
406 | EipError | The EIP API request failed. | The error message returned because the operation has failed to call the EIP service. |
406 | OrderError | An order request error occurred. | The error message returned because the order request has failed. |
406 | FailToGenId | Generating cluster ID failed. | The error message returned because the cluster ID has failed to be generated. Try again later. |
406 | DbError | A database service error occurred. | The error message returned because the database request has failed. |
406 | AliyunError | An Alibaba Cloud product error occurred. | The error message returned because the operation has failed to call another Alibaba Cloud service. |
407 | NotAuthorized | No authorization is granted. | The error message returned because you are not authorized by RAM for the request. |
500 | UnknownError | An unknown error occurred. | The error message returned because an unknown error has occurred. Try again later. If the error persists, submit a ticket. |
503 | ServiceUnavailable | The request has failed due to a temporary failure of the server | The error message returned because the request has failed. The service is temporarily unavailable. |
For a list of error codes, visit the API Error Center.