Todos os produtos
Search
Central de documentação

Auto Scaling:Automatically bind and release EIPs for ECS instances during auto scaling

Última atualização: Jul 03, 2026

Para garantir a acessibilidade do serviço, associe automaticamente um elastic ip address (EIP) a cada nova instância ECS durante um evento de scale-out. Durante um evento de scale-in, libere automaticamente os EIPs das instâncias removidas. Essa prática é útil em períodos de baixa demanda ou quando o acesso público não é mais necessário, pois otimiza o uso de recursos e reduz custos ao eliminar cobranças por recursos ociosos.

Nota

Um EIP é um endereço IP público que você pode adquirir e gerenciar independentemente. Associe um EIP a uma instância ECS ou libere-o conforme necessário. Para mais informações, consulte O que é um elastic ip address.

Pré-requisitos

  • Crie um grupo de dimensionamento e verifique se ele está no estado Enable. Para mais informações, consulte Criar um grupo de dimensionamento.

  • Conceda permissões ao CloudOps Orchestration Service (OOS) para acessar outros serviços de nuvem. Para mais informações, consulte Definir uma função do RAM e conceder permissões ao OOS.

    1. Crie uma função do RAM.

      Defina o serviço confiável da função do RAM como OOS. Este tópico utiliza OOSServiceRole como nome da função do RAM.

    2. Anexe políticas à função do RAM.

      O OOS precisa acessar recursos do ECS, Auto Scaling e EIP para executar tarefas. Portanto, anexe as seguintes políticas de sistema à função OOSServiceRole:

      • AliyunECSFullAccess

      • AliyunESSFullAccess

      • AliyunEIPFullAccess

Associar EIPs automaticamente durante o scale-out

  1. Crie um lifecycle hook.

    A tabela a seguir descreve os principais parâmetros. Mantenha os valores padrão para os demais parâmetros. Para mais informações, consulte Criar um lifecycle hook.

    Parâmetro

    Descrição

    Name

    Insira ESSHookForAttachEip.

    Scaling Activity

    Selecione Scale-out Event.

    Timeout Period

    Insira um período de timeout adequado, como 300 segundos.

    Importante

    Este parâmetro especifica o tempo máximo para conclusão da ação personalizada. Se o período de timeout for muito curto, a ação poderá falhar. Defina um período suficiente para concluir sua ação personalizada.

    Send Notification When Lifecycle Hook Takes Effect

    Selecione OOS Template e configure os seguintes parâmetros:

    1. Em OOS Template Type, selecione Public Templates.

    2. Selecione o modelo público do OOS ACS-ESS-LifeCycleAllocateEipAddressAndAttachToInstance. Este modelo associa automaticamente um EIP a uma instância ECS durante um evento de scale-out.

    3. Clique em Parameter Settings ao lado do modelo ACS-ESS-LifeCycleAllocateEipAddressAndAttachToInstance.

      Veja a seguir exemplos dos principais parâmetros. Mantenha os valores padrão para os demais parâmetros.

      • Billing method for EIP: PayByBandwidth especifica o faturamento por largura de banda. PayByTraffic especifica o faturamento por tráfego. Este tópico usa PayByBandwidth como exemplo.

      • Peak bandwidth for EIP: Este exemplo utiliza o valor 5, definindo a largura de banda de pico do EIP como 5 Mbit/s.

      • EIP tags: Adicione tags aos EIPs para simplificar o gerenciamento.

      • The RAM role assumed by OOS. : Selecione OOSServiceRole.

        Essa função concede ao OOS as permissões necessárias para gerenciar recursos do ECS, Auto Scaling e EIP.

  2. Dispare um evento de scale-out.

    Este exemplo dispara um evento de scale-out mediante a execução manual de uma regra de dimensionamento. Também é possível utilizar tarefas agendadas ou disparadas por eventos. Para mais informações, consulte Executar uma regra de dimensionamento.

    Nota

    Ao executar manualmente uma regra de dimensionamento para disparar um evento de scale-out, o lifecycle hook entra em vigor. No entanto, se você adicionar manualmente uma instância ECS existente, o lifecycle hook não será acionado.

    Após o disparo bem-sucedido de um evento de scale-out, o grupo de dimensionamento cria automaticamente uma instância ECS. Como o lifecycle hook ESSHookForAttachEip foi criado no grupo de dimensionamento, ele coloca a instância ECS em estado pendente e notifica o OOS para executar uma tarefa que cria e associa um EIP à instância.

    Se o status da atividade de dimensionamento mudar para Failed e um erro semelhante ao abaixo for relatado, verifique os detalhes de execução da tarefa no console do OOS. Para mais informações, consulte (Opcional) Visualizar detalhes de execução do OOS.

    Os detalhes da atividade de dimensionamento mostram o seguinte erro: Fail to create Instances into scaling group(code:"LifecycleActionResult.Abandon", msg:"Abandon lifecycleActionResult parameter caused the instance to rollback.")

  3. Verifique se um EIP foi associado automaticamente à instância ECS criada pelo scale-out.

    Na aba Instances > Auto Create do grupo de dimensionamento, clique em ID da instância ECS criada automaticamente para acessar a página de detalhes da instância. Para mais informações, consulte Consultar a lista de instâncias de um grupo de dimensionamento.

    Na seção de informações básicas da instância ECS, verifique o parâmetro EIP. A presença de um endereço IP neste campo indica que o EIP foi associado com sucesso.

    Nota

    Se a instância ECS for criada, mas nenhum EIP for associado, verifique os detalhes de execução da tarefa no console do OOS.

  4. (Opcional) Visualize os detalhes de execução do OOS.

    A página de detalhes de execução da tarefa exibe informações como ID e status de execução na área Basic Information, além de fornecer detalhes de execução e logs na área Execution Steps and Results. Para mais informações, consulte Visualizar detalhes de execução da tarefa.

    Importante

    Se a execução falhar, uma mensagem de erro relevante será exibida na página de detalhes da execução.

