Todos os produtos
Search
Central de documentação

Auto Scaling:Use Alibaba Cloud CLI to execute rolling update tasks

Última atualização: Sep 17, 2026

A Alibaba Cloud CLI é uma ferramenta de gerenciamento baseada na OpenAPI da Alibaba Cloud que permite chamar operações da OpenAPI para gerenciar services da Alibaba Cloud. Neste tutorial, você usa a Alibaba Cloud CLI para executar uma tarefa de atualização contínua nas instâncias ECS em um grupo de dimensionamento. Você também aprende como reverter uma tarefa de atualização contínua quando a atualização não é concluída conforme o esperado.

Pré-requisitos

  • A Alibaba Cloud CLI está instalada. Para mais informações, consulte o guia de instalação em Alibaba Cloud CLI documentation.

  • Um grupo de dimensionamento foi criado e instâncias ECS foram adicionadas a ele.

  • (Aplica-se apenas à atualização de imagens de instância) A source de configuração de instância do grupo de dimensionamento é uma configuração de dimensionamento.

  • (Aplica-se apenas à instalação de um pacote OOS) Os pacotes OOS que você deseja instalar nas instâncias ECS já foram criados no OOS. Para mais informações, consulte Gerencie extensões personalizadas em lotes.

Informações básicas

Uma atualização contínua atualiza as configurações de várias instâncias ECS em lotes. Ao executar uma tarefa de atualização contínua pela Alibaba Cloud CLI, a tarefa roda como uma execução de um modelo público do Operation Orchestration Service (OOS). Para mais informações, consulte Rolling updates.

Cenários

Este tutorial possui três marcos sequenciais e uma ramificação condicional de reversão, executada apenas quando necessário. Cada cenário de atualização contínua roda como uma execução de um modelo público do OOS. Para os parâmetros do modelo usado em cada cenário, consulte as referências a seguir:

Etapa 1: Criar um usuário RAM e conceder permissões

  1. Faça logon no console do Resource Access Management (RAM).

  2. Crie um usuário RAM.

    Esta etapa usa um usuário RAM chamado example como usuário de amostra. Para mais informações, consulte Crie um usuário RAM.

    1. No painel de navegação à esquerda, escolha IdentitiesUsers.

    2. Clique em Create User.

    3. Na página Create User, especifique as configurações do usuário e clique em OK.

      A tabela a seguir descreve as configurações de amostra.

      Item de configuração

      Configuração de amostra

      Logon Name

      example@sample.com

      Display name

      example

      Access Mode

      Selecione Using permanent AccessKey to access. Um par de AccessKey é gerado automaticamente para o usuário RAM, permitindo o acesso à Alibaba Cloud por meio de APIs ou outras ferramentas de desenvolvimento.

    4. Na página User Information, clique em Download CSV File.

      Nota

      O AccessKey secret é exibido apenas no momento da criação e não pode ser consultado posteriormente. Mantenha-o confidencial. Se um par de AccessKey for exposto ou perdido, crie um novo par de AccessKey.

  3. Conceda ao usuário RAM permissões para operar resources.

    1. No painel de navegação à esquerda, escolha IdentitiesUsers.

    2. Localize o usuário RAM example que você criou. Na coluna Actions, clique em Add Permissions.

    3. Na página Add Permissions, selecione as permissões necessárias para executar tarefas de atualização contínua e clique em OK.

      A tabela a seguir descreve as configurações de amostra.

      Item de configuração

      Configuração de amostra

      Resource Range

      Mantenha o valor padrão Account.

      Principal

      Mantenha o valor padrão example@sample.com.

      Policies

      Selecione as seguintes políticas de sistema:

      • AliyunECSFullAccess: permissões para operar resources do ECS, incluindo instâncias ECS e outros resources relacionados.

      • AliyunESSFullAccess: permissões para operar resources do Auto Scaling, incluindo grupos de dimensionamento e outros resources relacionados.

      • AliyunOOSFullAccess: permissões para operar resources do CloudOps Orchestration Service, incluindo execuções e outros resources relacionados.

      • AliyunOSSFullAccess: permissões para operar resources do Object Storage Service, incluindo buckets e outros resources relacionados.

