O resource ALIYUN::ECS::InstanceGroup cria um grupo de instâncias ECS com configurações idênticas.
Sintaxe
{
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"DedicatedHostId": String,
"ResourceGroupId": String,
"SystemDiskDescription": String,
"InstanceChargeType": String,
"RamRoleName": String,
"SystemDiskPerformanceLevel": String,
"ImageId": String,
"SystemDiskDiskName": String,
"Tags": List,
"HostName": String,
"LaunchTemplateName": String,
"VSwitchId": String,
"Period": Number,
"ZoneIds": List,
"LaunchTemplateId": String,
"DeletionProtection": Boolean,
"SecurityGroupIds": List,
"SecurityEnhancementStrategy": String,
"InternetChargeType": String,
"InstanceName": String,
"DeploymentSetId": String,
"SubscriptionDeletionForce": Boolean,
"InternetMaxBandwidthOut": Integer,
"VpcId": String,
"LaunchTemplateVersion": String,
"PeriodUnit": String,
"AutoReleaseTime": String,
"PrivateIpAddress": String,
"Description": String,
"DiskMappings": List,
"SystemDiskSize": Number,
"UserData": String,
"AutoRenew": String,
"Ipv6Addresses": List,
"MaxAmount": Integer,
"SystemDiskAutoSnapshotPolicyId": String,
"Ipv6AddressCount": Integer,
"NetworkType": String,
"SpotPriceLimit": String,
"InstanceType": String,
"AllocatePublicIP": Boolean,
"SpotStrategy": String,
"Password": String,
"PasswordInherit": Boolean,
"AutoRenewPeriod": Number,
"KeyPairName": String,
"IoOptimized": String,
"ZoneId": String,
"HpcClusterId": String,
"SecurityGroupId": String,
"SystemDiskCategory": String,
"EniMappings": List,
"SystemDiskProvisionedIops": Integer,
"SystemDiskBurstingEnabled": Boolean,
"SpotInterruptionBehavior": String,
"SpotDuration": Integer,
"UpdatePolicy": String,
"SystemDiskEncrypted": String,
"SystemDiskEncryptAlgorithm": String,
"SystemDiskStorageClusterId": String,
"SystemDiskKMSKeyId": String,
"CreditSpecification": String,
"PrivatePoolOptions": Map,
"StorageSetId": String,
"HttpTokens": String,
"HttpEndpoint": String,
"Tenancy": String,
"StorageSetPartitionNumber": Integer,
"DeploymentSetGroupNo": Integer,
"Affinity": String,
"UseAdditionalService": Boolean,
"ImageFamily": String,
"DeletionForce": Boolean,
"UniqueSuffix": Boolean,
"NetworkOptions": Map,
"CpuOptions": Map,
"NetworkInterfaceQueueNumber": Integer,
"HostNames": List,
"ImageOptions": Map,
"SecurityOptions": Map,
"SchedulerOptions": Map
}
}
Propriedades
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
InstanceType |
String |
Sim |
Sim |
Tipo de instância ECS. |
Para mais informações, consulte Famílias de instâncias. Nota
Este parâmetro atualiza instâncias existentes apenas quando UpdatePolicy está definido como ForAllInstances. Caso contrário, a atualização se aplica somente a novas instâncias. |
|
MaxAmount |
Integer |
Sim |
Sim |
Quantidade de instâncias ECS a serem criadas simultaneamente. |
Valores válidos: 1 a 1000. Nota
Ao atualizar uma pilha, se MaxAmount aumentar (ou diminuir), o número correspondente de instâncias ECS será adicionado (ou removido). Por exemplo, se MaxAmount mudar de 2 para 5, três novas instâncias ECS serão adicionadas. |
|
Affinity |
String |
Não |
Não |
Indica se uma instância ECS está associada a um Dedicated Host. |
Valores válidos:
|
|
AllocatePublicIP |
Boolean |
Não |
Não |
Indica se deve atribuir um endereço IP público. |
Se InternetMaxBandwidthOut for 0, nenhum endereço IP público será atribuído. Valores válidos:
|
|
AutoReleaseTime |
String |
Não |
Não |
Horário em que a instância ECS é liberada automaticamente. |
O horário deve seguir o formato ISO 8601, por exemplo |
|
AutoRenew |
String |
Não |
Sim |
Indica se deve ativar a renovação automática. |
Este parâmetro tem efeito apenas quando InstanceChargeType é PrePaid. Valores válidos:
Nota
Este parâmetro atualiza apenas novas instâncias ECS. |
|
AutoRenewPeriod |
Number |
Não |
Sim |
Duração de cada renovação automática. |
Este parâmetro é obrigatório quando AutoRenew é True. Valores válidos:
Nota
A atualização deste parâmetro aplica-se apenas a instâncias ECS recém-criadas. |
|
CpuOptions |
Map |
Não |
Não |
Propriedades relacionadas à CPU. |
Para mais informações, consulte Propriedades de CpuOptions. |
|
CreditSpecification |
String |
Não |
Sim |
Modo de operação para instâncias com capacidade de burst. |
Valores válidos:
|
|
DedicatedHostId |
String |
Não |
Não |
ID do Dedicated Host. |
Nenhuma |
|
DeletionForce |
Boolean |
Não |
Não |
Indica se deve forçar a exclusão da instância. |
Valor padrão: false. |
|
DeletionProtection |
Boolean |
Não |
Sim |
Indica se deve proteger a instância contra liberação pelo console ou pela API DeleteInstance. |
Valores válidos:
|
|
DeploymentSetGroupNo |
Integer |
Não |
Não |
Se seu conjunto de implantação usar a política AvailabilityGroup, especifique o número do grupo para esta instância no conjunto de implantação. |
Valores válidos: 1 a 7. |
|
DeploymentSetId |
String |
Não |
Sim |
ID do conjunto de implantação. |
A atualização deste parâmetro aplica-se apenas a instâncias ECS recém-criadas. |
|
Description |
String |
Não |
Sim |
Descrição. |
Comprimento máximo: 256 caracteres. Nota
Alterações neste parâmetro aplicam-se apenas a instâncias ECS recém-criadas. |
|
DiskMappings |
List |
Não |
Sim |
Discos de dados para a instância ECS. |
É possível criar até 16 discos de dados. Modificar este parâmetro não afeta instâncias existentes. Novas instâncias usam o valor atualizado. Para mais informações, consulte Propriedades de DiskMappings. Nota
Alterações neste parâmetro aplicam-se apenas a instâncias ECS recém-criadas. |
|
EniMappings |
List |
Não |
Sim |
Elastic Network Interfaces (ENIs) anexadas à instância. |
É possível anexar até uma ENI à instância. Para mais informações, consulte Propriedades de EniMappings. |
|
HostName |
String |
Não |
Não |
Nome do host. |
Comprimento mínimo: 2 caracteres. Um ponto (.) ou hífen (-) não pode ser o primeiro ou último caractere. Pontos ou hífens consecutivos não são permitidos. Para mais informações, consulte Parâmetros de solicitação. |
|
HostNames |
List |
Não |
Não |
Especifica nomes de host diferentes para múltiplas instâncias. |
Nenhuma |
|
HpcClusterId |
String |
Não |
Sim |
ID do cluster HPC ao qual a instância pertence. |
A atualização deste parâmetro afeta apenas instâncias ECS recém-criadas. |
|
HttpEndpoint |
String |
Não |
Sim |
Indica se deve ativar o acesso aos metadados da instância. |
Valores válidos:
Nota
Para modos de acesso a metadados, consulte Metadados da instância. |
|
HttpTokens |
String |
Não |
Sim |
Indica se deve impor IMDSv2 (modo reforçado) para acessar metadados da instância. |
Valores válidos:
Nota
Para modos de acesso a metadados, consulte Metadados da instância. |
|
ImageFamily |
String |
Não |
Não |
Nome da família de imagens. |
Use este parâmetro para iniciar instâncias com a imagem disponível mais recente na família de imagens especificada.
Nota
Para informações sobre famílias de imagens oficiais do Alibaba Cloud, consulte Imagens públicas. |
|
ImageId |
String |
Não |
Sim |
ID da imagem usada para iniciar a instância ECS. Valores válidos incluem imagens públicas, imagens personalizadas e imagens do Alibaba Cloud Marketplace. |
Você pode especificar um ID de imagem pública usando correspondência aproximada em vez do ID completo. Exemplos:
Para mais informações, consulte Parâmetros de solicitação. Nota
Este parâmetro atualiza instâncias existentes apenas quando UpdatePolicy está definido como ForAllInstances. Caso contrário, a atualização se aplica somente a novas instâncias. |
|
ImageOptions |
Map |
Não |
Não |
Propriedades relacionadas à imagem. |
Para mais informações, consulte Propriedades de ImageOptions. |
|
InstanceChargeType |
String |
Não |
Sim |
Método de faturamento da instância. |
Valores válidos:
Nota
A atualização deste parâmetro aplica-se apenas a novas instâncias ECS. |
|
InstanceName |
String |
Não |
Sim |
Nome da instância. |
Comprimento máximo: 128 caracteres. Caracteres válidos incluem letras, dígitos, sublinhados (_), pontos (.) e hífens (-). Use o formato |
|
InternetChargeType |
String |
Não |
Sim |
Método de faturamento para largura de banda de rede pública. |
Valores válidos:
Nota
Este parâmetro atualiza instâncias existentes apenas quando UpdatePolicy está definido como ForAllInstances. Caso contrário, a atualização se aplica somente a novas instâncias. |
|
InternetMaxBandwidthOut |
Integer |
Não |
Sim |
Largura de banda pública de saída máxima. |
Valores válidos: 0 a 100. Unidade: Mbit/s. Valor padrão: 0. Nota
Este parâmetro atualiza instâncias existentes apenas quando UpdatePolicy está definido como ForAllInstances. Caso contrário, a atualização se aplica somente a novas instâncias. |
|
IoOptimized |
String |
Não |
Não |
Indica se deve criar uma instância otimizada para I/O. |
Valores válidos:
|
|
Ipv6AddressCount |
Integer |
Não |
Sim |
Número de endereços IPv6 gerados aleatoriamente para a ENI. |
Não é possível especificar Ipv6Addresses e Ipv6AddressCount simultaneamente. Nota
Este parâmetro atualiza apenas novas instâncias ECS. |
|
Ipv6Addresses |
List |
Não |
Sim |
Endereços IPv6 para a ENI. |
É possível especificar até um endereço IPv6. Alterações não afetam instâncias existentes. Não é possível especificar Ipv6Addresses e Ipv6AddressCount simultaneamente. Nota
Este parâmetro atualiza apenas novas instâncias ECS. |
|
KeyPairName |
String |
Não |
Sim |
Nome do par de chaves vinculado à instância ECS. |
Se a instância executar Windows, este parâmetro será ignorado. Valor padrão: vazio. Se KeyPairName for especificado, a senha ainda será definida na instância, mas o login baseado em senha será desativado para sistemas Linux. Nota
Alterações neste parâmetro afetam apenas instâncias ECS recém-criadas. |
|
LaunchTemplateId |
String |
Não |
Sim |
ID do modelo de inicialização. |
Nenhuma |
|
LaunchTemplateName |
String |
Não |
Sim |
Nome do modelo de inicialização. |
Nenhuma |
|
LaunchTemplateVersion |
String |
Não |
Sim |
Versão do modelo de inicialização. |
Se nenhuma versão for especificada, a versão padrão será usada. |
|
NetworkInterfaceQueueNumber |
Integer |
Não |
Não |
Número de filas para a ENI primária. |
Observação:
|
|
NetworkOptions |
Map |
Não |
Não |
Propriedades relacionadas à rede. |
Para mais informações, consulte Propriedades de NetworkOptions. |
|
NetworkType |
String |
Não |
Não |
Tipo de rede da instância ECS. |
Valores válidos:
|
|
Password |
String |
Não |
Sim |
Senha de login para a instância ECS. |
Comprimento: 8 a 30 caracteres. Deve conter pelo menos três dos seguintes: letras maiúsculas, letras minúsculas, dígitos e caracteres especiais. Caracteres especiais suportados: Se você especificar Password, chame a API via HTTPS para evitar vazamentos de senha. Nota
Este parâmetro atualiza instâncias existentes apenas quando UpdatePolicy está definido como ForAllInstances. Caso contrário, a atualização se aplica somente a novas instâncias. |
|
PasswordInherit |
Boolean |
Não |
Não |
Indica se deve usar a senha pré-configurada na imagem. |
Valores válidos:
Nota
Ao usar este parâmetro, Password deve estar vazio. Certifique-se também de que a imagem possui uma senha pré-configurada. |
|
Period |
Number |
Não |
Sim |
Duração da assinatura. |
Este parâmetro tem efeito e é obrigatório apenas quando InstanceChargeType é PrePaid. Se DedicatedHostId for especificado, o valor não pode exceder a duração da assinatura do Dedicated Host.
Nota
Este parâmetro atualiza apenas novas instâncias ECS. |
|
PeriodUnit |
String |
Não |
Sim |
Unidade de duração da assinatura. |
Valores válidos:
Nota
A atualização deste parâmetro aplica-se apenas a instâncias ECS recém-criadas. |
|
PrivateIpAddress |
String |
Não |
Não |
Endereço IP privado da instância. |
Para instâncias do tipo VPC, selecione o endereço IP privado no bloco CIDR livre do vSwitch. Nota
Se PrivateIpAddress estiver definido, MaxAmount deve ser 1. |
|
PrivatePoolOptions |
Map |
Não |
Não |
Opções de capacidade de pool privado para iniciar instâncias. |
Para mais informações, consulte Propriedades de PrivatePoolOptions. |
|
RamRoleName |
String |
Não |
Sim |
Nome da função RAM da instância. |
Você pode chamar ListRoles para consultar nomes de funções RAM da instância. |
|
ResourceGroupId |
String |
Não |
Sim |
ID do grupo de recursos onde a instância reside. |
Nenhuma |
|
SchedulerOptions |
Map |
Não |
Não |
Propriedades relacionadas ao agendamento. |
Para mais informações, consulte Propriedades de SchedulerOptions. |
|
SecurityEnhancementStrategy |
String |
Não |
Não |
Indica se deve ativar o reforço de segurança. |
Valores válidos:
|
|
SecurityGroupId |
String |
Não |
Não |
ID do grupo de segurança para a nova instância. Instâncias no mesmo grupo de segurança podem se comunicar entre si. |
Não é possível especificar SecurityGroupId e SecurityGroupIds simultaneamente. |
|
SecurityGroupIds |
List |
Não |
Não |
Lista de IDs de grupos de segurança para a nova instância. |
Não é possível especificar SecurityGroupId e SecurityGroupIds simultaneamente. Para mais informações, consulte Limites. |
|
SecurityOptions |
Map |
Não |
Não |
Propriedades relacionadas a sistema confiável. |
Para mais informações, consulte Propriedades de SecurityOptions. |
|
SpotDuration |
Integer |
Não |
Não |
Duração da reserva para instâncias spot. |
Valores válidos: 0 a 6. Unidade: horas. Valores válidos:
|
|
SpotInterruptionBehavior |
String |
Não |
Não |
Comportamento de interrupção para instâncias spot. |
Apenas Terminate (padrão) é suportado, o que libera a instância imediatamente. |
|
SpotPriceLimit |
String |
Não |
Não |
Preço horário máximo para a instância. |
Precisão máxima: três casas decimais. Este parâmetro tem efeito apenas quando SpotStrategy é SpotWithPriceLimit. |
|
SpotStrategy |
String |
Não |
Sim |
Estratégia de lance para instâncias de pagamento conforme o uso. |
Este parâmetro tem efeito apenas quando InstanceChargeType é PostPaid. Valores válidos:
|
|
StorageSetId |
String |
Não |
Não |
ID do conjunto de armazenamento. |
Nenhuma |
|
StorageSetPartitionNumber |
Integer |
Não |
Não |
Número máximo de partições no conjunto de armazenamento. |
Valores válidos: maior ou igual a 2. |
|
SubscriptionDeletionForce |
Boolean |
Não |
Não |
Esta opção aplica-se apenas a instâncias de assinatura. Se true, a instância converte para pagamento conforme o uso antes da exclusão. Se false, a exclusão forçada não ocorre. Esta ação gera cobranças adicionais. Use com cautela. |
Nenhuma |
|
SystemDiskAutoSnapshotPolicyId |
String |
Não |
Sim |
ID da política de snapshot automático para o disco do sistema. |
Nenhuma |
|
SystemDiskBurstingEnabled |
Boolean |
Não |
Sim |
Indica se o bursting está ativado para o disco do sistema. |
Valores válidos:
|
|
SystemDiskCategory |
String |
Não |
Sim |
Categoria do disco do sistema. |
Valores válidos:
Nota
Este parâmetro atualiza instâncias existentes apenas quando UpdatePolicy está definido como ForAllInstances. Caso contrário, a atualização se aplica somente a novas instâncias. |
|
SystemDiskDescription |
String |
Não |
Sim |
Descrição do disco do sistema. |
A atualização deste parâmetro aplica-se apenas a instâncias ECS recém-criadas. |
|
SystemDiskDiskName |
String |
Não |
Sim |
Nome do disco do sistema. |
A atualização deste parâmetro aplica-se apenas a novas instâncias ECS. |
|
SystemDiskEncryptAlgorithm |
String |
Não |
Sim |
Algoritmo de criptografia para o disco do sistema. |
Valores válidos:
|
|
SystemDiskEncrypted |
String |
Não |
Sim |
Indica se o disco do sistema é criptografado. |
Valores válidos:
|
|
SystemDiskKMSKeyId |
String |
Não |
Sim |
ID da chave KMS para o disco do sistema. |
Nenhuma |
|
SystemDiskPerformanceLevel |
String |
Não |
Sim |
Ao criar um SSD empresarial para uso como disco do sistema, você pode definir o nível de desempenho do disco. |
Valores válidos:
Para orientações sobre como selecionar um nível de desempenho ESSD, consulte SSD Empresarial. |
|
SystemDiskProvisionedIops |
Integer |
Não |
Sim |
IOPS provisionado para o disco do sistema. |
Nenhuma |
|
SystemDiskSize |
Number |
Não |
Sim |
Tamanho do disco do sistema. |
Valores válidos: 40 a 500. Unidade: GiB. Se você usar uma imagem personalizada, o tamanho do disco do sistema deve ser maior que o tamanho da imagem. Nota
Este parâmetro atualiza instâncias existentes apenas quando UpdatePolicy está definido como ForAllInstances. Caso contrário, a atualização se aplica somente a novas instâncias. |
|
SystemDiskStorageClusterId |
String |
Não |
Sim |
ID do cluster de armazenamento em bloco dedicado para o disco do sistema. |
Nenhuma |
|
Tags |
List |
Não |
Sim |
Tags personalizadas. |
Máximo: 20 tags. Formato: Para mais informações, consulte Propriedades de Tags. |
|
Tenancy |
String |
Não |
Não |
Indica se deve criar a instância em um Dedicated Host. |
Valores válidos:
|
|
UniqueSuffix |
Boolean |
Não |
Não |
Indica se deve adicionar sufixos sequenciais a |
Sufixos sequenciais começam em 001 e incrementam até 999. Valores válidos:
Se Para mais informações, consulte Definir em lote nomes de instância ou hostnames sequenciais. |
|
UpdatePolicy |
String |
Não |
Sim |
Estratégia de atualização. |
Valores válidos:
|
|
UseAdditionalService |
Boolean |
Não |
Não |
Indica se deve usar configurações de sistema VM fornecidas pelo Alibaba Cloud (Windows: NTP, KMS; Linux: NTP, YUM). |
Valores válidos:
|
|
UserData |
String |
Não |
Sim |
Dados de usuário passados ao criar a instância ECS. |
Tamanho máximo: 16 KB. Não codifique o conteúdo em Base64. Escape caracteres especiais. Nota
Este parâmetro atualiza instâncias existentes apenas quando UpdatePolicy está definido como ForAllInstances. Caso contrário, a atualização se aplica somente a novas instâncias. |
|
VpcId |
String |
Não |
Não |
ID da virtual private cloud (VPC). |
Nenhuma |
|
VSwitchId |
String |
Não |
Não |
ID do vSwitch. |
Nenhuma |
|
ZoneId |
String |
Não |
Não |
ID da zona. |
Nenhuma |
|
ZoneIds |
List |
Não |
Não |
Lista de zonas de disponibilidade. |
Nenhuma |
Sintaxe de DiskMappings
"DiskMappings": [
{
"Category": String,
"DiskName": String,
"Description": String,
"Device": String,
"SnapshotId": String,
"Size": String,
"Encrypted": String,
"KMSKeyId": String,
"PerformanceLevel": String,
"AutoSnapshotPolicyId": String,
"ProvisionedIops": Integer,
"BurstingEnabled": Boolean,
"StorageClusterId": String
}
]
Propriedades de DiskMappings
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
Size |
String |
Sim |
Não |
Tamanho do disco de dados. |
Unidade: GiB. |
|
Category |
String |
Não |
Não |
Categoria do disco de dados. |
Valores válidos:
Para instâncias otimizadas para I/O, o valor padrão é cloud_efficiency. Para instâncias não otimizadas para I/O, o valor padrão é cloud. |
|
DiskName |
String |
Não |
Não |
Nome do disco de dados. |
Comprimento: 2 a 128 caracteres. Deve começar com uma letra ou caractere chinês. Não pode começar com |
|
Description |
String |
Não |
Não |
Descrição do disco de dados. |
Comprimento: 2 a 256 caracteres. Não pode começar com |
|
Device |
String |
Não |
Não |
Destino de montagem. |
Nenhuma |
|
SnapshotId |
String |
Não |
Não |
ID do snapshot. |
Nenhuma |
|
Encrypted |
String |
Não |
Não |
Indica se o disco de dados está criptografado. |
Valores válidos:
|
|
KMSKeyId |
String |
Não |
Não |
ID da chave KMS para o disco de dados. |
Nenhuma |
|
AutoSnapshotPolicyId |
String |
Não |
Não |
ID da política de snapshot automático. |
Nenhuma |
|
PerformanceLevel |
String |
Não |
Não |
Nível de desempenho para um ESSD usado como disco de dados. |
Valores válidos:
Para obter orientações sobre como selecionar um nível de desempenho de ESSD, consulte SSD empresarial. |
|
ProvisionedIops |
Integer |
Não |
Não |
IOPS provisionados. |
Nenhuma |
|
BurstingEnabled |
Boolean |
Não |
Não |
Indica se o bursting está ativado. |
Valores válidos:
|
|
StorageClusterId |
String |
Não |
Não |
ID do cluster de armazenamento em bloco dedicado. |
Nenhuma |
Sintaxe de Tags
"Tags": [
{
"Value": String,
"Key": String
}
]
Propriedades de Tags
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
Key |
String |
Sim |
Não |
Chave da tag. |
Comprimento: 1 a 128 caracteres. Não pode começar com |
|
Value |
String |
Não |
Não |
Valor da tag. |
Comprimento: 0 a 128 caracteres. Não pode começar com |
Sintaxe de EniMappings
"EniMappings": [
{
"SecurityGroupId": String,
"VSwitchId": String,
"Description": String,
"NetworkInterfaceName": String,
"PrimaryIpAddress": String,
"InstanceType": String,
"Ipv6AddressCount": Integer,
"NetworkInterfaceTrafficMode": String,
"Ipv6Addresses": List,
"QueueNumber": Integer,
"SecurityGroupIds": List,
"NetworkInterfaceId": String,
"DeleteOnRelease": Boolean,
"NetworkCardIndex": Integer,
"QueuePairNumber": Integer
}
]
Propriedades de EniMappings
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
SecurityGroupId |
String |
Não |
Sim |
ID do grupo de segurança. |
O grupo de segurança deve pertencer à mesma VPC. |
|
VSwitchId |
String |
Não |
Não |
ID do vSwitch. |
Nenhuma |
|
Description |
String |
Não |
Sim |
Descrição da ENI. |
Comprimento: 2 a 256 caracteres. Não pode começar com |
|
NetworkInterfaceName |
String |
Não |
Sim |
Nome da ENI. |
Comprimento: 2 a 128 caracteres. Deve começar com uma letra ou caractere chinês. Não pode começar com |
|
PrimaryIpAddress |
String |
Não |
Não |
Endereço IP privado principal da ENI. |
O IP especificado deve ser um endereço livre no bloco CIDR do vSwitch. Se nenhum IP for especificado, um endereço livre será atribuído aleatoriamente a partir do vSwitch. |
|
InstanceType |
String |
Não |
Não |
Tipo da ENI. |
É possível configurar até duas ENIs. Ao configurar uma única ENI, escolha entre primária ou secundária. Para duas ENIs, configure obrigatoriamente uma primária e uma secundária. Valores válidos:
|
|
Ipv6AddressCount |
Integer |
Não |
Não |
Quantidade de endereços IPv6 gerados aleatoriamente para a ENI principal. |
Valores válidos: 1 a 10. Observações:
|
|
NetworkInterfaceTrafficMode |
String |
Não |
Não |
Modo de comunicação do controlador de interface de rede (NIC). |
Valores válidos:
Nota
A quantidade de ENIs com RDMA ativado não pode exceder o limite da família de instâncias. Para mais informações, consulte Famílias de instâncias. |
|
Ipv6Addresses |
List |
Não |
Não |
Um ou mais endereços IPv6 para a ENI principal. |
É possível especificar até 10 endereços IPv6. Observações:
|
|
QueueNumber |
Integer |
Não |
Não |
Número de filas para a ENI. |
Observações:
|
|
SecurityGroupIds |
List |
Não |
Não |
Um ou mais IDs de grupos de segurança para a ENI. |
Observações:
|
|
NetworkInterfaceId |
String |
Não |
Não |
ID da ENI anexada à instância. |
Este parâmetro aplica-se apenas a ENIs secundárias. Após especificar uma ENI secundária existente, não é possível configurar outros parâmetros de criação de ENI. |
|
DeleteOnRelease |
Boolean |
Não |
Não |
Indica se a ENI deve ser mantida ao liberar a instância. |
Valores válidos:
|
|
NetworkCardIndex |
Integer |
Não |
Não |
Índice da placa de rede física. |
|
|
QueuePairNumber |
Integer |
Não |
Não |
Número de filas para a ENI RDMA. |
Este campo é do tipo Long. Pode ocorrer perda de precisão durante a serialização/desserialização. Garanta que o valor não exceda 9007199254740991. |
Sintaxe de PrivatePoolOptions
"PrivatePoolOptions": [
{
"Id": String,
"MatchCriteria": String
}
]
Propriedades de PrivatePoolOptions
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
Id |
String |
Não |
Não |
ID do pool privado. Corresponde ao ID de um Elastic Capacity Service ou Reserved Capacity Service. |
Nenhuma |
|
MatchCriteria |
String |
Não |
Não |
Quando o Elastic Capacity Service ou Reserved Capacity Service é ativado, ele cria capacidade de pool privado para iniciar a instância. |
Valores válidos:
Em qualquer um dos cenários a seguir, a opção de capacidade de pool privado para inicialização da instância só pode ser definida como
|
Sintaxe de NetworkOptions
"NetworkOptions": {
"EnableJumboFrame": Boolean
}
Propriedades de NetworkOptions
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
EnableJumboFrame |
Boolean |
Não |
Não |
Indica se os jumbo frames devem ser ativados para a instância. |
Valores válidos:
Valor padrão: true. Nota
Apenas alguns tipos de instância da geração 8 e posteriores suportam jumbo frames. Para mais informações, consulte Jumbo frames. |
Sintaxe de CpuOptions
"CpuOptions": {
"ThreadsPerCore": Integer,
"Core": Integer
}
Propriedades de CpuOptions
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
ThreadsPerCore |
Integer |
Não |
Não |
Número de threads de CPU. |
Contagem de vCPU = |
|
Core |
Integer |
Não |
Não |
Número de núcleos de CPU. |
Este parâmetro não aceita valores personalizados. Use apenas o valor padrão. Valor padrão: consulte Alterar opções de CPU. |
Sintaxe de ImageOptions
"ImageOptions": {
"LoginAsNonRoot": Boolean
}
Propriedades de ImageOptions
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
LoginAsNonRoot |
Boolean |
Não |
Não |
Indica se as instâncias iniciadas com esta imagem suportam login como usuário ecs-user. |
Valores válidos:
|
Sintaxe de SecurityOptions
"SecurityOptions": {
"TrustedSystemMode": String
}
Propriedades de SecurityOptions
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrições |
|
TrustedSystemMode |
String |
Não |
Não |
Modo do sistema confiável. |
Valor válido: vTPM. O modo de sistema confiável é compatível com as famílias de instâncias g7, c7 e r7, além das famílias de instâncias com segurança aprimorada g7t, c7t e r7t. Defina este parâmetro ao criar uma instância ECS pertencente a uma dessas famílias. Se você utilizar o Alibaba Cloud Trusted System, defina este parâmetro como vTPM. Isso permite que o Alibaba Cloud Trusted System realize uma verificação de confiança durante a inicialização da instância. Não é necessário definir este parâmetro caso você não utilize o Alibaba Cloud Trusted System. No entanto, se a instância ECS criada usar o modo de computação confidencial de enclave (SecurityOptions.ConfidentialComputingMode=Enclave), o sistema confiável também será ativado para essa instância. Para criar uma instância ECS com sistema confiável via OpenAPI, chame a operação RunInstances. A operação CreateInstance não oferece suporte ao parâmetro SecurityOptions.TrustedSystemMode. Nota
Se você especificar a instância como confiável durante a criação, só poderá usar imagens compatíveis com o sistema confiável ao substituir o disco do sistema. Para obter mais informações sobre o sistema confiável, consulte Visão geral dos recursos de computação confiável. |
Sintaxe de SchedulerOptions
"SchedulerOptions": {
"ManagedPrivateSpaceId": String,
"DedicatedHostClusterId": String
}
Propriedades de SchedulerOptions
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
DedicatedHostClusterId |
String |
Não |
Não |
ID do cluster de host dedicado onde a instância ECS reside. O sistema seleciona automaticamente um host dedicado desse cluster para implantar a instância. |
Nota
Este parâmetro só tem efeito quando Ao especificar simultaneamente um Dedicated Host (
Consulte os IDs de clusters de hosts dedicados por meio de DescribeDedicatedHostClusters. |
|
ManagedPrivateSpaceId |
String |
Não |
Não |
ID do pool privado de recursos gerenciados. |
Nenhuma |
Valores de retorno
Fn::GetAtt
InstanceIds: Os IDs das instâncias ECS. São identificadores exclusivos para acessar as instâncias, gerados pelo sistema.
PrivateIps: Lista de endereços IP privados atribuídos a instâncias do tipo VPC. Esta propriedade aplica-se apenas quando NetworkType é
vpc. Exemplo: Um array JSON formatado como["172.16.XX.XX", "172.16.XX.XX", … "172.16.XX.XX"], contendo até 100 endereços IP separados por vírgulas (,).InnerIps: Lista de endereços IP privados atribuídos a instâncias do tipo clássico. Esta propriedade aplica-se apenas quando NetworkType é
classic. Exemplo: Um array JSON formatado como["10.1.XX.XX", "10.1.XX.XX", …, "10.1.XX.XX"], contendo até 100 endereços IP separados por vírgulas (,).PublicIps: Lista de endereços IP públicos atribuídos a instâncias do tipo clássico. Esta propriedade aplica-se apenas quando NetworkType é
classic. Exemplo: Um array JSON formatado como["42.1.XX.XX", "42.1.XX.XX", … "42.1.XX.XX"], contendo até 100 endereços IP separados por vírgulas (,).HostNames: Lista de nomes de host para todas as instâncias.
OrderId: Lista de IDs de pedido das instâncias.
ZoneIds: Os IDs das zonas onde as instâncias estão implantadas.
RelatedOrderIds: Lista de IDs de pedidos relacionados às instâncias ECS criadas.
-
Ipv6AddressIds: Lista de IDs de endereços IPv6 das instâncias ECS criadas.
NotaO tipo de retorno é uma lista bidimensional. Se uma instância não possuir endereços IPv6, o elemento correspondente na lista estará vazio. Caso nenhuma instância tenha endereço IP, o valor de retorno será nulo.
-
Ipv6Addresses: Lista de endereços IPv6 das instâncias ECS criadas.
NotaO tipo de retorno é uma lista bidimensional. Se uma instância não possuir endereços IPv6, o elemento correspondente na lista estará vazio. Caso nenhuma instância tenha endereços IPv6, o valor de retorno será nulo.
Exemplos
Cenário 1: Criar duas instâncias ECS com login sem senha.
ROSTemplateFormatVersion: '2015-09-01'
Description: Creates VPC ECS instance
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
en: Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud
zh-cn: Existing virtual private cloud instance ID
Label:
en: VPC ID
zh-cn: Virtual private cloud instance ID
VSwitchZoneId:
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Type: String
Description:
zh-cn: vSwitch zone
en: VSwitch Availability Zone
Label:
zh-cn: vSwitch zone
en: VSwitch Availability Zone
VSwitchId:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${VSwitchZoneId}
Type: String
Description:
en: Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query
zh-cn: Existing business network switch instance ID
Label:
en: VSwitch ID
zh-cn: Switch instance ID
SecurityGroupId:
Type: String
AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
AssociationPropertyMetadata:
VpcId: ${VpcId}
Description:
en: Please search the business security group ID starting with(sg-xxx)from console-ECS-Network & Security
zh-cn: Existing business security group instance ID
Label:
en: Business Security Group ID
zh-cn: Business security group ID
InstanceType:
Type: String
Description:
zh-cn: Specify specifications available in the vSwitch zone.
en: Fill in the specifications that can be used under the VSwitch availability zone.
Label:
zh-cn: Instance type
en: Instance Type
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ${VSwitchZoneId}
SystemDiskCategory:
Type: String
Label:
en: System Disk Type
zh-cn: System disk type
Description:
en: System Disk Type
zh-cn: System disk type
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
ZoneId: ${VSwitchZoneId}
InstanceType: ${InstanceType}
Resources:
OpsEcsInstance:
Type: ALIYUN::ECS::InstanceGroup
Properties:
MaxAmount: 1
HostName: OpsEcsInstance
UserData:
Fn::Sub:
- |
#!/bin/bash
RootPassword=${RootPassword}
ProdIP=${ProdIP}
SSHConfig() {
echo '[ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh
echo 'while read line;do' >> /tmp/auto_ssh.sh
echo ' ip=`echo $line | cut -d " " -f1`' >> /tmp/auto_ssh.sh
echo ' user_name=`echo $line | cut -d " " -f2`' >> /tmp/auto_ssh.sh
echo ' pass_word=`echo $line | cut -d " " -f3`' >> /tmp/auto_ssh.sh
echo 'expect <<EOF' >> /tmp/auto_ssh.sh
echo ' spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh
echo ' expect {' >> /tmp/auto_ssh.sh
echo ' "yes/no" { send "yes\n";exp_continue}' >> /tmp/auto_ssh.sh
echo ' "password" { send "$pass_word\n"}' >> /tmp/auto_ssh.sh
echo ' }' >> /tmp/auto_ssh.sh
echo ' expect eof' >> /tmp/auto_ssh.sh
echo 'EOF' >> /tmp/auto_ssh.sh
echo 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh
}
SetHostsConfig() {
echo "`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}" >> /tmp/host_ip.txt
echo "${ProdIP} root ${RootPassword}" >> /tmp/host_ip.txt
sh /tmp/auto_ssh.sh
}
main() {
yum install -y expect
SSHConfig
SetHostsConfig
rm -rf /tmp/host_ip.txt
}
main
- ProdIP:
Fn::Select:
- '0'
- Fn::GetAtt:
- ProdEcsInstance
- PrivateIps
RootPassword: Admin@123!
VpcId:
Ref: VpcId
SecurityGroupId:
Ref: SecurityGroupId
VSwitchId:
Ref: VSwitchId
ImageId: centos_7
AllocatePublicIP: false
InstanceType:
Ref: InstanceType
SystemDiskSize: 40
SystemDiskCategory:
Ref: SystemDiskCategory
Password: Admin@123!
ProdEcsInstance:
Type: ALIYUN::ECS::InstanceGroup
Properties:
MaxAmount: 1
HostName: ProdEcsInstance
SystemDiskCategory:
Ref: SystemDiskCategory
VpcId:
Ref: VpcId
SecurityGroupId:
Ref: SecurityGroupId
SystemDiskSize: 40
ImageId: centos_7
VSwitchId:
Ref: VSwitchId
Password: Admin@123!
InstanceType:
Ref: InstanceType
AllocatePublicIP: false
Outputs: {}
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Creates VPC ECS instance",
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"en": "Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud",
"zh-cn": "Existing virtual private cloud instance ID"
},
"Label": {
"en": "VPC ID",
"zh-cn": "Virtual private cloud instance ID"
}
},
"VSwitchZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Type": "String",
"Description": {
"zh-cn": "vSwitch zone",
"en": "VSwitch Availability Zone"
},
"Label": {
"zh-cn": "vSwitch zone",
"en": "VSwitch Availability Zone"
}
},
"VSwitchId": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${VSwitchZoneId}"
},
"Type": "String",
"Description": {
"en": "Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query",
"zh-cn": "Existing business network switch instance ID"
},
"Label": {
"en": "VSwitch ID",
"zh-cn": "Switch instance ID"
}
},
"SecurityGroupId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}"
},
"Description": {
"en": "Please search the business security group ID starting with(sg-xxx)from console-ECS-Network & Security",
"zh-cn": "Existing business security group instance ID"
},
"Label": {
"en": "Business Security Group ID",
"zh-cn": "Business security group ID"
}
},
"InstanceType": {
"Type": "String",
"Description": {
"zh-cn": "Specify specifications available in the vSwitch zone.",
"en": "Fill in the specifications that can be used under the VSwitch availability zone."
},
"Label": {
"zh-cn": "Instance type",
"en": "Instance Type"
},
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "${VSwitchZoneId}"
}
},
"SystemDiskCategory": {
"Type": "String",
"Label": {
"en": "System Disk Type",
"zh-cn": "System disk type"
},
"Description": {
"en": "System Disk Type",
"zh-cn": "System disk type"
},
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"ZoneId": "${VSwitchZoneId}",
"InstanceType": "${InstanceType}"
}
}
},
"Resources": {
"OpsEcsInstance": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"MaxAmount": 1,
"HostName": "OpsEcsInstance",
"UserData": {
"Fn::Sub": [
"#!/bin/bash\nRootPassword=${RootPassword}\nProdIP=${ProdIP}\nSSHConfig() {\necho '[ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P \"\" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh\necho 'while read line;do' >> /tmp/auto_ssh.sh\necho ' ip=`echo $line | cut -d \" \" -f1`' >> /tmp/auto_ssh.sh\necho ' user_name=`echo $line | cut -d \" \" -f2`' >> /tmp/auto_ssh.sh\necho ' pass_word=`echo $line | cut -d \" \" -f3`' >> /tmp/auto_ssh.sh\necho 'expect <<EOF' >> /tmp/auto_ssh.sh\necho ' spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh\necho ' expect {' >> /tmp/auto_ssh.sh\necho ' \"yes/no\" { send \"yes\\n\";exp_continue}' >> /tmp/auto_ssh.sh\necho ' \"password\" { send \"$pass_word\\n\"}' >> /tmp/auto_ssh.sh\necho ' }' >> /tmp/auto_ssh.sh\necho ' expect eof' >> /tmp/auto_ssh.sh\necho 'EOF' >> /tmp/auto_ssh.sh\necho 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh\n}\nSetHostsConfig() {\necho \"`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}\" >> /tmp/host_ip.txt\necho \"${ProdIP} root ${RootPassword}\" >> /tmp/host_ip.txt\nsh /tmp/auto_ssh.sh\n}\nmain() {\nyum install -y expect\nSSHConfig\nSetHostsConfig\nrm -rf /tmp/host_ip.txt\n}\nmain\n",
{
"ProdIP": {
"Fn::Select": [
"0",
{
"Fn::GetAtt": [
"ProdEcsInstance",
"PrivateIps"
]
}
]
},
"RootPassword": "Admin@123!"
}
]
},
"VpcId": {
"Ref": "VpcId"
},
"SecurityGroupId": {
"Ref": "SecurityGroupId"
},
"VSwitchId": {
"Ref": "VSwitchId"
},
"ImageId": "centos_7",
"AllocatePublicIP": false,
"InstanceType": {
"Ref": "InstanceType"
},
"SystemDiskSize": 40,
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"Password": "Admin@123!"
}
},
"ProdEcsInstance": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"MaxAmount": 1,
"HostName": "ProdEcsInstance",
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"VpcId": {
"Ref": "VpcId"
},
"SecurityGroupId": {
"Ref": "SecurityGroupId"
},
"SystemDiskSize": 40,
"ImageId": "centos_7",
"VSwitchId": {
"Ref": "VSwitchId"
},
"Password": "Admin@123!",
"InstanceType": {
"Ref": "InstanceType"
},
"AllocatePublicIP": false
}
}
},
"Outputs": {}
}
Cenário 2: Criar instâncias ECS em lote e atualizar configurações.
Sobre UpdatePolicy
Após criar um grupo de instâncias ECS usando ALIYUN::ECS::InstanceGroup, utilize a propriedade UpdatePolicy para controlar como as atualizações de configuração são aplicadas às instâncias existentes.
Sintaxe de UpdatePolicy
"UpdatePolicy": {
"RollingUpdateForOrigInstances": Map
}
Propriedades de UpdatePolicy
|
Nome da propriedade |
Tipo |
Obrigatório |
Atualizável |
Descrição |
Restrição |
|
RollingUpdateForOrigInstances |
Map |
Não |
Sim |
Estratégia de controle para atualizar instâncias ECS existentes. Esta política não se aplica a novas instâncias ECS. |
Sintaxe de RollingUpdateForOrigInstances
"RollingUpdateForOrigInstances": {
"MaxBatchSize": Integer,
"PauseTime": Integer
}
Propriedades de RollingUpdateForOrigInstances
|
Nome da propriedade |
Tipo |
Obrigatório |
Permite atualizações |
Descrição |
Restrição |
|
MaxBatchSize |
Integer |
Sim |
Sim |
Quantidade de instâncias ECS atualizadas por lote. |
Valores válidos: 1 a 1000. |
|
PauseTime |
Integer |
Não |
Sim |
Tempo de pausa entre lotes, em segundos. O padrão é 0. |
Valores válidos: 0 a 3600. |
Crie um grupo de cinco instâncias ECS com configurações idênticas usando o modelo a seguir.
ROSTemplateFormatVersion: '2015-09-01'
Resources:
Instance:
Type: ALIYUN::ECS::InstanceGroup
Properties:
MaxAmount: 5
InstanceType: xxxx
ImageId: centos
VpcId: vpc-2xxxx
VSwitchId: vsw-xxxx
SecurityGroupId: sg-xxxxx
Password: Ros1gregrge2345
InstanceChargeType: PostPaid
NetworkType: vpc
SystemDiskCategory: xxx
SystemDiskSize: 100
InternetMaxBandwidthOut: 5
AllocatePublicIP: true
{
"ROSTemplateFormatVersion": "2015-09-01",
"Resources": {
"Instance": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"MaxAmount": 5,
"InstanceType": "xxxx",
"ImageId": "centos",
"VpcId": "vpc-2xxxx",
"VSwitchId": "vsw-xxxx",
"SecurityGroupId": "sg-xxxxx",
"Password": "Ros1gregrge2345",
"InstanceChargeType": "PostPaid",
"NetworkType": "vpc",
"SystemDiskCategory": "xxx",
"SystemDiskSize": 100,
"InternetMaxBandwidthOut": 5,
"AllocatePublicIP": true
}
}
}
}
Após a criação bem-sucedida da pilha, atualize as configurações das instâncias ECS existentes utilizando a propriedade UpdatePolicy.
ROSTemplateFormatVersion: '2015-09-01'
Resources:
Instance:
Type: ALIYUN::ECS::InstanceGroup
UpdatePolicy:
RollingUpdateForOrigInstances:
MaxBatchSize: 2
PauseTime: 0
Properties:
MaxAmount: 10
InstanceType: xxxx
ImageId: centos
VpcId: vpc-2xxxx
VSwitchId: vsw-xxxx
SecurityGroupId: sg-xxxxx
Password: Ros1gregrge2345
InstanceChargeType: PostPaid
NetworkType: vpc
SystemDiskCategory: xxx
SystemDiskSize: 100
InternetMaxBandwidthOut: 5
AllocatePublicIP: true
{
"ROSTemplateFormatVersion": "2015-09-01",
"Resources": {
"Instance": {
"Type": "ALIYUN::ECS::InstanceGroup",
"UpdatePolicy": {
"RollingUpdateForOrigInstances": {
"MaxBatchSize": 2,
"PauseTime": 0
}
},
"Properties": {
"MaxAmount": 10,
"InstanceType": "xxxx",
"ImageId": "centos",
"VpcId": "vpc-2xxxx",
"VSwitchId": "vsw-xxxx",
"SecurityGroupId": "sg-xxxxx",
"Password": "Ros1gregrge2345",
"InstanceChargeType": "PostPaid",
"NetworkType": "vpc",
"SystemDiskCategory": "xxx",
"SystemDiskSize": 100,
"InternetMaxBandwidthOut": 5,
"AllocatePublicIP": true
}
}
}
}
Com MaxBatchSize definido como 2, as cinco instâncias originais são atualizadas em três lotes (2, 2 e 1) durante a atualização da pilha. As cinco instâncias adicionais são criadas simultaneamente.
Cenário 3: Criar duas instâncias ECS e associá-las a um grupo de servidores do Classic Load Balancer (CLB).
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建SLB与2个ECS实例,配置网络与安全组,将ECS实例加入SLB后端。
en: Create an SLB (Server Load Balancer) with two ECS (Elastic Compute Service) instances, configure the network and security groups, then add the ECS instances to the SLB backend.
Parameters:
SystemDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
InstanceType: ${ECSInstanceType}
ZoneId: ${ZoneId}
Type: String
Label:
zh-cn: 系统盘类型
en: System Disk Category
AddressType:
Default: internet
Label:
zh-cn: 网络类型
en: Address Type
Type: String
Description:
zh-cn: 负载均衡实例的网络类型,可选值:internet:公网访问,intranet:内网访问。
en: 'Network type of LoadBalancer. Optional value: Internet: public network access, Intranet: Intranet access.'
AllowedValues:
- internet
- intranet
ECSInternetChargeType:
AssociationPropertyMetadata:
LocaleKey: InternetChargeType
Description:
zh-cn: 访问公网计费方式。
en: The charge type of public internet ECS instance.
Default: PayByTraffic
Label:
zh-cn: 公网付费方式
en: Internet Charge Type
AllowedValues:
- PayByBandwidth
- PayByTraffic
Type: String
ECSInstanceType:
AssociationProperty: ALIYUN::ECS::Instance::ECSInstanceType
AssociationPropertyMetadata:
ZoneId: ${ZoneId}
Type: String
Description:
zh-cn: <font color='blue'><b>1.选择机型前请先确认当前可用区下该机型是否有货,部分机型需要提前报备</b></font><br><font color='blue'><b>2.可选机型列表</font><br></b></font>[ecs.n1.large <font color='green'>2vCPU 4GiB</font>]<br></b>[ecs.n1.xlarge <font color='green'>8vCPU 16GiB</font>]<br></b>[ecs.n1.3xlarge <font color='green'>16vCPU 32GiB</font>]
en: <font color='blue'><b>1.Before selecting the model please confirm that the current available zone under the model is in stock, some models need to be reported in advance</b></font><br><font color='blue'><b>2.List of optional models</font><br></b></font>[ecs.n1.large <font color='green'>2vCPU 4GiB</font>]<br></b>[ecs.n1.xlarge <font color='green'>8vCPU 16GiB</font>]<br></b>[ecs.n1.3xlarge <font color='green'>16vCPU 32GiB</font>]
Label:
zh-cn: 实例规格
en: Instance Type
Password:
ConstraintDescription:
zh-cn: 长度8-30,必须包含大写字母, 小写字母, 数字, 特殊符号三种;特殊字符包括:()`~!@#$%^&*_-+=|{}[]:;' <>,.?/
en: 'Length 8-30, must contain upper case letters, lower case letters, Numbers, special symbols three; special characters include: ()`~!@#$%^&*_-+=|{}[]:;''<>,.?/'
Description:
zh-cn: 长度8-30,必须包含大写字母, 小写字母, 数字, 特殊符号三个;<br>特殊字符包括:()`~!@#$%^&*_-+=|{}[]:;'<>,.?/
en: The 8-30 long login password of instance, consists of the uppercase, lowercase letter and number. <br> special characters include()`~!@#$%^&*_-+=|{}[]:;'<>,.?/
MinLength: '8'
Label:
zh-cn: 实例密码
en: Instance Password
AllowedPattern: '[0-9A-Za-z\_\-&:;''<>,=%`~!@#\(\)\$\^\*\+\|\{\}\[\]\.\?\/]+$'
NoEcho: true
MaxLength: '30'
Type: String
ImageId:
Default: centos_7_04_64_20G_alibase_201701015.vhd
AssociationProperty: ALIYUN::ECS::Image::ImageId
AssociationPropertyMetadata:
InstanceType: ${ECSInstanceType}
SupportedImageOwnerAlias:
- system
- self
- others
Type: String
Label:
zh-cn: 镜像ID
en: Image ID
Bandwidth:
Description:
zh-cn: 固定带宽计费方式的公网类型实例的带宽峰值。
en: The bandwidth peak of a public network type instance of fixed bandwidth billing.
Default: 1
MaxValue: 1000
MinValue: 1
Label:
zh-cn: 带宽峰值
en: The Peak Bandwidth
Type: Number
SLBInternetChargeType:
AssociationPropertyMetadata:
LocaleKey: InternetChargeType
Description:
zh-cn: 公网类型实例的付费方式。
en: The charge type of public internet SLB instance.
Default: paybytraffic
Label:
zh-cn: 公网付费方式
en: Internet Charge Type
AllowedValues:
- paybybandwidth
- paybytraffic
Type: String
LoadBalancerSpec:
Default: slb.s1.small
Type: String
Description:
zh-cn: 实例规格,详见:</b><a href='https://www.alibabacloud.com/help/document_detail/85939.html' target='_blank'><b><font color='blue'>性能保障型</b></font></a>
en: Instance specifications, see detail:</b><a href='https://www.alibabacloud.com/help/doc-detail/85939.html' target='_blank'><b><font color='blue'>Performance support type</b></font></a>
Label:
zh-cn: 实例规格
en: Instance Specification
ZoneId:
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
Type: String
Description:
zh-cn: 可用区ID,需确认所选可用区下是否支持ECS, VPC, VSwitch等资源。
en: The available zone ID, you should confirm the zone support ECS, VPC, VSwitch or not.
Label:
zh-cn: 可用区ID
en: Zone ID
Outputs:
BackendServerInstanceId:
Description:
zh-cn: 创建ECS的实例IDs
en: The instance IDs of create EcsInstanceGroup
Value:
Fn::GetAtt:
- EcsInstanceGroup
- InstanceIds
BackendServerPublicIp:
Description:
zh-cn: 创建ECS的实例公共IPs。
en: The instance public IPs of create EcsInstanceGroup.
Value:
Fn::GetAtt:
- EcsInstanceGroup
- PublicIps
SlbIpAddress:
Description:
zh-cn: 负载均衡器的IP地址。
en: The IP address of the load balancer.
Value:
Fn::GetAtt:
- LoadBalancer
- IpAddress
LoadBalancerId:
Description:
zh-cn: 已创建负载平衡的ID。
en: The ID of load balance created.
Value:
Fn::GetAtt:
- LoadBalancer
- LoadBalancerId
Resources:
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
VpcId:
Ref: Vpc
SecurityGroupName: MySecurityGroup
Attachment:
Type: ALIYUN::SLB::BackendServerAttachment
Properties:
BackendServers:
- ServerId:
Fn::Select:
- '0'
- Fn::GetAtt:
- EcsInstanceGroup
- InstanceIds
Weight: 100
- ServerId:
Fn::Select:
- '1'
- Fn::GetAtt:
- EcsInstanceGroup
- InstanceIds
Weight: 100
LoadBalancerId:
Ref: LoadBalancer
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
CidrBlock: 192.168.0.0/16
EcsInstanceGroup:
Type: ALIYUN::ECS::InstanceGroup
Properties:
SystemDiskCategory:
Ref: SystemDiskCategory
VpcId:
Fn::GetAtt:
- Vpc
- VpcId
SecurityGroupId:
Fn::GetAtt:
- SecurityGroup
- SecurityGroupId
ImageId:
Ref: ImageId
IoOptimized: optimized
InternetChargeType:
Ref: ECSInternetChargeType
VSwitchId:
Ref: VSwitch
Password:
Ref: Password
InstanceType:
Ref: ECSInstanceType
MaxAmount: 2
VSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
VpcId:
Ref: Vpc
CidrBlock: 192.168.1.0/24
ZoneId:
Ref: ZoneId
LoadBalancer:
Type: ALIYUN::SLB::LoadBalancer
Properties:
InternetChargeType:
Ref: SLBInternetChargeType
Bandwidth:
Ref: Bandwidth
AddressType:
Ref: AddressType
LoadBalancerSpec:
Ref: LoadBalancerSpec
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- ZoneId
- ECSInternetChargeType
- ECSInstanceType
- ImageId
- SystemDiskCategory
- Password
Label:
default:
zh-cn: 云服务器
en: ECS
- Parameters:
- LoadBalancerSpec
- AddressType
- SLBInternetChargeType
- Bandwidth
Label:
default:
zh-cn: 负载均衡
en: SLB
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建SLB与2个ECS实例,配置网络与安全组,将ECS实例加入SLB后端。",
"en": "Create an SLB (Server Load Balancer) with two ECS (Elastic Compute Service) instances, configure the network and security groups, then add the ECS instances to the SLB backend."
},
"Parameters": {
"SystemDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"InstanceType": "${ECSInstanceType}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Label": {
"zh-cn": "系统盘类型",
"en": "System Disk Category"
}
},
"AddressType": {
"Default": "internet",
"Label": {
"zh-cn": "网络类型",
"en": "Address Type"
},
"Type": "String",
"Description": {
"zh-cn": "负载均衡实例的网络类型,可选值:internet:公网访问,intranet:内网访问。",
"en": "Network type of LoadBalancer. Optional value: Internet: public network access, Intranet: Intranet access."
},
"AllowedValues": [
"internet",
"intranet"
]
},
"ECSInternetChargeType": {
"AssociationPropertyMetadata": {
"LocaleKey": "InternetChargeType"
},
"Description": {
"zh-cn": "访问公网计费方式。",
"en": "The charge type of public internet ECS instance."
},
"Default": "PayByTraffic",
"Label": {
"zh-cn": "公网付费方式",
"en": "Internet Charge Type"
},
"AllowedValues": [
"PayByBandwidth",
"PayByTraffic"
],
"Type": "String"
},
"ECSInstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::ECSInstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Description": {
"zh-cn": "<font color='blue'><b>1.选择机型前请先确认当前可用区下该机型是否有货,部分机型需要提前报备</b></font><br><font color='blue'><b>2.可选机型列表</font><br></b></font>[ecs.n1.large <font color='green'>2vCPU 4GiB</font>]<br></b>[ecs.n1.xlarge <font color='green'>8vCPU 16GiB</font>]<br></b>[ecs.n1.3xlarge <font color='green'>16vCPU 32GiB</font>]",
"en": "<font color='blue'><b>1.Before selecting the model please confirm that the current available zone under the model is in stock, some models need to be reported in advance</b></font><br><font color='blue'><b>2.List of optional models</font><br></b></font>[ecs.n1.large <font color='green'>2vCPU 4GiB</font>]<br></b>[ecs.n1.xlarge <font color='green'>8vCPU 16GiB</font>]<br></b>[ecs.n1.3xlarge <font color='green'>16vCPU 32GiB</font>]"
},
"Label": {
"zh-cn": "实例规格",
"en": "Instance Type"
}
},
"Password": {
"ConstraintDescription": {
"zh-cn": "长度8-30,必须包含大写字母, 小写字母, 数字, 特殊符号三种;特殊字符包括:()`~!@#$%^&*_-+=|{}[]:;' <>,.?/",
"en": "Length 8-30, must contain upper case letters, lower case letters, Numbers, special symbols three; special characters include: ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/"
},
"Description": {
"zh-cn": "长度8-30,必须包含大写字母, 小写字母, 数字, 特殊符号三个;<br>特殊字符包括:()`~!@#$%^&*_-+=|{}[]:;'<>,.?/",
"en": "The 8-30 long login password of instance, consists of the uppercase, lowercase letter and number. <br> special characters include()`~!@#$%^&*_-+=|{}[]:;'<>,.?/"
},
"MinLength": "8",
"Label": {
"zh-cn": "实例密码",
"en": "Instance Password"
},
"AllowedPattern": "[0-9A-Za-z\\_\\-&:;'<>,=%`~!@#\\(\\)\\$\\^\\*\\+\\|\\{\\}\\[\\]\\.\\?\\/]+$",
"NoEcho": true,
"MaxLength": "30",
"Type": "String"
},
"ImageId": {
"Default": "centos_7_04_64_20G_alibase_201701015.vhd",
"AssociationProperty": "ALIYUN::ECS::Image::ImageId",
"AssociationPropertyMetadata": {
"InstanceType": "${ECSInstanceType}",
"SupportedImageOwnerAlias": [
"system",
"self",
"others"
]
},
"Type": "String",
"Label": {
"zh-cn": "镜像ID",
"en": "Image ID"
}
},
"Bandwidth": {
"Description": {
"zh-cn": "固定带宽计费方式的公网类型实例的带宽峰值。",
"en": "The bandwidth peak of a public network type instance of fixed bandwidth billing."
},
"Default": 1,
"MaxValue": 1000,
"MinValue": 1,
"Label": {
"zh-cn": "带宽峰值",
"en": "The Peak Bandwidth"
},
"Type": "Number"
},
"SLBInternetChargeType": {
"AssociationPropertyMetadata": {
"LocaleKey": "InternetChargeType"
},
"Description": {
"zh-cn": "公网类型实例的付费方式。",
"en": "The charge type of public internet SLB instance."
},
"Default": "paybytraffic",
"Label": {
"zh-cn": "公网付费方式",
"en": "Internet Charge Type"
},
"AllowedValues": [
"paybybandwidth",
"paybytraffic"
],
"Type": "String"
},
"LoadBalancerSpec": {
"Default": "slb.s1.small",
"Type": "String",
"Description": {
"zh-cn": "实例规格,详见:</b><a href='https://www.alibabacloud.com/help/document_detail/85939.html' target='_blank'><b><font color='blue'>性能保障型</b></font></a>",
"en": "Instance specifications, see detail:</b><a href='https://www.alibabacloud.com/help/doc-detail/85939.html' target='_blank'><b><font color='blue'>Performance support type</b></font></a>"
},
"Label": {
"zh-cn": "实例规格",
"en": "Instance Specification"
}
},
"ZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
"Type": "String",
"Description": {
"zh-cn": "可用区ID,需确认所选可用区下是否支持ECS, VPC, VSwitch等资源。",
"en": "The available zone ID, you should confirm the zone support ECS, VPC, VSwitch or not."
},
"Label": {
"zh-cn": "可用区ID",
"en": "Zone ID"
}
}
},
"Outputs": {
"BackendServerInstanceId": {
"Description": {
"zh-cn": "创建ECS的实例IDs",
"en": "The instance IDs of create EcsInstanceGroup"
},
"Value": {
"Fn::GetAtt": [
"EcsInstanceGroup",
"InstanceIds"
]
}
},
"BackendServerPublicIp": {
"Description": {
"zh-cn": "创建ECS的实例公共IPs。",
"en": "The instance public IPs of create EcsInstanceGroup."
},
"Value": {
"Fn::GetAtt": [
"EcsInstanceGroup",
"PublicIps"
]
}
},
"SlbIpAddress": {
"Description": {
"zh-cn": "负载均衡器的IP地址。",
"en": "The IP address of the load balancer."
},
"Value": {
"Fn::GetAtt": [
"LoadBalancer",
"IpAddress"
]
}
},
"LoadBalancerId": {
"Description": {
"zh-cn": "已创建负载平衡的ID。",
"en": "The ID of load balance created."
},
"Value": {
"Fn::GetAtt": [
"LoadBalancer",
"LoadBalancerId"
]
}
}
},
"Resources": {
"SecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"VpcId": {
"Ref": "Vpc"
},
"SecurityGroupName": "MySecurityGroup"
}
},
"Attachment": {
"Type": "ALIYUN::SLB::BackendServerAttachment",
"Properties": {
"BackendServers": [
{
"ServerId": {
"Fn::Select": [
"0",
{
"Fn::GetAtt": [
"EcsInstanceGroup",
"InstanceIds"
]
}
]
},
"Weight": 100
},
{
"ServerId": {
"Fn::Select": [
"1",
{
"Fn::GetAtt": [
"EcsInstanceGroup",
"InstanceIds"
]
}
]
},
"Weight": 100
}
],
"LoadBalancerId": {
"Ref": "LoadBalancer"
}
}
},
"Vpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"CidrBlock": "192.168.0.0/16"
}
},
"EcsInstanceGroup": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"VpcId": {
"Fn::GetAtt": [
"Vpc",
"VpcId"
]
},
"SecurityGroupId": {
"Fn::GetAtt": [
"SecurityGroup",
"SecurityGroupId"
]
},
"ImageId": {
"Ref": "ImageId"
},
"IoOptimized": "optimized",
"InternetChargeType": {
"Ref": "ECSInternetChargeType"
},
"VSwitchId": {
"Ref": "VSwitch"
},
"Password": {
"Ref": "Password"
},
"InstanceType": {
"Ref": "ECSInstanceType"
},
"MaxAmount": 2
}
},
"VSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VpcId": {
"Ref": "Vpc"
},
"CidrBlock": "192.168.1.0/24",
"ZoneId": {
"Ref": "ZoneId"
}
}
},
"LoadBalancer": {
"Type": "ALIYUN::SLB::LoadBalancer",
"Properties": {
"InternetChargeType": {
"Ref": "SLBInternetChargeType"
},
"Bandwidth": {
"Ref": "Bandwidth"
},
"AddressType": {
"Ref": "AddressType"
},
"LoadBalancerSpec": {
"Ref": "LoadBalancerSpec"
}
}
}
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"ZoneId",
"ECSInternetChargeType",
"ECSInstanceType",
"ImageId",
"SystemDiskCategory",
"Password"
],
"Label": {
"default": {
"zh-cn": "云服务器",
"en": "ECS"
}
}
},
{
"Parameters": [
"LoadBalancerSpec",
"AddressType",
"SLBInternetChargeType",
"Bandwidth"
],
"Label": {
"default": {
"zh-cn": "负载均衡",
"en": "SLB"
}
}
}
]
}
}
}
Para mais exemplos, consulte Modelos públicos contendo este recurso.