Modifica as propriedades do grupo de dimensionamento, como os números máximo, mínimo ou esperado de instâncias, sem recriar o grupo.
Ajuste propriedades do grupo de dimensionamento, como limites de quantidade de instâncias, configurações de dimensionamento e políticas de remoção, sem precisar recriar o grupo.
Observações de uso
-
Não é possível modificar os seguintes parâmetros:
RegionId
-
LoadBalancerId
NotaPara modificar as instâncias do Server Load Balancer, chame as operações AttachLoadBalancers e DetachLoadBalancers.
-
DBInstanceId
NotaPara modificar as instâncias do RDS, chame as operações AttachDBInstances e DetachDBInstances.
O grupo de dimensionamento deve estar no estado Active ou Inactive.
Ativar uma nova configuração de dimensionamento não afeta as instâncias ECS ou ECI em execução criadas a partir de uma configuração anterior.
Se o valor de MaxSize for reduzido para abaixo da quantidade atual de instâncias, o Auto Scaling remove instâncias até que a quantidade seja igual a MaxSize.
Caso MinSize seja aumentado para acima da quantidade atual de instâncias, o Auto Scaling adiciona instâncias até que a quantidade seja igual a MinSize.
Quando DesiredCapacity é alterado, o Auto Scaling adiciona ou remove instâncias até que a quantidade corresponda ao novo valor.
Experimente agora
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
Action |
String |
Sim |
ModifyScalingGroup |
Defina como ModifyScalingGroup. |
|
ScalingGroupId |
String |
Sim |
asg-bp1ffogfdauy0jw0**** |
ID do grupo de dimensionamento. |
|
ScalingGroupName |
String |
Não |
scalinggroup**** |
Nome do grupo de dimensionamento. Deve ser exclusivo dentro de uma região. Comprimento: 2 a 64 caracteres. Deve começar com uma letra, dígito ou caractere chinês. Pode conter sublinhados (_), hífens (-) e pontos (.). |
|
MinSize |
Integer |
Não |
1 |
Quantidade mínima de instâncias no grupo de dimensionamento. O Auto Scaling cria instâncias quando a quantidade fica abaixo deste valor. Nota
|
|
MaxSize |
Integer |
Não |
99 |
Quantidade máxima de instâncias no grupo de dimensionamento. O Auto Scaling remove instâncias quando a quantidade excede este valor. O intervalo de valores de MaxSize depende do seu uso do Auto Scaling. Acesse o Quota Center para visualizar a cota de Número máximo de instâncias em um grupo de dimensionamento. Por exemplo, se a cota para o Número máximo de instâncias em um grupo de dimensionamento for 2000, o intervalo de valores de |
|
DefaultCooldown |
Integer |
Não |
600 |
Período de resfriamento após a conclusão de uma atividade de dimensionamento. Valores válidos: 0 a 86400. Unidade: segundos. Durante esse período, nenhuma atividade adicional de dimensionamento acionada por tarefas baseadas em eventos do CloudMonitor será executada. |
|
RemovalPolicy.1 |
String |
Não |
OldestScalingConfiguration |
Primeira política de remoção de instâncias. Valores válidos:
Nota
A source de configuração de instância mencionada em OldestScalingConfiguration refere-se a uma configuração de dimensionamento ou a um modelo de inicialização. CustomPolicy só pode ser definida como a primeira política de remoção. Se você definir essa política, também deverá especificar o parâmetro CustomPolicyARN. |
|
RemovalPolicy.2 |
String |
Não |
NewestInstance |
Segunda política de remoção de instâncias. Valores válidos:
|
|
RemovalPolicy.3 |
String |
Não |
OldestInstance |
Terceira política de remoção de instâncias. Valores válidos:
Nota
A source de configuração de instância mencionada em OldestScalingConfiguration refere-se a uma configuração de dimensionamento ou a um modelo de inicialização. |
|
ActiveScalingConfigurationId |
String |
Não |
asc-bp17pelvl720x5ub**** |
ID da configuração de dimensionamento ativa. |
|
HealthCheckType |
String |
Não |
ECS |
Modo de verificação de integridade. Valores válidos:
Valor padrão: ECS. Nota
Para ativar tanto as verificações de integridade da instância quanto as do balanceador de carga, use o parâmetro |
|
LaunchTemplateId |
String |
Não |
lt-m5e3ofjr1zn1aw7**** |
ID do modelo de inicialização. O grupo de dimensionamento usa este modelo para criar instâncias. |
|
LaunchTemplateVersion |
String |
Não |
Default |
Versão do modelo de inicialização. Valores válidos:
|
|
OnDemandBaseCapacity |
Integer |
Não |
30 |
Quantidade mínima de instâncias sob demanda no grupo de dimensionamento. Valores válidos: 0 a 1000. Instâncias sob demanda são criadas primeiro até que este limiar seja atingido. Quando o parâmetro |
|
OnDemandPercentageAboveBaseCapacity |
Integer |
Não |
20 |
Porcentagem de instâncias sob demanda entre as instâncias que excedem OnDemandBaseCapacity. Valores válidos: 0 a 100. Quando o parâmetro |
|
SpotInstanceRemedy |
Boolean |
Não |
true |
Indica se deve haver reposição de instâncias spot. Se ativado, quando uma instância spot estiver prestes a ser recuperada, o grupo de dimensionamento cria uma nova instância para substituí-la. |
|
CompensateWithOnDemand |
Boolean |
Não |
true |
Quando o
|
|
SpotInstancePools |
Integer |
Não |
5 |
Quantidade de pools de tipos de instância spot disponíveis. O grupo de dimensionamento distribui instâncias spot entre esses pools para otimização de custos. Valores válidos: 0 a 10. Quando o parâmetro |
|
DesiredCapacity |
Integer |
Não |
5 |
Quantidade esperada de instâncias no grupo de dimensionamento. O valor deve estar entre MinSize e MaxSize. Definir isso ativa o recurso de quantidade esperada de instâncias. Nota
Se você desativar e depois reativar o recurso de quantidade esperada de instâncias, deverá definir o valor de |
|
GroupDeletionProtection |
Boolean |
Não |
true |
Indica se a proteção contra exclusão deve ser ativada para o grupo de dimensionamento. Valores válidos:
|
|
MultiAZPolicy |
String |
Não |
PRIORITY |
Política de dimensionamento para um grupo de dimensionamento multizona. Valores válidos:
|
|
VSwitchIds.N |
String |
Não |
vsw-bp1oo2a7isyrb8igf**** |
IDs dos vSwitches. Valores válidos de N: 1 a 5. Eficaz apenas para grupos de dimensionamento do tipo VPC. Os vSwitches especificados devem pertencer à mesma VPC do grupo de dimensionamento. Os vSwitches podem estar em zonas diferentes. A prioridade segue ordem crescente (1 = mais alta). Se a criação de instância falhar em uma zona, o sistema tenta a próxima zona por prioridade. |
|
LaunchTemplateOverride.N.InstanceType |
String |
Não |
ecs.c5.xlarge |
Tipo de instância que substitui aquele no modelo de inicialização, permitindo dimensionamento baseado em capacidade. Especifique este parâmetro e LaunchTemplateOverride.N.WeightedCapacity. Valores válidos de N: 1 a 20. É possível estender o modelo de inicialização para suportar N tipos de instância. Nota
Este parâmetro é eficaz apenas quando o parâmetro LaunchTemplateId especifica um modelo de inicialização. Consulte Famílias de instâncias para ver os tipos de instância ECS disponíveis. |
|
LaunchTemplateOverride.N.WeightedCapacity |
Integer |
Não |
4 |
Peso (capacidade) do tipo de instância especificado por LaunchTemplateOverride.N.InstanceType. N deve corresponder ao parâmetro de tipo de instância. Um peso maior significa que menos instâncias desse tipo são necessárias para atender à capacidade esperada. Defina pesos com base em métricas de desempenho, como contagem de vCPU e tamanho de memória. Por exemplo:
Para atender à capacidade esperada, o grupo de dimensionamento expandirá duas instâncias ecs.c5.xlarge. Nota
Durante uma expansão, a capacidade do grupo de dimensionamento não pode exceder a soma da capacidade máxima (MaxSize) e o maior peso de um tipo de instância. Valores válidos para WeightedCapacity: 1 a 500. |
|
LaunchTemplateOverride.N.SpotPriceLimit |
Float |
Não |
0.025 |
Preço máximo de lance para o tipo de instância especificado por Nota
Este parâmetro é eficaz apenas quando o parâmetro |
|
AzBalance |
Boolean |
Não |
false |
Indica se a capacidade do grupo de dimensionamento deve ser distribuída uniformemente entre várias zonas. Este parâmetro é eficaz apenas quando MultiAZPolicy está definido como COMPOSABLE. Valores válidos:
Valor padrão: false. |
|
AllocationStrategy |
String |
Não |
priority |
Política de alocação de capacidade que determina como os tipos de instância são selecionados. Aplica-se tanto à capacidade sob demanda quanto à spot. Eficaz apenas quando MultiAZPolicy é COMPOSABLE. Valores válidos:
Valor padrão: priority. |
|
SpotAllocationStrategy |
String |
Não |
lowestPrice |
Política de distribuição para capacidade spot. Eficaz apenas quando MultiAZPolicy é COMPOSABLE. Valores válidos:
Valor padrão: priority. |
|
MaxInstanceLifetime |
Integer |
Não |
null |
Tempo de vida máximo de uma instância no grupo de dimensionamento. Unidade: segundos. Valores válidos: 0 ou [ Valor padrão: null. Nota
Este parâmetro não é suportado para grupos de dimensionamento do tipo ECI ou para grupos de dimensionamento com o Modo Econômico ativado. |
|
CustomPolicyARN |
String |
Não |
acs:fc:cn-zhangjiakou:16145688****:services/ess_custom_terminate_policy.LATEST/functions/ess_custom_terminate_policy_name |
ARN da função de política de redução personalizada. Eficaz apenas quando a primeira política de remoção é CustomPolicy. |
|
DisableDesiredCapacity |
Boolean |
Não |
false |
Indica se o recurso de quantidade esperada de instâncias deve ser desativado para o grupo de dimensionamento. Valores válidos:
|
|
ScalingPolicy |
String |
Não |
recycle |
Modo de recuperação do grupo de dimensionamento. Valores válidos:
ScalingPolicy especifica o modo de recuperação. O comportamento real de remoção é determinado pelo parâmetro RemovePolicy em RemoveInstances. |
|
HealthCheckTypes.N |
String |
Não |
ECS |
Lista de modos de verificação de integridade para o grupo de dimensionamento. Valores válidos:
Valor padrão: ECS. |
|
StopInstanceTimeout |
Integer |
Não |
60 |
Tempo limite para parar uma instância durante a redução. Unidade: segundos. Valores válidos: 30 a 240. Nota
|
|
CapacityOptions.OnDemandBaseCapacity |
Integer |
Não |
30 |
Quantidade mínima de instâncias sob demanda no grupo de dimensionamento. Quando a quantidade está abaixo deste valor, instâncias sob demanda são criadas primeiro. Valores válidos: 0 a 1000. Quando o parâmetro |
|
CapacityOptions.OnDemandPercentageAboveBaseCapacity |
Integer |
Não |
20 |
Porcentagem de instâncias sob demanda entre as instâncias que excedem Quando o parâmetro |
|
CapacityOptions.CompensateWithOnDemand |
Boolean |
Não |
true |
Quando o
|
|
CapacityOptions.SpotAutoReplaceOnDemand |
Boolean |
Não |
true |
Quando
Valor padrão: false. |
|
CapacityOptions.PriceComparisonMode |
String |
Não |
PricePerUnit |
Modo de comparação de preços para a política de otimização de custos do grupo de dimensionamento. Valores válidos:
Valor padrão: PricePerUnit. |
|
BalanceMode |
String |
Não |
BalancedBestEffort |
Modo de balanceamento de zonas. Eficaz apenas quando o balanceamento de zonas está ativado. Valores válidos:
Valor padrão: BalancedBestEffort. |
|
AutoRebalance |
Boolean |
Não |
false |
Indica se o rebalanceamento automático deve ser ativado. Eficaz apenas quando BalancedOnly está ativado. Valores válidos:
Valor padrão: false. |
Parâmetros de resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
RequestId |
String |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
ID da solicitação. |
Exemplos
Exemplo de solicitação
http(s)://ess.aliyuncs.com/?Action=ModifyScalingGroup
&ScalingGroupId=asg-bp1ffogfdauy0jw0****
&ScalingGroupName=scalinggroup****
&MinSize=1
&MaxSize=99
&DefaultCooldown=600
&RemovalPolicy.1=OldestScalingConfiguration
&RemovalPolicy.2=NewestInstance
&RemovalPolicy.3=OldestInstance
&ActiveScalingConfigurationId=asc-bp17pelvl720x5ub****
&HealthCheckType=ECS
&LaunchTemplateId=lt-m5e3ofjr1zn1aw7****
&LaunchTemplateVersion=Default
&OnDemandBaseCapacity=30
&OnDemandPercentageAboveBaseCapacity=20
&SpotInstanceRemedy=true
&CompensateWithOnDemand=true
&SpotInstancePools=5
&DesiredCapacity=5
&GroupDeletionProtection=true
&MultiAZPolicy=PRIORITY
&VSwitchIds=["vsw-bp1oo2a7isyrb8igf****"]
&LaunchTemplateOverride=[{"InstanceType":"ecs.c5.xlarge","WeightedCapacity":4,"SpotPriceLimit":0.025}]
&AzBalance=false
&AllocationStrategy=priority
&SpotAllocationStrategy=lowestPrice
&CustomPolicyARN=acs:fc:cn-zhangjiakou:16145688****:services/ess_custom_terminate_policy.LATEST/functions/ess_custom_terminate_policy_name
&DisableDesiredCapacity=false
&ScalingPolicy=recycle
&HealthCheckTypes=["ECS"]
&StopInstanceTimeout=60
&CapacityOptions={"OnDemandBaseCapacity":30,"OnDemandPercentageAboveBaseCapacity":20,"CompensateWithOnDemand":true,"SpotAutoReplaceOnDemand":true}
&Common request parameters
Exemplos de respostas de sucesso
XML formato
HTTP/1.1 200 OK
Content-Type:application/xml
<ModifyScalingGroupResponse>
<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</ModifyScalingGroupResponse>
JSON formato
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}
Códigos de erro
Visite o Error Center para obter uma lista completa de códigos de erro.
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|
404 |
InvalidScalingGroupId.NotFound |
The specified scaling group does not exist. |
O grupo de dimensionamento especificado não existe na sua conta. |
|
400 |
InvalidScalingGroupName.Duplicate |
The specified value of parameter
is duplicated. |
O nome do grupo de dimensionamento já existe. |
|
404 |
InvalidScalingConfigurationId.NotFound |
The specified scaling configuration does not exist. |
A configuração de dimensionamento especificada não existe no grupo de dimensionamento. |
|
400 |
InvalidScalingConfigurationId.InstanceTypeMismatch |
The specified scaling configuration and existing active scaling configuration have different instance type. |
O tipo de instância da configuração de dimensionamento especificada não corresponde ao tipo de instância da configuração de dimensionamento ativa. |
|
400 |
InvalidParameter.Conflict |
The value of parameter
and parameter
are in conflict. |
O MinSize especificado é maior que o MaxSize. |
|
400 |
LaunchTemplateVersionSet.NotFound |
The specific version of launch template is not exist. |
A versão especificada do modelo de inicialização não existe. |
|
400 |
LaunchTemplateSet.NotFound |
The specified launch template set is not found. |
O modelo de inicialização especificado não existe. |
|
400 |
TemplateMissingParameter.ImageId |
The input parameter "ImageId" that is mandatory for processing this request is not supplied. |
A versão especificada do modelo de inicialização não contém informações de imagem. |
|
400 |
TemplateMissingParameter.InstanceTypes |
The input parameter "InstanceTypes" that is mandatory for processing this request is not supplied. |
A versão especificada do modelo de inicialização não contém informações de tipo de instância. |
|
400 |
TemplateMissingParameter.SecurityGroup |
The input parameter "SecurityGroup" that is mandatory for processing this request is not supplied. |
A versão especificada do modelo de inicialização não contém informações de grupo de segurança. |
|
400 |
TemplateVersion.NotNumber |
The input parameter "LaunchTemplateVersion" is supposed to be a string representing the version number. |
O número de versão fixa especificado do modelo de inicialização deve ser um número. |