Etapa 2: Configurar e verificar a Alibaba Cloud CLI

  1. Abra um terminal ou prompt de comando no seu computador local.

  2. Configure a Alibaba Cloud CLI.

    1. Execute o seguinte comando para abrir o arquivo de configuração:

      aliyun configure
    2. Insira o AccessKey ID, o AccessKey secret, a região padrão e outras informações conforme solicitado.

      cli-config

      Os comandos de amostra na Etapa 3 não incluem um parâmetro de região. Certifique-se de que a região padrão configurada seja a mesma onde seu grupo de dimensionamento está localizado.

  3. Execute o seguinte comando para verificar se a Alibaba Cloud CLI está disponível:

    aliyun ecs DescribeRegions

    cli-example

    Para mais informações sobre outros itens de configuração, consulte a seção sobre como configurar a Alibaba Cloud CLI em Alibaba Cloud CLI documentation.

Etapa 3: Executar uma tarefa de atualização contínua usando a Alibaba Cloud CLI

Os comandos de amostra usam as convenções de aspas e continuação de linha de um shell POSIX, como bash no Linux ou macOS. Se você usar Windows PowerShell ou Prompt de Comando, ajuste as aspas e caracteres de escape para corresponder a esse shell.

Todos os comandos de amostra definem batchPauseOption como Automatic, o que executa todos os lotes sem pausas. Para pausar a tarefa após a execução do primeiro lote, defina batchPauseOption como FirstBatchPause.

  1. Insira um comando da Alibaba Cloud CLI para executar uma tarefa de atualização contínua.

    Para descrições dos parâmetros do modelo OOS usados no código de amostra, consulte OOS rolling update template parameters.

    • O seguinte comando de amostra atualiza as imagens das instâncias ECS no grupo de dimensionamento para Alibaba Cloud Linux 2.1903 LTS 64 bits:

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup --Parameters "{
              \"invokeType\": \"invoke\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"scalingConfigurationId\": \"asc-bp1bx8mzur534edp****\",
              \"imageId\": \"aliyun_2_1903_x64_20G_alibase_20200529.vhd\",
              \"sourceImageId\": \"centos_7_8_x64_20G_alibase_20200717.vhd\",
              \"OOSAssumeRole\": \"\",
              \"enterProcess\": [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"exitProcess\":  [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
    • O comando de exemplo para execução de script é apresentado abaixo. Ele executa os comandos shell df -h e ifconfig nas instâncias ECS do grupo de dimensionamento para visualizar informações de disco e configuração de rede das instâncias.

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByRunCommandInScalingGroup --Parameters "{
              \"invokeType\": \"invoke\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"commandType\": \"RunShellScript\",
              \"invokeScript\": \"df -h\nifconfig\",
              \"rollbackScript\": \"df -h\nifconfig\",
              \"OOSAssumeRole\": \"\",
              \"exitProcess\": [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"enterProcess\": [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
    • O comando de exemplo para instalação do pacote OOS é mostrado a seguir. Ele instala uniformemente o pacote WordPress criado no OOS nas instâncias ECS do grupo de dimensionamento.

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByConfigureOOSPackage --Parameters "{
              \"invokeType\": \"invoke\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"packageName\": \"wordpress\",
              \"packageVersion\": \"v4\",
              \"action\": \"install\",
              \"OOSAssumeRole\": \"\",
              \"enterProcess\": [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"exitProcess\": [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
  2. Visualize os detalhes da execução para confirmar o resultado da tarefa de atualização contínua.

    Ao executar o comando CLI para uma tarefa de atualização contínua, uma execução é criada automaticamente no OOS. Use o ID de execução retornado para visualizar detalhes como resultado e saída da execução. O exemplo a seguir mostra como encontrar o ID de execução e visualizar os detalhes de uma execução de script.

    1. Encontre o ID de execução da tarefa de atualização contínua nas informações retornadas pelo comando.

      Um ID de execução de amostra é mostrado na figura a seguir. exec-id

    2. Substitua o ID de execução de amostra pelo seu próprio e execute o seguinte comando da Alibaba Cloud CLI para visualizar os detalhes da execução:

      aliyun oos ListExecutions --ExecutionId exec-40e2e17ef7e04****

      exec-outputs

