O recurso ALIYUN::EHPC::ClusterV2 cria um cluster Elastic High Performance Computing (E-HPC) da nova versão.
Sintaxe
{
"Type": "ALIYUN::EHPC::ClusterV2",
"Properties": {
"ClusterName": String,
"SharedStorages": List,
"VSwitchId": String,
"VpcId": String,
"AdditionalPackages": List,
"Addons": List,
"ClusterCredentials": Map,
"ClusterMode": String,
"ClusterCategory": String,
"ClientVersion": String,
"ClusterCustomConfiguration": Map,
"ClusterDescription": String,
"DeletionProtection": Boolean,
"IsEnterpriseSecurityGroup": Boolean,
"MaxCount": Integer,
"Manager": Map,
"MaxCoreCount": Integer,
"Queues": List,
"ResourceGroupId": String,
"SecurityGroupId": String,
"Tags": List
}
}
Propriedades
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
ClusterName |
String |
Sim |
Sim |
Nome do cluster. |
O nome deve ter de 2 a 128 caracteres e pode conter letras, dígitos, hifens (-) e sublinhados (_). |
|
SharedStorages |
List |
Sim |
Não |
Configurações de armazenamento compartilhado do cluster. |
Para mais informações, consulte Propriedades de SharedStorages. |
|
VSwitchId |
String |
Sim |
Não |
ID do vSwitch do cluster. |
Nenhuma. |
|
VpcId |
String |
Sim |
Não |
ID da Virtual Private Cloud (VPC) onde o cluster está localizado. |
Nenhuma. |
|
AdditionalPackages |
List |
Não |
Não |
Configurações adicionais de software para o cluster. |
É possível especificar até 10 conjuntos de configurações de software. Para mais informações, consulte Propriedades de AdditionalPackages. |
|
Addons |
List |
Não |
Não |
Configurações personalizadas de addons do cluster. |
Há suporte apenas para um addon. Para mais informações, consulte Propriedades de Addons. |
|
ClusterCredentials |
Map |
Não |
Não |
Credenciais de segurança do cluster. |
Para mais informações, consulte Propriedades de ClusterCredentials. |
|
ClusterMode |
String |
Não |
Não |
Modo de implantação do cluster. |
Valores válidos:
|
|
ClusterCategory |
String |
Não |
Não |
Edição do cluster. |
Valores válidos:
|
|
ClientVersion |
String |
Não |
Sim |
Versão do cliente do cluster. |
Por padrão, a versão mais recente é utilizada. |
|
ClusterCustomConfiguration |
Map |
Não |
Sim |
Script de pós-processamento do cluster. |
Para mais informações, consulte Propriedades de ClusterCustomConfiguration. |
|
ClusterDescription |
String |
Não |
Sim |
Descrição do cluster. |
A descrição deve ter de 2 a 128 caracteres e pode conter letras, dígitos, hifens (-) e sublinhados (_). |
|
DeletionProtection |
Boolean |
Não |
Sim |
Indica se a proteção contra exclusão está ativada para o cluster. |
Valores válidos:
|
|
IsEnterpriseSecurityGroup |
Boolean |
Não |
Não |
Indica se um grupo de segurança avançado deve ser utilizado. |
Valores válidos:
|
|
MaxCount |
Integer |
Não |
Sim |
Número máximo de nós de computação que o cluster pode gerenciar. |
Valores válidos: 0 a 5000. |
|
Manager |
Map |
Não |
Não |
Configurações do nó de gerenciamento do cluster. |
Para mais informações, consulte Propriedades de Manager. |
|
MaxCoreCount |
Integer |
Não |
Sim |
Número máximo de vCPUs disponíveis para os nós de computação no cluster. |
Valores válidos: 0 a 100000. |
|
Queues |
List |
Não |
Não |
Filas do cluster. |
É possível configurar até oito filas. Para mais informações, consulte Propriedades de Queues. |
|
ResourceGroupId |
String |
Não |
Não |
ID do grupo de recursos. |
Nenhuma. |
|
SecurityGroupId |
String |
Não |
Não |
ID do grupo de segurança ao qual o cluster pertence. |
Nenhuma. |
|
Tags |
List |
Não |
Sim |
Tags do cluster. |
Para mais informações, consulte Propriedades de Tags. |
Sintaxe de ClusterCredentials
"ClusterCredentials": {
"KeyPairName": String,
"Password": String
}
Propriedades de ClusterCredentials
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
KeyPairName |
String |
Não |
Não |
Nome do par de chaves. |
O nome deve ter de 2 a 128 caracteres. Deve começar com uma letra e não pode iniciar com |
|
Password |
String |
Não |
Não |
Senha do usuário root para fazer login no nó. |
A senha deve ter de 8 a 20 caracteres e conter pelo menos três dos seguintes tipos de caracteres: letras maiúsculas, letras minúsculas, dígitos e caracteres especiais. Os caracteres especiais incluem |
Sintaxe de AdditionalPackages
"AdditionalPackages": [
{
"Version": String,
"Name": String
}
]
Propriedades de AdditionalPackages
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Version |
String |
Sim |
Não |
Versão do software a ser instalado. |
Nenhuma. |
|
Name |
String |
Sim |
Não |
Nome do software a ser instalado. |
Nenhuma. |
Sintaxe de Addons
"Addons": [
{
"Version": String,
"ServicesSpec": String,
"ResourcesSpec": String,
"Name": String
}
]
Propriedades de Addons
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Version |
String |
Sim |
Não |
Versão do addon. |
Nenhuma. |
|
ServicesSpec |
String |
Não |
Não |
Configurações de serviço do addon. |
Exemplo:
|
|
ResourcesSpec |
String |
Não |
Não |
Configurações de recursos do addon. |
Exemplo:
|
|
Name |
String |
Sim |
Não |
Nome do addon. |
Nenhuma. |
Sintaxe de Manager
"Manager": {
"ManagerNode": Map,
"Scheduler": Map,
"DNS": Map,
"DirectoryService": Map
}
Propriedades de Manager
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
ManagerNode |
Map |
Não |
Não |
Configurações de hardware do nó de gerenciamento. |
Para mais informações, consulte Propriedades de ManagerNode. |
|
Scheduler |
Map |
Não |
Não |
Configurações do serviço de agendador. |
Para mais informações, consulte Propriedades de Scheduler. |
|
DNS |
Map |
Não |
Não |
Configurações do serviço de resolução de nomes de domínio (DNS). |
Para mais informações, consulte Propriedades de DNS. |
|
DirectoryService |
Map |
Não |
Não |
Configurações do serviço de conta de domínio. |
Para mais informações, consulte Propriedades de DirectoryService. |
Sintaxe de ManagerNode
"ManagerNode": {
"SystemDisk": Map,
"AutoRenewPeriod": Integer,
"EnableHT": Boolean,
"DataDisks": List,
"InstanceChargeType": String,
"AutoRenew": Boolean,
"ImageId": String,
"Period": Integer,
"InstanceType": String,
"PeriodUnit": String
}
Propriedades de ManagerNode
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
SystemDisk |
Map |
Sim |
Não |
Configurações do disco de sistema do nó. |
Para mais informações, consulte Propriedades de SystemDisk. |
|
AutoRenewPeriod |
Integer |
Não |
Não |
Período de renovação automática. |
Valores válidos:
Valor padrão: 1. |
|
EnableHT |
Boolean |
Não |
Não |
Indica se o hyper-threading está ativado para o nó. |
Valores válidos:
|
|
DataDisks |
List |
Não |
Não |
Discos de dados. |
Para mais informações, consulte Propriedades de DataDisks. É possível configurar até 16 discos de dados, indicados por N. |
|
InstanceChargeType |
String |
Não |
Não |
Método de faturamento do nó. |
Valores válidos:
Valor padrão: PostPaid. |
|
AutoRenew |
Boolean |
Não |
Não |
Indica se a renovação automática está ativada. |
Esta propriedade só tem efeito quando InstanceChargeType é definido como PrePaid. Valores válidos:
|
|
ImageId |
String |
Sim |
Não |
ID da imagem. |
Nenhuma. |
|
Period |
Integer |
Não |
Não |
Duração da assinatura do nó. |
A unidade da duração da assinatura do nó é especificada por PeriodUnit. Period deve ser especificado apenas quando InstanceChargeType é definido como PrePaid. Se DedicatedHostId for especificado, a duração da assinatura do nó não deve exceder a duração da assinatura do host dedicado. Valores válidos de Period:
|
|
InstanceType |
String |
Sim |
Não |
Tipo da instância Elastic Compute Service (ECS). |
Nenhuma. |
|
PeriodUnit |
String |
Não |
Não |
Unidade da duração da assinatura. |
Valores válidos:
|
Sintaxe de SystemDisk
"SystemDisk": {
"Category": String,
"Size": Integer,
"Level": String
}
Propriedades de SystemDisk
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Category |
String |
Sim |
Não |
Categoria do disco de sistema. |
Valores válidos:
|
|
Size |
Integer |
Sim |
Não |
Tamanho do disco de sistema. |
Unidade: GiB. Valores válidos:
|
|
Level |
String |
Não |
Não |
Nível de desempenho (PL) do ESSD. |
Valores válidos:
|
Sintaxe de DataDisks
"DataDisks": [
{
"Category": String,
"Size": Integer,
"DeleteWithInstance": Boolean,
"Level": String,
"MountDir": String
}
]
Propriedades de DataDisks
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Category |
String |
Sim |
Não |
Categoria do disco de dados. |
Valores válidos:
|
|
Size |
Integer |
Sim |
Não |
Tamanho do disco de dados. |
Unidade: GiB. Valores válidos:
|
|
DeleteWithInstance |
Boolean |
Não |
Não |
Indica se o disco de dados deve ser liberado quando a instância for liberada. |
Valores válidos:
Valor padrão: true. |
|
Level |
String |
Não |
Não |
PL do ESSD. |
Valores válidos:
|
|
MountDir |
String |
Não |
Não |
Diretório de montagem do disco de dados. |
O diretório de montagem deve começar com uma barra (/). |
Sintaxe de Scheduler
"Scheduler": {
"Type": String,
"Version": String
}
Propriedades de Scheduler
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Type |
String |
Não |
Não |
Tipo do serviço de agendador. |
Valores válidos:
|
|
Version |
String |
Não |
Não |
Versão do serviço de agendador. |
Nenhuma. |
Sintaxe de DNS
"DNS": {
"Type": String,
"Version": String
}
Propriedades de DNS
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Type |
String |
Não |
Não |
Tipo do serviço de DNS. |
Defina o valor como NIS. |
|
Version |
String |
Não |
Não |
Versão do serviço de DNS. |
Nenhuma. |
Sintaxe de DirectoryService
"DirectoryService": {
"Type": String,
"Version": String
}
Propriedades de DirectoryService
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Type |
String |
Não |
Não |
Tipo do serviço de conta de domínio. |
Defina o valor como NIS. |
|
Version |
String |
Não |
Não |
Versão do serviço de conta de domínio. |
Nenhuma. |
Sintaxe de SharedStorages
"SharedStorages": [
{
"MountDirectory": String,
"MountTargetDomain": String,
"ProtocolType": String,
"FileSystemId": String,
"MountOptions": String,
"NASDirectory": String
}
]
Propriedades de SharedStorages
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
FileSystemId |
String |
Sim |
Não |
ID do sistema de arquivos a ser montado. |
Nenhuma. |
|
MountTargetDomain |
String |
Sim |
Não |
Endereço do ponto de montagem do sistema de arquivos a ser montado. |
Nenhuma. |
|
MountDirectory |
String |
Não |
Não |
Diretório de montagem local do sistema de arquivos a ser montado. |
Nenhuma. |
|
MountOptions |
String |
Não |
Não |
Opções de montagem de armazenamento do sistema de arquivos a ser montado. |
Nenhuma. |
|
NASDirectory |
String |
Não |
Não |
Diretório de montagem remota do sistema de arquivos a ser montado. |
Nenhuma. |
|
ProtocolType |
String |
Não |
Não |
Tipo de protocolo do sistema de arquivos a ser montado. |
Valores válidos:
|
Sintaxe de ClusterCustomConfiguration
"ClusterCustomConfiguration": {
"Script": String,
"Args": String
}
Propriedades de ClusterCustomConfiguration
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Args |
String |
Não |
Sim |
Parâmetros de execução do script de pós-processamento após a instalação do cluster. |
Nenhuma. |
|
Script |
String |
Não |
Sim |
Endereço de download do script de pós-processamento após a instalação do cluster. |
Nenhuma. |
Sintaxe de Queues
"Queues": [
{
"VSwitchIds": List,
"ComputeNodes": List,
"InterConnect": String,
"MaxCount": Integer,
"KeepAliveNodes": List,
"HostnamePrefix": String,
"AllocationStrategy": String,
"EnableScaleIn": Boolean,
"MaxCountPerCycle": Integer,
"HostnameSuffix": String,
"RamRole": String,
"EnableScaleOut": Boolean,
"QueueName": String,
"InitialCount": Integer,
"MinCount": Integer
}
]
Propriedades de Queues
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
QueueName |
String |
Sim |
Não |
Nome da fila. |
O nome deve ter de 1 a 15 caracteres e pode conter letras, dígitos e pontos (.). |
|
AllocationStrategy |
String |
Não |
Não |
Política de dimensionamento automático para expansão da fila. |
Nenhuma. |
|
ComputeNodes |
List |
Não |
Não |
Configurações de hardware dos nós de computação na fila. |
É possível especificar até 10 conjuntos de configurações de hardware. Para mais informações, consulte Propriedades de ComputeNodes. |
|
EnableScaleIn |
Boolean |
Não |
Não |
Indica se o dimensionamento automático para redução da fila está ativado. |
Valores válidos:
|
|
EnableScaleOut |
Boolean |
Não |
Não |
Indica se o dimensionamento automático para expansão da fila está ativado. |
Valores válidos:
|
|
HostnamePrefix |
String |
Não |
Não |
Prefixo do nome de host dos nós de computação na fila. |
Nenhuma. |
|
HostnameSuffix |
String |
Não |
Não |
Sufixo do nome de host dos nós de computação na fila. |
Nenhuma. |
|
InterConnect |
String |
Não |
Não |
Tipo de rede entre os nós de computação na fila. |
Valores válidos:
|
|
InitialCount |
Integer |
Não |
Não |
Número inicial de nós de computação na fila. |
Valores válidos: 0 a 5000. |
|
KeepAliveNodes |
List |
Não |
Não |
Nós na fila com o recurso de proteção contra exclusão ativado. |
Valores válidos: 0 a 5000. |
|
MaxCount |
Integer |
Não |
Não |
Número máximo de nós de computação que a fila pode conter. |
Valores válidos: 0 a 5000. |
|
MaxCountPerCycle |
Integer |
Não |
Não |
Número máximo de nós de computação que podem ser adicionados à fila em cada operação de expansão. |
Valores válidos: 0 a 5000. |
|
MinCount |
Integer |
Não |
Não |
Número mínimo de nós de computação que a fila deve conter. |
Valores válidos: 0 a 5000. |
|
RamRole |
String |
Não |
Não |
Função do Resource Access Management (RAM) anexada aos nós de computação na fila. |
Nenhuma. |
|
VSwitchIds |
List |
Não |
Não |
vSwitches disponíveis para os nós de computação na fila. |
É possível configurar até cinco vSwitches. |
Sintaxe de ComputeNodes
"ComputeNodes": [
{
"SystemDisk": Map,
"EnableHT": Boolean,
"DataDisks": List,
"ImageId": String,
"SpotPriceLimit": Number,
"Duration": Integer,
"InstanceType": String,
"SpotStrategy": String
}
]
Propriedades de ComputeNodes
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
ImageId |
String |
Sim |
Não |
ID da imagem. |
Nenhuma. |
|
InstanceType |
String |
Sim |
Não |
Tipo da instância ECS. |
Nenhuma. |
|
SystemDisk |
Map |
Sim |
Não |
Configurações do disco de sistema do nó. |
Para mais informações, consulte Propriedades de SystemDisk. |
|
DataDisks |
List |
Não |
Não |
Discos de dados. |
É possível configurar até 16 discos de dados. Para mais informações, consulte Propriedades de DataDisks. |
|
Duration |
Integer |
Não |
Não |
Período de proteção de uma instância preemptível. |
Unidade: hora. Valor padrão: 1. Valores válidos:
O Alibaba Cloud envia um evento de sistema ECS para notificá-lo 5 minutos antes da liberação da instância. A cobrança de instâncias preemptíveis é feita por segundo. Recomendamos que você especifique um período de proteção adequado com base nos requisitos do seu negócio. |
|
EnableHT |
Boolean |
Não |
Não |
Indica se o hyper-threading está ativado para o nó. |
Valores válidos:
|
|
SpotPriceLimit |
Number |
Não |
Não |
Preço horário máximo de uma instância. |
O valor desta propriedade pode conter até três casas decimais. Esta propriedade tem efeito quando SpotStrategy é definido como SpotWithPriceLimit. |
|
SpotStrategy |
String |
Não |
Não |
Política de lance para uma instância de pagamento conforme o uso. |
Esta propriedade tem efeito quando InstanceChargeType é definido como PostPaid. Valores válidos:
Valor padrão: NoSpot. |
Sintaxe de Tags
"Tags": [
{
"Value": String,
"Key": String
}
]
Propriedades de Tags
|
Propriedade |
Tipo |
Obrigatório |
Editável |
Descrição |
Restrição |
|
Key |
String |
Sim |
Não |
Chave da tag. |
Nenhuma. |
|
Value |
String |
Não |
Não |
Valor da tag. |
Nenhuma. |
Valores de retorno
Fn::GetAtt
ClusterId: o ID do cluster.
Exemplos
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
VSwitchId:
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${ZoneId}
AssociationProperty: ALIYUN::VPC::VSwitch::VSwitchId
Type: String
Description:
en: The ID of the VSwitch used by the cluster
Required: true
SharedStorages:
AssociationPropertyMetadata:
Parameters:
MountDirectory:
Type: String
Description:
en: The local mount directory to mount the file system.
Required: false
MountTargetDomain:
Type: String
Description:
en: The mount target domain of the file system.
Required: true
ProtocolType:
Type: String
Description:
en: 'The protocol type of the file system. Valid values: NFS, SMB.'
AllowedValues:
- NFS
- SMB
Required: false
FileSystemId:
Type: String
Description:
en: The ID of the file system.
Required: true
MountOptions:
Type: String
Description:
en: The mount options of the file system.
Required: false
NASDirectory:
Type: String
Description:
en: Mounted filesystems require mounted remote directories.
Required: false
AssociationProperty: List[Parameters]
Type: Json
Description:
en: The list of shared storage configurations.
Required: true
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
en: The ID of the VPC used by the cluster.
Required: true
ClusterName:
Type: String
Description:
en: Cluster name. The length is from 2 to 128 characters, and it supports English, Chinese and numbers. You can include a dash (-) and an underscore (_).
Required: true
MinLength: 2
MaxLength: 128
Resources:
ClusterV2:
Type: ALIYUN::EHPC::ClusterV2
Properties:
VSwitchId:
Ref: VSwitchId
SharedStorages:
Ref: SharedStorages
VpcId:
Ref: VpcId
ClusterName:
Ref: ClusterName
Outputs:
ClusterId:
Description: Cluster Id.
Value:
Fn::GetAtt:
- ClusterV2
- ClusterId
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"VSwitchId": {
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${ZoneId}"
},
"AssociationProperty": "ALIYUN::VPC::VSwitch::VSwitchId",
"Type": "String",
"Description": {
"en": "The ID of the VSwitch used by the cluster"
},
"Required": true
},
"SharedStorages": {
"AssociationPropertyMetadata": {
"Parameters": {
"MountDirectory": {
"Type": "String",
"Description": {
"en": "The local mount directory to mount the file system."
},
"Required": false
},
"MountTargetDomain": {
"Type": "String",
"Description": {
"en": "The mount target domain of the file system."
},
"Required": true
},
"ProtocolType": {
"Type": "String",
"Description": {
"en": "The protocol type of the file system. Valid values: NFS, SMB."
},
"AllowedValues": [
"NFS",
"SMB"
],
"Required": false
},
"FileSystemId": {
"Type": "String",
"Description": {
"en": "The ID of the file system."
},
"Required": true
},
"MountOptions": {
"Type": "String",
"Description": {
"en": "The mount options of the file system."
},
"Required": false
},
"NASDirectory": {
"Type": "String",
"Description": {
"en": "Mounted filesystems require mounted remote directories."
},
"Required": false
}
}
},
"AssociationProperty": "List[Parameters]",
"Type": "Json",
"Description": {
"en": "The list of shared storage configurations."
},
"Required": true
},
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"en": "The ID of the VPC used by the cluster."
},
"Required": true
},
"ClusterName": {
"Type": "String",
"Description": {
"en": "Cluster name. The length is from 2 to 128 characters, and it supports English, Chinese and numbers. You can include a dash (-) and an underscore (_)."
},
"Required": true,
"MinLength": 2,
"MaxLength": 128
}
},
"Resources": {
"ClusterV2": {
"Type": "ALIYUN::EHPC::ClusterV2",
"Properties": {
"VSwitchId": {
"Ref": "VSwitchId"
},
"SharedStorages": {
"Ref": "SharedStorages"
},
"VpcId": {
"Ref": "VpcId"
},
"ClusterName": {
"Ref": "ClusterName"
}
}
}
},
"Outputs": {
"ClusterId": {
"Description": "Cluster Id.",
"Value": {
"Fn::GetAtt": [
"ClusterV2",
"ClusterId"
]
}
}
}
}