Para enviar alterações de código para aplicações Spring Cloud, Dubbo ou High-Speed Service Framework (HSF) em execução em clusters do Elastic Compute Service (ECS), use o toolkit-maven-plugin. Essa ferramenta permite compilar e implantar diretamente do projeto Maven, sem alternar para o console do Enterprise Distributed Application Service (EDAS).
Pré-requisitos
Antes de começar, verifique se você tem:
Uma aplicação Spring Cloud, Dubbo ou HSF implantada em um cluster ECS no EDAS
O ID da aplicação e o ID da região da aplicação de destino (disponíveis no console do EDAS)
Um par de AccessKey de um usuário do Resource Access Management (RAM) com permissões de Application Management
Este guia aborda implantações em clusters ECS. Para atualizar uma aplicação em um cluster Kubernetes, consulte Usar o Alibaba Cloud Toolkit para liberar uma aplicação para todas as instâncias em um cluster Kubernetes de uma só vez .
Etapa 1: Adicione a dependência do plug-in
Adicione a dependência do toolkit-maven-plugin ao arquivo pom.xml na raiz do projeto:
<build>
<plugins>
<plugin>
<groupId>com.alibaba.cloud</groupId>
<artifactId>toolkit-maven-plugin</artifactId>
<version>1.1.5</version>
</plugin>
</plugins>
</build>
Use a versão 1.1.5 . Versões posteriores podem não ter suporte completo.
O toolkit-maven-plugin é uma ferramenta open source que permite criar um framework completo de ciclo de vida da aplicação e implantar um ambiente para o projeto. Para mais detalhes, consulte Visão geral do toolkit-maven-plugin.
Etapa 2: Crie um arquivo de configuração de implantação
Crie um arquivo chamado .edas_config.yaml no diretório raiz do projeto e defina os parâmetros de implantação.
Resolução do arquivo de configuração
|
Condição |
Comportamento |
|
O arquivo |
O plug-in o carrega automaticamente como configuração padrão |
|
O parâmetro |
O plug-in usa o arquivo especificado em vez do padrão |
|
Tanto o arquivo padrão quanto o |
O arquivo especificado tem precedência |
|
O projeto é um submódulo Maven |
Coloque o arquivo de configuração no diretório raiz do submódulo |
Para detalhes sobre configurações com múltiplos módulos, consulte Implantar projetos com múltiplos módulos.
Exemplos de configuração
Atualizar todos os grupos de instâncias
Para atualizar cada grupo de instâncias de uma aplicação, especifique apenas a região e o ID da aplicação:
env:
region_id: cn-beijing
app:
app_id: eb20****-e6ee-4f6d-a36f-5f6a5455****
Atualizar um grupo de instâncias específico com uma versão de pacote
Para direcionar um único grupo de instâncias e definir a versão do pacote de implantação:
env:
region_id: cn-beijing
app:
app_id: eb20dc8a-e6ee-4f6d-a36f-5f6a5455****
package_version: 1.2
group_id: 06923bb9-8c5f-4508-94d8-517b692f****
Substitua os valores de espaço reservado pelo seu ID de região, ID da aplicação, ID do grupo e versão do pacote reais.
Para obter a lista completa de parâmetros de implantação, consulte Configurar os parâmetros relacionados à implantação da aplicação.
Etapa 3: Crie um arquivo de AccessKey
Crie um arquivo YAML na máquina local para armazenar as credenciais:
access_key_id: <your-access-key-id>
access_key_secret: <your-access-key-secret>
Substitua os espaços reservados pelos valores reais:
|
Espaço reservado |
Descrição |
Onde encontrar |
|
|
AccessKey ID de um usuário RAM |
Página AccessKey Pair no console RAM |
|
|
AccessKey secret do mesmo usuário RAM |
Mesma página acima |
Use o par de AccessKey de um usuário RAM com permissões de Application Management , e não o usuário raiz da conta Alibaba Cloud. O plug-in usa o par de AccessKey apenas para gerar assinaturas de solicitação. As credenciais não são transmitidas para nenhuma outra finalidade.
Etapa 4: Compile e implante
Na raiz do projeto (ou no diretório do submódulo para projetos Maven com múltiplos módulos), execute:
mvn clean package toolkit:deploy -Daccess_key_file=<path-to-access-key-file>
Parâmetros do comando
|
Parâmetro |
Descrição |
|
|
Aciona a implantação por meio do plug-in após a conclusão do empacotamento |
|
|
Caminho para o arquivo de AccessKey criado na Etapa 3 |
Para outras formas de configurar credenciais, consulte Configurações e prioridades de conta.
Implantar um pacote pré-compilado sem recompilar
Para pular a etapa de compilação e implantar um arquivo JAR ou WAR existente, use o parâmetro -Djar_path:
mvn toolkit:deploy -Daccess_key_file=<path-to-access-key-file> -Djar_path=target/demo.jar
O caminho pode ser absoluto ou relativo à raiz do projeto.
O parâmetro -Djar_path tem precedência sobre os parâmetros env no arquivo de configuração. Você também pode definir o caminho do arquivo de AccessKey na seção env do arquivo de configuração. Para detalhes, consulte Configurar os parâmetros relacionados à implantação da aplicação.
Verifique a implantação
Após a conclusão do comando de implantação, verifique os resultados:
Saída do terminal
Analise a saída do Maven no terminal:
-
A mensagem
BUILD SUCCESSna saída confirma que a implantação foi concluída.
Se a saída contiver
ERROR, analise a mensagem de erro, corrija o problema e implante novamente.
Console do EDAS
Faça login no console do EDASconsole do EDAS e verifique as páginas de change records e application details para confirmar se a atualização foi aplicada. Para detalhes, consulte Verificar o resultado.
Suporte ao Apsara Stack
O plug-in toolkit-maven-plugin está disponível no Apsara Stack Enterprise V3.8.0 e versões posteriores. Antes de usar o plug-in no Apsara Stack, configure um endpoint do EDAS. Para detalhes sobre a configuração do endpoint, consulte Configurar os parâmetros relacionados à implantação da aplicação. Para obter o endpoint, entre em contato com o suporte técnico do EDAS.
Feedback
Se você tiver alguma dúvida ao usar a ferramenta para implantar aplicações, participe do grupo do DingTalk (ID do grupo DingTalk: 34556175) para entrar em contato com especialistas técnicos e obter consultoria.