ALIYUN::EHPC::Cluster is used to create an Elastic High Performance Computing (E-HPC) cluster.
Syntax
{
"Type": "ALIYUN::EHPC::Cluster",
"Properties": {
"EcsOrderComputeCount": Integer,
"OsTag": String,
"HaEnable": Boolean,
"VolumeType": String,
"VolumeId": String,
"EcsOrderManagerCount": Integer,
"EcsOrderManagerInstanceType": String,
"EcsOrderComputeInstanceType": String,
"Application": List,
"KeyPairName": String,
"PeriodUnit": String,
"Description": String,
"AutoRenewPeriod": Integer,
"JobQueue": String,
"ImageId": String,
"AutoRenew": Boolean,
"EhpcVersion": String,
"VSwitchId": String,
"Password": String,
"Name": String,
"SchedulerType": String,
"SccClusterId": String,
"EcsChargeType": String,
"ZoneId": String,
"EcsOrderLoginCount": Integer,
"DeployMode": String,
"ImageOwnerAlias": String,
"RemoteDirectory": String,
"ComputeSpotPriceLimit": String,
"ComputeSpotStrategy": String,
"SecurityGroupName": String,
"KeyPairName": String,
"VolumeProtocol": String,
"SecurityGroupId": String,
"Period": Integer,
"PostInstallScript": List,
"AccountType": String,
"VolumeMountpoint": String,
"EcsOrderLoginInstanceType": String,
"SystemDiskLevel": String,
"IsComputeEss": Boolean,
"SystemDiskSize": Integer,
"SystemDiskType": String,
"AdditionalVolumes": List,
"RemoteVisEnable": Boolean,
"InputFileUrl": String,
"WithoutElasticIp": Boolean,
"ResourceGroupId": String,
"ClientVersion": String,
"ComputeEnableHt": Boolean,
"RamNodeTypes": List,
"VpcId": String,
"RamRoleName": String,
"NetworkInterfaceTrafficMode": String
}
}
Properties
Property | Type | Required | Editable | Description | Constraint |
EcsOrderComputeCount | Integer | Yes | No | The number of compute nodes in the cluster. | Valid values: 1 to 99. |
OsTag | String | Yes | No | The image tag of the OS. | Example: CentOS_7.2_64. |
HaEnable | Boolean | No | No | Specifies whether to enable the high availability feature. | Valid values:
|
VolumeType | String | No | No | The type of the shared storage. | Set the value to NAS. A value of NAS specifies an File Storage NAS (NAS) file system. |
KeyPairName | String | No | No | The name of the key pair. | You must specify one of the Password and KeyPairName properties. If you specify both properties, the value of the Password property has a higher priority. |
VolumeId | String | No | No | The ID of the NAS file system. | None. |
EcsOrderManagerCount | Integer | No | No | The number of management nodes in the cluster. | Valid values:
|
EcsOrderManagerInstanceType | String | Yes | No | The instance type of the management nodes in the cluster. | None. |
Application | List | No | No | The software. | For more information, see Application property. |
EcsOrderComputeInstanceType | String | Yes | No | The instance type of the compute nodes in the cluster. | None. |
PeriodUnit | String | No | No | The billing cycle of nodes in the cluster. | Valid values:
|
Description | String | No | Yes | The description of the cluster. | The description must be 2 to 128 characters in length. |
AutoRenewPeriod | Integer | No | No | The auto-renewal period. | This property takes effect when AutoRenew is set to true. |
JobQueue | String | No | No | The queue to which you want to add the compute nodes. | None. |
ImageId | String | No | Yes | The image ID. | This property must be specified when ImageOwnerAlias is set to self, others, or marketplace. Note If you set ImageOwnerAlias to system, the ID of the base image varies only based on the value of OsTag. |
AutoRenew | Boolean | No | No | Specifies whether to enable auto-renewal. | Valid values:
|
EhpcVersion | String | No | No | The version of E-HPC. | By default, the latest version is used. |
VSwitchId | String | Yes | No | The vSwitch ID. | E-HPC supports networks only of the virtual private cloud (VPC) type. |
Password | String | No | No | The root password of the logon node. | The password must be 8 to 30 characters in length. The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported: You must specify one of the Password and KeyPairName properties. If you specify both properties, the value of the Password property has a higher priority. |
Name | String | Yes | Yes | The cluster name. | The name must be 2 to 64 characters in length and must start with a letter. The name can contain letters, digits, hyphens (-), and underscores (_). |
SchedulerType | String | No | No | The scheduler type. | Valid values:
|
SccClusterId | String | No | No | The ID of the Super Computing Cluster (SCC) instance. | If you specify the property, the existing SCC instance is managed in a new SCC cluster. |
EcsChargeType | String | No | No | The billing method of the Elastic Compute Service (ECS) instances in the cluster. | Valid values:
|
ZoneId | String | No | No | The zone ID. | None. |
EcsOrderLoginCount | Integer | Yes | No | The number of logon nodes in the cluster. | Valid values: 1 to 99. |
DeployMode | String | No | No | The deployment mode. | Valid values:
|
ImageOwnerAlias | String | No | Yes | The image type. | Valid values:
|
RemoteDirectory | String | No | No | The remote directory to which the NAS file system is mounted. | The mount path consists of the mount target and the remote directory in the following format: |
ComputeSpotPriceLimit | String | No | No | The maximum hourly price for the compute node. | The value of this property is a floating-point number within the price range at the time of purchase. |
ComputeSpotStrategy | String | No | No | The bidding policy for the compute node. | Valid values:
|
SecurityGroupName | String | No | No | The name of the security group. | If you do not use an existing security group, the system creates a new security group based on the value of this property. The default policy is applied to the new security group. |
VolumeProtocol | String | No | No | The type of the protocol that is used by the NAS file system. | Valid values:
|
SecurityGroupId | String | No | No | The ID of the security group. | None. |
Period | Integer | No | No | The subscription duration of the nodes in the cluster. | This property must be specified when EcsChargeType is set to PrePaid. |
PostInstallScript | List | No | No | The download URLs and runtime parameters of the script. | You can specify up to 16 sets of download URLs and runtime parameters. For more information, see PostInstallScript properties. |
AccountType | String | No | No | The type of the domain account service. | Valid values:
|
VolumeMountpoint | String | No | No | The mount target of the NAS file system. The mount target is of the VPC type. | The value of this property varies based on the value of VolumeId:
|
EcsOrderLoginInstanceType | String | Yes | No | The instance type of the logon nodes in the cluster. | None. |
SystemDiskLevel | String | No | No | The performance level (PL) of the enhanced SSD (ESSD) that you want to use as the system disk. | Valid values:
|
IsComputeEss | Boolean | No | No | Specifies whether to enable auto scaling. | Valid values:
|
SystemDiskSize | Integer | No | No | The size of the system disk. | Valid values: 40 to 500. Unit: GB. Default value: 40. |
SystemDiskType | String | No | No | The category of the system disk. | Valid values:
|
AdditionalVolumes | List | No | No | Details of the NAS file system that is mounted. | For more information, see AdditionalVolumes properties. |
RemoteVisEnable | Boolean | No | No | Specifies whether to enable Virtual Network Computing (VNC) that is used to manage a visualization service. | Valid values:
|
InputFileUrl | String | No | No | The URL of the job file that is uploaded to an Object Storage Service (OSS) bucket. | Example: |
WithoutElasticIp | Boolean | No | No | Specifies whether to use an elastic IP address (EIP) for the logon nodes. | Valid values:
|
ResourceGroupId | String | No | No | The ID of the resource group. | None. |
ClientVersion | String | No | No | The version of the client that is used for the cluster. | By default, the latest version is used. |
ComputeEnableHt | Boolean | No | No | Specifies whether to enable hyper-threading for the compute nodes. | Valid values:
|
RamNodeTypes | List | No | Yes | The node type details of the Resource Access Management (RAM) role for the instance. | None. |
VpcId | String | No | No | The ID of the VPC to which the cluster belongs. | You can call the DescribeVpcs operation to query available VPCs. |
RamRoleName | String | No | Yes | The name of the instance RAM role. | You can call the ListRoles operation of RAM to query available instance RAM roles. |
NetworkInterfaceTrafficMode | String | No | No | The communication mode of the elastic network interface (ENI). | Valid values:
|
Application syntax
"Application": [
{
"Tag": String
}
]
Application property
Property | Type | Required | Editable | Description | Constraint |
Tag | String | Yes | No | The tag of the software. | Example: OpenMPI_11.1. |
PostInstallScript syntax
"PostInstallScript": [
{
"Url": String,
"Args": String
}
]
PostInstallScript properties
Property | Type | Required | Editable | Description | Constraint |
Url | String | No | No | The URL that is used to download the script after the cluster is created. | None. |
Args | String | No | No | The runtime parameters of the script after the cluster is created. | None. |
AdditionalVolumes syntax
"AdditionalVolumes": [
{
"RemoteDirectory": String,
"Location": String,
"VolumeId": String,
"LocalDirectory": String,
"VolumeProtocol": String,
"JobQueue": String,
"VolumeType": String,
"VolumeMountpoint": String
}
]
AdditionalVolumes properties
Property | Type | Required | Editable | Description | Constraint |
RemoteDirectory | String | No | No | The remote directory to which the NAS file system is mounted. | None. |
Location | String | No | No | The cluster type. | Set the value to PublicCloud. |
VolumeId | String | Yes | No | The ID of the NAS file system. | None. |
LocalDirectory | String | Yes | No | The local directory to which the NAS file system is mounted. | None. |
VolumeProtocol | String | No | No | The type of the protocol that is used by the NAS file system. | Valid values:
|
JobQueue | String | No | No | The queue to which you want to add the compute nodes. | None. |
VolumeType | String | No | No | The type of the shared storage. | Set the value to NAS. |
VolumeMountpoint | String | Yes | No | The mount target of the NAS file system. The mount target is of the VPC type. | None. |
Return values
Fn::GetAtt
EcsInfo: the number of ECS instances and the instance types for each node in the cluster. Example:
{"Manager": {"Count": 2, "InstanceType": "ecs.n1.large"}, "Compute": {"Count": 8, "InstanceType": "ecs.n1.large"}, "Login": {"Count": 1, "InstanceType": "ecs.n1.large"}}
.SecurityGroupId: the ID of the security group.
ClusterId: the cluster ID.
Name: the cluster name.