Reverter uma tarefa de atualização contínua: Tratamento de anormalidades durante atualizações contínuas

Se ocorrer uma exceção durante o processo de atualização contínua, ou se você precisar usar a configuração anterior após a atualização, execute uma tarefa de reversão para restaurar a configuração das instâncias ECS no grupo de dimensionamento. Esta etapa fornece um comando de exemplo que demonstra como reverter uma tarefa de atualização contínua já executada.

  1. Encontre o ID de execução da tarefa de atualização contínua nas informações retornadas pelo comando.

    Um ID de execução de amostra é mostrado na figura a seguir. exec-id

  2. Insira um comando da Alibaba Cloud CLI para executar uma tarefa de reversão.

    Para descrições dos parâmetros do modelo OOS usados no código de amostra, consulte Referência: Parâmetros do modelo OOS.

    Nota

    Ao executar uma tarefa de reversão, o OOS realiza automaticamente operações com base na tarefa de atualização contínua, como filtrar as instâncias ECS a serem revertidas, além de suspender e retomar processos de dimensionamento. Portanto, você pode omitir alguns parâmetros.

    • O seguinte comando de amostra reverte as imagens das instâncias ECS para CentOS 7.8 64 bits:

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup --Parameters "{
              \"invokeType\": \"rollback\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"scalingConfigurationId\": \"asc-bp1bx8mzur534edp****\",
              \"sourceImageId\": \"centos_7_8_x64_20G_alibase_20200717.vhd\",
              \"sourceExecutionId\": \"exec-83dba59be77d430****\",
              \"OOSAssumeRole\": \"\",
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
    • O comando de exemplo para execução do script de reversão é apresentado abaixo. Ele executa o script de reversão nas instâncias ECS. Aqui, os comandos Shell df -h e ifconfig ainda são usados como exemplos; substitua o script conforme necessário.

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByRunCommandInScalingGroup --Parameters "{
              \"invokeType\": \"rollback\",
              \"commandType\": \"RunShellScript\",
              \"rollbackScript\": \"df -h\nifconfig\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"sourceExecutionId\": \"exec-40e2e17ef7e046****\",
              \"OOSAssumeRole\": \"\",
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
    • O comando de exemplo para reverter a instalação do pacote OOS é mostrado a seguir. Ele instala uniformemente a versão histórica do pacote WordPress criado no OOS nas instâncias ECS.

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByConfigureOOSPackage --Parameters "{
              \"invokeType\": \"rollback\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"packageVersion\": \"v3\",
              \"packageName\": \"wordpress\",
              \"sourceExecutionId\": \"exec-f4e61f2f21fe490****\",
              \"OOSAssumeRole\": \"\",
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
  3. Visualize os detalhes da execução para confirmar o resultado da tarefa de reversão.

    Ao executar o comando CLI para uma tarefa de reversão, uma execução também é criada automaticamente no OOS. Siga as etapas descritas na Etapa 3 para visualizar detalhes como resultado e saída da execução.

Referência: Parâmetros do modelo OOS

Esta seção lista os parâmetros dos modelos públicos do OOS usados nos comandos de amostra.

ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup

Parâmetro

Descrição

invokeType

Tipo da tarefa. Valores válidos:

  • invoke: tarefa de atualização contínua.

  • rollback: tarefa de reversão.

scalingGroupId

ID do grupo de dimensionamento onde a tarefa é executada.

scalingConfigurationId

ID da configuração de dimensionamento ativa no grupo de dimensionamento.

imageId

ID da imagem usada para substituir a imagem atual.

sourceImageId

ID da imagem usada para a reversão.

OOSAssumeRole

Função RAM usada para executar a tarefa. Valor padrão: OOSServiceRole.

enterProcess

Processos de dimensionamento suspensos quando a tarefa inicia.

exitProcess