Liberar EIPs automaticamente durante o scale-in

  1. Crie um lifecycle hook.

    A tabela a seguir descreve os principais parâmetros. Mantenha os valores padrão para os demais parâmetros. Para mais informações, consulte Criar um lifecycle hook.

    Parâmetro

    Descrição

    Name

    Insira ESSHookForReleaseEip.

    Scaling Activity

    Selecione Scale-in Event.

    Timeout Period

    Insira um período de timeout adequado, como 300 segundos.

    Importante

    Este parâmetro especifica o tempo máximo para conclusão da ação personalizada. Se o período de timeout for muito curto, a ação poderá falhar. Defina um período suficiente para concluir sua ação personalizada.

    Send Notification When Lifecycle Hook Takes Effect

    Selecione OOS Template e configure os seguintes parâmetros:

    1. Em OOS Template Type, selecione Public Templates.

    2. Selecione o modelo público do OOS ACS-ESS-LifeCycleReleaseEipAddressFromInstance. Este modelo libera automaticamente o EIP de uma instância ECS durante um evento de scale-in.

    3. Clique em Parameter Settings ao lado do modelo ACS-ESS-LifeCycleReleaseEipAddressFromInstance.

      Defina The RAM role assumed by OOS. como OOSServiceRole e mantenha os valores padrão para os demais parâmetros. Essa função concede ao OOS as permissões necessárias para gerenciar recursos do ECS, Auto Scaling e EIP.

  2. Dispare um evento de scale-in.

    Este exemplo dispara um evento de scale-in mediante a execução manual de uma regra de dimensionamento. Também é possível utilizar tarefas agendadas ou disparadas por eventos. Para mais informações, consulte Executar uma regra de dimensionamento.

    Nota

    Ao executar manualmente uma regra de dimensionamento para disparar um evento de scale-in, o lifecycle hook entra em vigor. No entanto, se você remover manualmente uma instância ECS existente, o lifecycle hook não será acionado.

    Após o disparo bem-sucedido de um evento de scale-in, o grupo de dimensionamento remove automaticamente uma instância ECS. Como o lifecycle hook ESSHookForReleaseEip foi criado no grupo de dimensionamento, ele coloca a instância ECS em estado pendente e notifica o OOS para executar uma tarefa que libera o EIP da instância.

  3. Verifique se o EIP foi liberado automaticamente da instância ECS removida pelo scale-in.

    Consulte a lista de elastic ip addresses para localizar o EIP. O EIP terá sido liberado com sucesso se não aparecer mais na lista.

    Nota

    Se a instância ECS for excluída, mas o EIP não for liberado, verifique os detalhes de execução da tarefa no console do OOS.

  4. (Opcional) Visualize os detalhes de execução do OOS.

    A página de detalhes de execução da tarefa exibe informações como ID e status de execução na área Basic Information, além de fornecer detalhes de execução e logs na área Execution Steps and Results. Para mais informações, consulte Visualizar detalhes de execução da tarefa.

    Importante

    Se a execução falhar, uma mensagem de erro relevante será exibida na página de detalhes da execução.

Perguntas frequentes

Se a execução de uma tarefa de O&M falhar, solucione o problema com base na mensagem de erro apresentada no resultado da execução. Para mais informações, consulte Perguntas frequentes.

A tabela a seguir descreve as mensagens de erro comuns.

Mensagem de erro

Causa

Solução

Forbidden.Unauthorized message: A required authorization for the specified action is not supplied.

O Auto Scaling não foi autorizado a realizar a ação atual.

Verifique se a função do RAM OOSServiceRole possui as permissões necessárias.

Forbidden.RAM message: User not authorized to operate on the specified resource, or this API doesn't support RAM.

O usuário do RAM ou a função do RAM não tem permissões para operar nos recursos correspondentes.

Verifique se a função do RAM OOSServiceRole possui as permissões necessárias. Por exemplo, conceda as permissões do OOS à função do RAM. Antes que o OOS possa gerenciar os recursos declarados no modelo do OOS, é necessário conceder as permissões exigidas à função do RAM.

LifecycleHookIdAndLifecycleActionToken.Invalid message: The specified lifecycleActionToken and lifecycleActionId you provided does not match any in process lifecycle action.

A ação do lifecycle hook em andamento foi encerrada ou interrompida.

Avalie o período de timeout do lifecycle hook para garantir que as tarefas de O&M especificadas no modelo do OOS sejam concluídas dentro do limite de tempo definido.

Documentos relacionados

  • O lifecycle hook é uma ferramenta usada para gerenciar o ciclo de vida das instâncias em um grupo de dimensionamento. Utilize lifecycle hooks para executar ações personalizadas em uma instância antes que ela seja colocada em serviço ou encerrada. Para mais informações, consulte Visão geral do lifecycle hook.

  • O CloudOps Orchestration Service (OOS) é um serviço automatizado de O&M fornecido pela Alibaba Cloud, utilizado para automatizar o gerenciamento e a execução de tarefas. Para mais informações, consulte O que é o CloudOps Orchestration Service.

  • Para cenários avançados de rede, como a criação de uma solução de failover de baixo custo que exige acesso à internet pública, associe automaticamente uma interface de rede elástica (ENI) secundária com um EIP a uma instância ECS durante um evento de scale-out. Inversamente, durante um evento de scale-in, libere automaticamente a ENI secundária e seu EIP associado quando a instância for encerrada ou quando o acesso público não for mais necessário. Para mais informações, consulte Associar e liberar automaticamente ENIs secundárias com EIPs.