ALIYUN::EHPC::Cluster類型用于創建一個彈性高性能計算集群。
語法
{
"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
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
EcsOrderComputeCount | Integer | 是 | 否 | 集群計算節點數量。 | 取值范圍:1~99。 |
OsTag | String | 是 | 否 | 操作系統鏡像標簽。 | 取值示例:CentOS_7.2_64。 |
HaEnable | Boolean | 否 | 否 | 是否開啟高可用。 | 取值:
|
VolumeType | String | 否 | 否 | 共享存儲類型。 | 取值:NAS,表文件系統類型。 |
KeyPairName | String | 否 | 否 | 密鑰對。 | Password和KeyPairName需至少指定其中一個參數。如果二者都指定,則Password優先級更高。 |
VolumeId | String | 否 | 否 | 阿里云NAS實例ID。 | 無 |
EcsOrderManagerCount | Integer | 否 | 否 | 集群管控節點的實例數量。 | 取值:
|
EcsOrderManagerInstanceType | String | 是 | 否 | 集群管控節點的實例規格。 | 無 |
Application | List | 否 | 否 | 應用軟件。 | 更多信息,請參見Application屬性。 |
EcsOrderComputeInstanceType | String | 是 | 否 | 集群計算節點的實例規格。 | 無 |
PeriodUnit | String | 否 | 否 | 購買集群節點的時長單位。 | 取值:
|
Description | String | 否 | 是 | 集群的描述信息。 | 長度為2~128個字符。 |
AutoRenewPeriod | Integer | 否 | 否 | 每次自動續費的時長。 | 當AutoRenew取值為true時,該參數有效。 |
JobQueue | String | 否 | 否 | 計算節點加入的隊列。 | 無 |
ImageId | String | 否 | 是 | 鏡像ID。 | 當ImageOwnerAlias取值為self、others或marketplace時,必須指定該參數。 說明 如果ImageOwnerAlias取值為system, 則只根據OsTag來決定基礎鏡像ID。 |
AutoRenew | Boolean | 否 | 否 | 是否自動續費。 | 取值:
|
EhpcVersion | String | 否 | 否 | E-HPC產品版本。 | 默認為最新版本。 |
VSwitchId | String | 是 | 否 | 交換機ID。 | E-HPC當前僅支持VPC網絡。 |
Password | String | 否 | 否 | 登錄節點的root密碼。 | 長度為8~30個字符,必須同時包含大寫英文字母、小寫英文字母、數字和特殊字符其中三項。支持的特殊字符為: Password和KeyPairName需至少指定其中一個參數。如果二者都指定,則Password優先級更高。 |
Name | String | 是 | 是 | 集群名稱。 | 長度為2~64個字符,必須以英文字母或漢字開頭。可包含英文字母、漢字、數字、短劃線(-)和下劃線(_)。 |
SchedulerType | String | 否 | 否 | 調度器類型。 | 取值:
|
SccClusterId | String | 否 | 否 | SCC實例ID。 | 如果配置該參數,則將已有的SCC實例納管到新創建的SCC集群中。 |
EcsChargeType | String | 否 | 否 | 集群使用ECS實例的付費類型。 | 取值:
|
ZoneId | String | 否 | 否 | 可用區ID。 | 無 |
EcsOrderLoginCount | Integer | 是 | 否 | 集群登錄節點數量。 | 取值范圍:1~99。 |
DeployMode | String | 否 | 否 | 部署模式。 | 取值:
|
ImageOwnerAlias | String | 否 | 是 | 鏡像類型。 | 取值:
|
RemoteDirectory | String | 否 | 否 | 掛載共享存儲的遠程目錄。 | 最終掛載路徑為掛載點與遠程目錄組合: |
ComputeSpotPriceLimit | String | 否 | 否 | 計算節點的每小時最高價格。 | 取值是浮點數,為當前的價格區間。 |
ComputeSpotStrategy | String | 否 | 否 | 計算節點的競價策略。 | 取值:
|
SecurityGroupName | String | 否 | 否 | 安全組名稱。 | 如果不使用已有安全組,則使用此名稱創建新安全組,應用默認安全組策略。 |
VolumeProtocol | String | 否 | 否 | 共享存儲的協議類型。 | 取值:
|
SecurityGroupId | String | 否 | 否 | 安全組ID。 | 無 |
Period | Integer | 否 | 否 | 購買集群節點的時長。 | EcsChargeType取值為PrePaid時,必須指定該參數。 |
PostInstallScript | List | 否 | 否 | 腳本的下載地址和執行參數。 | 最多指定16組下載地址和執行參數。更多信息,請參見PostInstallScript屬性。 |
AccountType | String | 否 | 否 | 域賬號服務類型。 | 取值:
|
VolumeMountpoint | String | 否 | 否 | NAS的VPC掛載點。 | 取值與VolumeId相關,具體如下:
|
EcsOrderLoginInstanceType | String | 是 | 否 | 集群登錄節點實例規格。 | 無 |
SystemDiskLevel | String | 否 | 否 | 創建ESSD云盤作為系統盤使用時,設置云盤的性能等級。 | 取值:
|
IsComputeEss | Boolean | 否 | 否 | 是否啟用自動伸縮。 | 取值:
|
SystemDiskSize | Integer | 否 | 否 | 系統盤大小。 | 取值范圍:40~500。 單位:GB。 默認值:40。 |
SystemDiskType | String | 否 | 否 | 系統盤的類型。 | 取值:
|
AdditionalVolumes | List | 否 | 否 | 掛載的共享存儲。 | 更多信息,請參見AdditionalVolumes屬性。 |
RemoteVisEnable | Boolean | 否 | 否 | 是否開啟遠程可視化。 | 取值:
|
InputFileUrl | String | 否 | 否 | 上傳到OSS的作業文件的URL地址。 | 取值示例: |
WithoutElasticIp | Boolean | 否 | 否 | 登錄節點是否使用彈性公網IP。 | 取值:
|
ResourceGroupId | String | 否 | 否 | 資源組ID。 | 無 |
ClientVersion | String | 否 | 否 | 集群客戶端版本。 | 默認為最新版本。 |
ComputeEnableHt | Boolean | 否 | 否 | 計算節點是否支持超線程。 | 取值:
|
RamNodeTypes | List | 否 | 是 | 授權實例角色的節點名稱詳情。 | 無 |
VpcId | String | 否 | 否 | 集群所屬的VPC ID。 | 您可以調用DescribeVpcs查詢已創建的VPC信息。 |
RamRoleName | String | 否 | 是 | 實例RAM角色名稱。 | 您可以使用RAM APIListRoles查詢您已創建的實例RAM角色。 |
NetworkInterfaceTrafficMode | String | 否 | 否 | 彈性網卡的通信方式。 | 取值:
|
Application語法
"Application": [
{
"Tag": String
}
]
Application屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Tag | String | 是 | 否 | 應用軟件的標簽。 | 取值示例:OpenMPI_11.1。 |
PostInstallScript語法
"PostInstallScript": [
{
"Url": String,
"Args": String
}
]
PostInstallScript屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Url | String | 否 | 否 | 安裝后腳本的下載地址。 | 無 |
Args | String | 否 | 否 | 安裝后腳本的執行參數。 | 無 |
AdditionalVolumes語法
"AdditionalVolumes": [
{
"RemoteDirectory": String,
"Location": String,
"VolumeId": String,
"LocalDirectory": String,
"VolumeProtocol": String,
"JobQueue": String,
"VolumeType": String,
"VolumeMountpoint": String
}
]
AdditionalVolumes屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
RemoteDirectory | String | 否 | 否 | 掛載共享存儲的遠程目錄。 | 無 |
Location | String | 否 | 否 | 掛載的共享存儲的集群類型。 | 取值:PublicCloud。 |
VolumeId | String | 是 | 否 | 掛載的NAS實例ID。 | 無 |
LocalDirectory | String | 是 | 否 | 掛載的共享存儲的本地掛載目錄。 | 無 |
VolumeProtocol | String | 否 | 否 | 掛載的共享存儲協議類型。 | 取值:
|
JobQueue | String | 否 | 否 | 計算節點加入的隊列。 | 無 |
VolumeType | String | 否 | 否 | 存儲類型。 | 取值:NAS。 |
VolumeMountpoint | String | 是 | 否 | NAS的VPC掛載點。 | 無 |
返回值
Fn::GetAtt
EcsInfo:集群中各組件的ECS數量和規格。例如:
{"Manager": {"Count": 2, "InstanceType": "ecs.n1.large"}, "Compute": {"Count": 8, "InstanceType": "ecs.n1.large"}, "Login": {"Count": 1, "InstanceType": "ecs.n1.large"}}
。SecurityGroupId:安全組ID。
ClusterId:集群ID。
Name:集群名稱。
示例
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
VpcCidrBlock:
Type: String
AllowedValues:
- 192.168.0.0/16
- 172.16.0.0/12
- 10.0.0.0/8
Label:
en: VPC CIDR Block
zh-cn: 專有網絡網段
Default: 192.168.0.0/16
VSwitchCidrBlock:
Type: String
Description:
zh-cn: 必須是所屬專有網絡的子網段,并且沒有被其他交換機占用。
en: Must be a sub-network segment of the proprietary network and is not occupied by other VSwitches.
Label:
zh-cn: 交換機網段
en: vSwitch CIDR Block
Default: 192.168.0.0/24
ZoneId:
Type: String
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Label:
zh-cn: 可用區
en: Availability Zone
Password:
NoEcho: true
Type: String
Label:
en: Login Password
zh-cn: 登錄密碼
MinLength: 8
MaxLength: 30
EcsOrderLoginInstanceType:
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ZoneId
Type: String
Label:
en: Login Instance Specifications
zh-cn: 登錄實例規格
EcsOrderManagerInstanceType:
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ZoneId
Type: String
Label:
en: Manager Instance Specifications
zh-cn: 管理實例規格
EcsOrderComputeInstanceType:
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ZoneId
Type: String
Label:
en: Compute Instance Specifications
zh-cn: 計算實例規格
BucketName:
Type: String
Label:
en: Bucket Name
zh-cn: 存儲空間名稱
Default: test-ehpc
BucketAccessControl:
Type: String
Label:
en: Access Control
zh-cn: 讀寫權限
AllowedValues:
- private
- public-read
- public-read-write
Default: public-read
BucketStorageClass:
Type: String
Label:
en: Storage Type
zh-cn: 存儲類型
AllowedValues:
- Standard
- IA
- Archive
Default: Standard
Resources:
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
CidrBlock:
Ref: VpcCidrBlock
VpcName:
Fn::Join:
- '-'
- - Vpc
- Ref: ALIYUN::StackId
VSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
ZoneId:
Ref: ZoneId
VpcId:
Ref: Vpc
CidrBlock:
Ref: VSwitchCidrBlock
VSwitchName:
Fn::Join:
- '-'
- - VSwitch
- StackId
- Ref: ALIYUN::StackId
AccessGroup:
Type: ALIYUN::NAS::AccessGroup
Properties:
AccessGroupType: Vpc
AccessGroupName:
Fn::Join:
- '-'
- - AccessGroup
- Ref: ALIYUN::StackId
FileSystem:
Type: ALIYUN::NAS::FileSystem
Properties:
ProtocolType: NFS
StorageType: Capacity
MountTarget:
Type: ALIYUN::NAS::MountTarget
Properties:
VpcId:
Ref: Vpc
FileSystemId:
Ref: FileSystem
VSwitchId:
Ref: VSwitch
NetworkType: Vpc
AccessGroupName:
Ref: AccessGroup
AccessRule:
Type: ALIYUN::NAS::AccessRule
Properties:
SourceCidrIp: 0.0.0.0/0
AccessGroupName:
Ref: AccessGroup
Cluster:
Type: ALIYUN::EHPC::Cluster
DependsOn:
- AccessRule
- FileSystem
- MountTarget
- OssBucket
Properties:
EcsOrderComputeCount: 1
OsTag: CentOS_7.2_64
Name:
Fn::Join:
- '-'
- - Cluster
- Ref: ALIYUN::StackId
EhpcVersion: 1.0.0
VolumeId:
Ref: FileSystem
EcsOrderLoginCount: 1
VSwitchId:
Ref: VSwitch
VolumeMountpoint:
Ref: MountTarget
EcsOrderLoginInstanceType:
Ref: EcsOrderLoginInstanceType
EcsOrderManagerInstanceType:
Ref: EcsOrderManagerInstanceType
EcsOrderComputeInstanceType:
Ref: EcsOrderComputeInstanceType
Password:
Ref: Password
Application:
- Tag: VMD_1.9.3
- Tag: LAMMPS-OPENMPI-31Mar17
OssBucket:
Type: ALIYUN::OSS::Bucket
Properties:
BucketName:
Ref: BucketName
AccessControl:
Ref: BucketAccessControl
StorageClass:
Ref: BucketStorageClass
Tags:
Value: '021'
Key: best_practice
Outputs:
MountTargetDomain:
Description:
en: Mount point domain name
zh-cn: 掛載點域名
Value:
Fn::GetAtt:
- MountTarget
- MountTargetDomain
FileSystemId:
Description:
en: ID of the file system created
zh-cn: 創建的文件系統的ID
Value:
Fn::GetAtt:
- FileSystem
- FileSystemId
Description:
en: EHPC Industrial Simulation
zh-cn: EHPC工業仿真最佳實踐
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- ZoneId
- VpcCidrBlock
- VSwitchCidrBlock
Label:
default:
en: VPC
zh-cn: 專有網絡
- Parameters:
- EcsOrderComputeInstanceType
- EcsOrderLoginInstanceType
- EcsOrderManagerInstanceType
- Password
Label:
default:
en: EHPC
zh-cn: 彈性高性能計算
- Parameters:
- BucketName
- BucketAccessControl
- BucketStorageClass
Label:
default:
en: OSS
zh-cn: 對象存儲
TemplateTags:
- acs:solution:高性能計算:EHPC工業仿真
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"VpcCidrBlock": {
"Type": "String",
"AllowedValues": [
"192.168.0.0/16",
"172.16.0.0/12",
"10.0.0.0/8"
],
"Label": {
"en": "VPC CIDR Block",
"zh-cn": "專有網絡網段"
},
"Default": "192.168.0.0/16"
},
"VSwitchCidrBlock": {
"Type": "String",
"Description": {
"zh-cn": "必須是所屬專有網絡的子網段,并且沒有被其他交換機占用。",
"en": "Must be a sub-network segment of the proprietary network and is not occupied by other VSwitches."
},
"Label": {
"zh-cn": "交換機網段",
"en": "vSwitch CIDR Block"
},
"Default": "192.168.0.0/24"
},
"ZoneId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Label": {
"zh-cn": "可用區",
"en": "Availability Zone"
}
},
"Password": {
"NoEcho": true,
"Type": "String",
"Label": {
"en": "Login Password",
"zh-cn": "登錄密碼"
},
"MinLength": 8,
"MaxLength": 30
},
"EcsOrderLoginInstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "ZoneId"
},
"Type": "String",
"Label": {
"en": "Login Instance Specifications",
"zh-cn": "登錄實例規格"
}
},
"EcsOrderManagerInstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "ZoneId"
},
"Type": "String",
"Label": {
"en": "Manager Instance Specifications",
"zh-cn": "管理實例規格"
}
},
"EcsOrderComputeInstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "ZoneId"
},
"Type": "String",
"Label": {
"en": "Compute Instance Specifications",
"zh-cn": "計算實例規格"
}
},
"BucketName": {
"Type": "String",
"Label": {
"en": "Bucket Name",
"zh-cn": "存儲空間名稱"
},
"Default": "test-ehpc"
},
"BucketAccessControl": {
"Type": "String",
"Label": {
"en": "Access Control",
"zh-cn": "讀寫權限"
},
"AllowedValues": [
"private",
"public-read",
"public-read-write"
],
"Default": "public-read"
},
"BucketStorageClass": {
"Type": "String",
"Label": {
"en": "Storage Type",
"zh-cn": "存儲類型"
},
"AllowedValues": [
"Standard",
"IA",
"Archive"
],
"Default": "Standard"
}
},
"Resources": {
"Vpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"CidrBlock": {
"Ref": "VpcCidrBlock"
},
"VpcName": {
"Fn::Join": [
"-",
[
"Vpc",
{
"Ref": "ALIYUN::StackId"
}
]
]
}
}
},
"VSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"ZoneId": {
"Ref": "ZoneId"
},
"VpcId": {
"Ref": "Vpc"
},
"CidrBlock": {
"Ref": "VSwitchCidrBlock"
},
"VSwitchName": {
"Fn::Join": [
"-",
[
"VSwitch",
"StackId",
{
"Ref": "ALIYUN::StackId"
}
]
]
}
}
},
"AccessGroup": {
"Type": "ALIYUN::NAS::AccessGroup",
"Properties": {
"AccessGroupType": "Vpc",
"AccessGroupName": {
"Fn::Join": [
"-",
[
"AccessGroup",
{
"Ref": "ALIYUN::StackId"
}
]
]
}
}
},
"FileSystem": {
"Type": "ALIYUN::NAS::FileSystem",
"Properties": {
"ProtocolType": "NFS",
"StorageType": "Capacity"
}
},
"MountTarget": {
"Type": "ALIYUN::NAS::MountTarget",
"Properties": {
"VpcId": {
"Ref": "Vpc"
},
"FileSystemId": {
"Ref": "FileSystem"
},
"VSwitchId": {
"Ref": "VSwitch"
},
"NetworkType": "Vpc",
"AccessGroupName": {
"Ref": "AccessGroup"
}
}
},
"AccessRule": {
"Type": "ALIYUN::NAS::AccessRule",
"Properties": {
"SourceCidrIp": "0.0.0.0/0",
"AccessGroupName": {
"Ref": "AccessGroup"
}
}
},
"Cluster": {
"Type": "ALIYUN::EHPC::Cluster",
"DependsOn": [
"AccessRule",
"FileSystem",
"MountTarget",
"OssBucket"
],
"Properties": {
"EcsOrderComputeCount": 1,
"OsTag": "CentOS_7.2_64",
"Name": {
"Fn::Join": [
"-",
[
"Cluster",
{
"Ref": "ALIYUN::StackId"
}
]
]
},
"EhpcVersion": "1.0.0",
"VolumeId": {
"Ref": "FileSystem"
},
"EcsOrderLoginCount": 1,
"VSwitchId": {
"Ref": "VSwitch"
},
"VolumeMountpoint": {
"Ref": "MountTarget"
},
"EcsOrderLoginInstanceType": {
"Ref": "EcsOrderLoginInstanceType"
},
"EcsOrderManagerInstanceType": {
"Ref": "EcsOrderManagerInstanceType"
},
"EcsOrderComputeInstanceType": {
"Ref": "EcsOrderComputeInstanceType"
},
"Password": {
"Ref": "Password"
},
"Application": [
{
"Tag": "VMD_1.9.3"
},
{
"Tag": "LAMMPS-OPENMPI-31Mar17"
}
]
}
},
"OssBucket": {
"Type": "ALIYUN::OSS::Bucket",
"Properties": {
"BucketName": {
"Ref": "BucketName"
},
"AccessControl": {
"Ref": "BucketAccessControl"
},
"StorageClass": {
"Ref": "BucketStorageClass"
},
"Tags": {
"Value": "021",
"Key": "best_practice"
}
}
}
},
"Outputs": {
"MountTargetDomain": {
"Description": {
"en": "Mount point domain name",
"zh-cn": "掛載點域名"
},
"Value": {
"Fn::GetAtt": [
"MountTarget",
"MountTargetDomain"
]
}
},
"FileSystemId": {
"Description": {
"en": "ID of the file system created",
"zh-cn": "創建的文件系統的ID"
},
"Value": {
"Fn::GetAtt": [
"FileSystem",
"FileSystemId"
]
}
}
},
"Description": {
"en": "EHPC Industrial Simulation",
"zh-cn": "EHPC工業仿真最佳實踐"
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"ZoneId",
"VpcCidrBlock",
"VSwitchCidrBlock"
],
"Label": {
"default": {
"en": "VPC",
"zh-cn": "專有網絡"
}
}
},
{
"Parameters": [
"EcsOrderComputeInstanceType",
"EcsOrderLoginInstanceType",
"EcsOrderManagerInstanceType",
"Password"
],
"Label": {
"default": {
"en": "EHPC",
"zh-cn": "彈性高性能計算"
}
}
},
{
"Parameters": [
"BucketName",
"BucketAccessControl",
"BucketStorageClass"
],
"Label": {
"default": {
"en": "OSS",
"zh-cn": "對象存儲"
}
}
}
],
"TemplateTags": [
"acs:solution:高性能計算:EHPC工業仿真"
]
}
}
}