Processos de dimensionamento que devem ser retomados quando a tarefa termina.

batchNumber

Número de lotes em que as instâncias ECS do grupo de dimensionamento são divididas durante a execução da tarefa. Cada lote contém pelo menos uma instância ECS.

batchPauseOption

Configuração de pausa para execução da tarefa. Valores válidos:

  • Automatic: A tarefa é executada continuamente, sem pausas.

  • FirstBatchPause: A tarefa é pausada após a execução do primeiro lote.

  • EveryBatchPause: A tarefa é pausada após a execução de cada lote.

sourceExecutionId

ID de execução da tarefa de atualização contínua original quando uma tarefa de reversão é executada.

Nota

Você também pode visualizar mais descrições de parâmetros no console do OOS. Por exemplo, para a região China (Hangzhou), consulte ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup.

ACS-ESS-RollingUpdateByRunCommandInScalingGroup

Parâmetro

Descrição

invokeType

Tipo da tarefa. Valores válidos:

  • invoke: tarefa de atualização contínua.

  • rollback: tarefa de reversão.

scalingGroupId

ID do grupo de dimensionamento onde a tarefa é executada.

commandType

Tipo de script a ser executado. O valor RunShellScript indica um script shell.

invokeScript

Script executado nas instâncias ECS durante a tarefa de atualização contínua.

rollbackScript

Script executado nas instâncias ECS durante a tarefa de reversão.

OOSAssumeRole

Função RAM usada para executar a tarefa. Valor padrão: OOSServiceRole.

enterProcess

Processos de dimensionamento suspensos quando a tarefa inicia.

exitProcess

Processos de dimensionamento que devem ser retomados quando a tarefa termina.

batchNumber

Número de lotes em que as instâncias ECS do grupo de dimensionamento são divididas durante a execução da tarefa. Cada lote contém pelo menos uma instância ECS.

batchPauseOption

Configuração de pausa para execução da tarefa. Valores válidos:

  • Automatic: A tarefa é executada continuamente, sem pausas.

  • FirstBatchPause: A tarefa é pausada após a execução do primeiro lote.

  • EveryBatchPause: A tarefa é pausada após a execução de cada lote.

sourceExecutionId

ID de execução da tarefa de atualização contínua original quando uma tarefa de reversão é executada.

Nota

Você também pode visualizar mais descrições de parâmetros no console do OOS. Por exemplo, para a região China (Hangzhou), consulte ACS-ESS-RollingUpdateByRunCommandInScalingGroup.

ACS-ESS-RollingUpdateByConfigureOOSPackage

Parâmetro

Descrição

invokeType

Tipo da tarefa. Valores válidos:

  • invoke: tarefa de atualização contínua.

  • rollback: tarefa de reversão.

scalingGroupId

ID do grupo de dimensionamento onde a tarefa é executada.

packageName

Nome do pacote.

packageVersion

Versão do pacote.

action

Método usado para configurar o pacote. Valores válidos:

  • install: instala o pacote.

  • uninstall: desinstala o pacote.

Valor padrão: install.

OOSAssumeRole

Função RAM usada para executar a tarefa. Valor padrão: OOSServiceRole.

enterProcess

Processos de dimensionamento suspensos quando a tarefa inicia.

exitProcess

Processos de dimensionamento que devem ser retomados quando a tarefa termina.

batchNumber

Número de lotes em que as instâncias ECS do grupo de dimensionamento são divididas durante a execução da tarefa. Cada lote contém pelo menos uma instância ECS.

batchPauseOption

Configuração de pausa para execução da tarefa. Valores válidos:

  • Automatic: A tarefa é executada continuamente, sem pausas.

  • FirstBatchPause: A tarefa é pausada após a execução do primeiro lote.

  • EveryBatchPause: A tarefa é pausada após a execução de cada lote.

sourceExecutionId

ID de execução da tarefa de atualização contínua original quando uma tarefa de reversão é executada.

Nota

Você também pode visualizar mais descrições de parâmetros no console do OOS. Por exemplo, para a região China (Hangzhou), consulte ACS-ESS-RollingUpdateByConfigureOOSPackage.