O Dubbo 3.0 integra os frameworks Dubbo e High-speed Service Framework (HSF). Após a atualização da aplicação HSF para o Dubbo 3.0, o Enterprise Distributed Application Service (EDAS) oferece recursos ampliados de governança de microsserviços para aplicações Dubbo.
A atualização altera apenas o runtime do EDAS Container. O código da aplicação e a lógica de negócios permanecem inalterados. A execução de uma aplicação HSF requer a aplicação e o EDAS Container. O EDAS Container fornece um ambiente Java, Ali-Tomcat e Pandora. O EDAS Container V4.x faz parte do Dubbo 3.0, já disponível comercialmente. O processo de atualização define a versão do Pandora como V4.0.0 para a aplicação HSF.
Escolha o procedimento correspondente ao seu ambiente de implantação:
|
Ambiente de implantação |
Procedimento |
|
Cluster ECS |
|
|
Cluster Kubernetes (pacote WAR) |
Atualizar uma aplicação implantada via WAR em um cluster Kubernetes |
|
Cluster Kubernetes (imagem) |
Atualizar uma aplicação implantada via imagem em um cluster Kubernetes |
Antes de começar
Verifique se a aplicação HSF funciona conforme o esperado no ambiente atual.
Teste a atualização em um ambiente de não produção e valide o resultado antes de aplicá-la em produção.
Se utilizar implantação por imagem, certifique-se de que o Docker esteja instalado e de que você tenha acesso a um repositório de imagens, como o Alibaba Cloud Container Registry.
Atualizar em um cluster ECS
Faça login no console do EDAS.
No painel de navegação à esquerda, clique em Applications.
Na barra de navegação superior, selecione uma região. Na parte superior da página, escolha um namespace de microsserviço na lista suspensa Applications e selecione ECS Clusters na lista suspensa Cluster Type.
Clique em nome da aplicação HSF a ser atualizada.
Na aba Basic Information, clique em Upgrade/Downgrade Runtime Environment no canto superior direito.
-
Na caixa de diálogo Upgrade/Downgrade Runtime Environment, defina Pandora Version como 4.0.0, configure os demais parâmetros conforme necessário e clique em OK.

A aplicação é reimplantada automaticamente. Esse processo leva alguns minutos. Para acompanhar o progresso, consulte Visualize detalhes da alteração.
Atualizar em um cluster Kubernetes
O EDAS suporta aplicações HSF implantadas em clusters Kubernetes por meio de pacotes WAR ou imagens. Siga o procedimento adequado ao seu método de implantação.
Atualizar uma aplicação implantada via WAR em um cluster Kubernetes
Faça login no console do EDAS.
No painel de navegação à esquerda, clique em Applications.
Na barra de navegação superior, selecione uma região. Na parte superior da página, escolha um namespace de microsserviço na lista suspensa Applications e selecione Container Service ou Serverless Kubernetes Cluster na lista suspensa Cluster Type.
Clique em nome da aplicação HSF a ser atualizada.
No canto superior direito da página Application Overview, escolha Deploy > Deploy.
Na seção Phased Release da página Select Deployment Mode, clique em Start Deployment no canto superior direito.
Na página Phased Release, defina Application Runtime Environment como EDAS-Container 4.0.0 [Support FatJar Deployment], configure os demais parâmetros conforme necessário e clique em OK. Para mais detalhes sobre os outros parâmetros, consulte Usar o console do EDAS para implementar liberações graduais de aplicações em clusters Kubernetes.
A aplicação é reimplantada automaticamente. Esse processo leva alguns minutos. Para acompanhar o progresso, consulte Visualize detalhes da alteração.
Atualizar uma aplicação implantada via imagem em um cluster Kubernetes
Se a aplicação HSF for implantada como uma imagem de contêiner, atualize o Dockerfile para usar o Pandora V4.0.0, reconstrua a imagem e faça a reimplantação.
Etapa 1: Atualizar o Dockerfile
Adicione as linhas abaixo ao Dockerfile existente para definir a versão do Pandora como V4.0.0:
# Upgrade Pandora to V4.0.0 for Dubbo 3.0
ENV UPGRADED_CONTAINER_VERSION 4.0.0
RUN /home/admin/bin/upgradecontainer.sh
O exemplo a seguir mostra um Dockerfile completo com a atualização aplicada. Para detalhes sobre o Dockerfile base, consulte Exemplo de Dockerfile para uma aplicação HSF.
# Base image: CentOS 7 + OpenJDK 8 + Ali-Tomcat 7 + Pandora 3.5.9
FROM apaas/edas-centos-openjdk8-alitomcat7:latest
MAINTAINER Alibaba Cloud EDAS Team<edas-dev@list.alibaba-inc.com>
ENV TZ="Asia/Shanghai"
# Application directory
ENV APP_HOME /home/admin/app/
# Option 1: Deploy a FatJar file
ARG APP_LOCATION=https://edas-hz.oss-cn-hangzhou.aliyuncs.com/prod/demo/HSF_PROVIDER.jar
# Option 2: Deploy a WAR file
#ARG APP_LOCATION=https://edas-hz.oss-cn-hangzhou.aliyuncs.com/prod/demo/HSF_PROVIDER.war
# Option 3: Deploy a local file
#ARG APP_LOCATION=/Users/username/workspace/java/demo/HSF_PROVIDER.war
ADD ${APP_LOCATION} ${APP_HOME}/
# Upgrade Pandora to V4.0.0 for Dubbo 3.0
ENV UPGRADED_CONTAINER_VERSION 4.0.0
RUN /home/admin/bin/upgradecontainer.sh
Etapa 2: Criar a imagem
Acesse o diretório que contém o Dockerfile e execute o comando docker build:
docker build -t <app-name>:<version> .
Substitua os placeholders a seguir pelos seus valores:
|
Placeholder |
Descrição |
Exemplo |
|
|
Nome da imagem, geralmente o nome da aplicação |
|
|
|
Tag de versão da imagem |
|
Exemplo:
docker build -t hsf-provider:1.0.0 .
Se o Dockerfile tiver um nome personalizado ou estiver em outro diretório, especifique o caminho com a flag -f:
docker build -t <app-name>:<version> -f /path/to/custom_dockerfile .
Etapa 3: Verificar a imagem local
Execute o comando abaixo para confirmar a criação da imagem:
docker images | grep <app-name>
Etapa 4: Enviar a imagem para um registro
Envie a imagem para um registro de imagens de contêiner. Recomendamos o uso do Alibaba Cloud Container Registry. Para instruções, consulte Usar uma instância do Container Registry Enterprise Edition para enviar e baixar imagens.
Etapa 5: Implantar a imagem atualizada
Implante a aplicação Dubbo 3.0 no cluster Kubernetes no EDAS utilizando a nova imagem. Para instruções, consulte Usar imagens para implantar aplicações de microsserviços em clusters Kubernetes.
Verificar o resultado
Após a conclusão da atualização e o reinício da aplicação, verifique o recurso de governança de microsserviços escolhendo Microservices Governance > HSF ou Microservices Governance > Dubbo no painel de navegação à esquerda do console do EDAS. Também é possível validar o funcionamento do recurso para a aplicação atualizada.. Para obter instruções detalhadas, consulte Visão geral da administração de serviços