Creates a pay-as-you-go or subscription cluster.

Methods

After you create a cluster, you are charged for the cluster resources that you use. 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

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

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 latest 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 type of the domain account service. Valid values:

  • nis
  • ldap

Default value: nis

Domain String No ldap

The domain name of the on-premises cluster.

This parameter takes effect only when the AccoutType parameter is set to Idap.

SchedulerType String No pbs

The type of the scheduler. Valid values:

  • pbs
  • slurm
  • opengridscheduler
  • deadline

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:

  • NFS
  • SMB

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:

  • If you do not specify the VolumeId parameter, you can leave the VolumeMountpoint parameter empty. A mount target is created by default.
  • If you specify the VolumeId parameter, the VolumeMountpoint parameter is required. You can call the ListFileSystemWithMountTargets operation to query available mount targets.
VolumeMountOption String No -t nfs -o vers=4.0

The mount options of the file system.

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:

  • Standard: An account node, a scheduling node, a logon node, and multiple compute nodes are separately deployed.
  • Simple: A management node, a logon node, and multiple compute nodes are deployed. The management node consists of an account node and a scheduling node. The logon node and compute nodes are separately deployed.
  • Tiny: A management node and multiple compute nodes are deployed. The management node consists of an account node, a scheduling node, and a logon node. The compute nodes are separately deployed.

Default value: Standard

HaEnable Boolean No true

Specifies whether to enable the high availability feature. Valid values:

  • true
  • false

Default value: false

Note If high availability is enabled, a primary management node and a secondary management node are used.
EcsChargeType String No PostPaid

The billing method of the nodes. Valid values:

  • PostPaid: pay-as-you-go
  • PrePaid: subscription

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:

  • system: public image
  • self: custom image
  • others: shared image

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:

  • NoSpot: The compute nodes are pay-as-you-go instances.
  • SpotWithPriceLimit: The compute nodes are preemptible instances that have a user-defined maximum hourly price.
  • SpotAsPriceGo: The compute nodes are preemptible instances for which the market price at the time of purchase is used as the bid price.

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:

  • true
  • false

Default value: true

Period Integer No 1

The duration of the subscription. The unit of the duration is specified by the PeriodUnit parameter.

  • If you set PriceUnit to Year, the valid values of the Period parameter are 1, 2, and 3.
  • If you set PriceUnit to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, and 9.
  • If you set PriceUnit to Hour, the valid value of the Period parameter is 1.

Default value: 1

PeriodUnit String No Year

The unit of the subscription duration. Valid values:

  • Year
  • Month
  • Hour

Default value: Month

AutoRenew String No false

Specifies whether to enable auto-renewal for the subscription. Valid values:

  • true
  • false

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 type of the system disk. Valid values:

  • cloud_efficiency: ultra disk.
  • cloud_ssd: standard SSD.
  • cloud_essd: ESSD.
  • cloud: basic disk. Disks of this type are retired.

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:

  • true
  • false

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 make sure that the value is unique among different requests. The ClientToken value 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. Default value: PL1. Valid values:

  • PL0: A single ESSD can deliver up to 10,000 random read/write IOPS.
  • PL1: An ESSD can deliver up to 50,000 random read/write IOPS.
  • PL2: An ESSD can deliver up to 100,000 random read/write IOPS.
  • PL3: A single ESSD can deliver up to 1,000,000 random read/write IOPS.

Default value: PL1

For more information, see ESSDs.

IsComputeEss Boolean No false

Specifies whether to enable auto scaling. Valid values:

  • true
  • false

Default value: false

ClusterVersion String No 1.0

The version of the cluster.

Default value: 1.0

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.VolumeMountOption String No -t nfs -o vers=4.0

The mount options 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 on 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:

  • NFS
  • SMB

Valid values of N: 1 to 10

Default value: NFS

AdditionalVolumes.N.Location String No PublicCloud

The type of the cluster. Set the value to PublicCloud.

Valid values of N: 1 to 10

PostInstallScript.N.Args String No bashfile.sh

The parameter that is 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

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.

  • pluginMod: the mode of the plug-in. The following modes are supported:
    • oss: The plug-in is downloaded and decompressed from OSS to a local path. The local path is specified by the pluginLocalPath parameter.
    • image: By default, the plug-in is stored in a pre-defined local path. The local path is specified by the pluginLocalPath parameter.
  • pluginLocalPath: the local path where the plug-in is stored. We recommend that you select a shared directory in oss mode and a non-shared directory in image mode.
  • pluginOssPath: the remote path where the plug-in is stored in OSS. This parameter takes effect only when the pluginMod parameter is set to oss.
WithoutAgent Boolean No false

Specifies whether not to install the agent.

  • true: The agent is not installed.
  • false: The agent is installed.

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.

RamNodeTypes.N String No manager

The node of the RAM role.

Valid values of N: 0 to 3

  • If you set DeployMode to Standard, the following values are valid: scheduler, account, login. Separate multiple values with commas (,).
  • If you set DeployMode to Simple, the following values are valid: manager and login. Separate multiple values with commas (,).
  • If you set DeployMode to Tiny, the following value is valid: manager.
Tag.N.Key String No TestKey

The key of the tag.

Tag.N.Value String No TestValue

The value of the tag.

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 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 %s parameter is invalid.
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 %s vSwitch is insufficient.
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.