As instâncias comuns do MSE Microservices Registry estão disponíveis nas edições profissional e de desenvolvedor (a edição básica não é mais vendida nem atualizada). O MSE Nacos também possui sua própria versão de mecanismo. Este tópico descreve como atualizar a versão do mecanismo Nacos no console do MSE.
Contexto
Para oferecer serviços melhores e simplificar a seleção de edições do MSE Microservices Registry, o MSE Microservices Registry descontinuará os serviços da edição básica e liberará os recursos das instâncias às 12:00 (UTC+8) de 3 de março de 2025. Após esse horário, você não poderá mais acessar essas instâncias pelo console ou por suas aplicações. Os serviços de suporte e abertura de tickets para instâncias da edição básica permanecerão disponíveis até o prazo limite. Para mais detalhes, consulte o {{XREF_0}}.
Antes de começar
Selecione uma edição de instância: Antes de atualizar, consulte o {{XREF_1}} para decidir se deseja atualizar para a edição de desenvolvedor ou profissional. Para detalhes de faturamento, consulte {{XREF_2}}.
Avalie as especificações: Durante a atualização, o MSE Nacos realiza uma gravação dupla nos dados de serviços registrados para garantir a consistência dos dados e a estabilidade da atualização. Antes de começar, certifique-se de que a contagem de instâncias provedoras no seu cluster não exceda a contagem máxima de instâncias para a edição básica das especificações correspondentes, evitando que a gravação dupla afete seus serviços durante a atualização. Para mais informações, consulte {{XREF_3}}.
Verifique a versão do mecanismo: Você só pode atualizar uma instância da edição básica para a edição profissional ou de desenvolvedor se o seu mecanismo Nacos for da versão 1.2.1.0 ou posterior. Se você estiver usando uma versão 1.1.3.x, precisará primeiro atualizar para a versão 1.2.1 e, em seguida, atualizar a edição da instância. Para obter instruções, consulte {{XREF_4}}.
Revise a compatibilidade da versão do mecanismo: Para obter detalhes sobre os recursos das versões do mecanismo MSE Nacos, consulte {{XREF_5}}. Para garantir a estabilidade do sistema, recomendamos evitar versões restritas do SDK do Nacos. Para entender os motivos e as soluções, consulte {{XREF_6}}.
Mecanismo Eureka: O serviço Eureka gerenciado pelo MSE foi descontinuado. O MSE Nacos suporta o protocolo Eureka e é compatível com clientes Eureka. Recomendamos migrar suas instâncias da edição básica do Eureka para a edição profissional ou de desenvolvedor do MSE Nacos.
Impacto da atualização
A atualização leva cerca de 10 minutos. Durante esse período, você não pode realizar nenhuma operação na instância pelo console. Recomendamos realizar a atualização em horários de baixa demanda para evitar interrupções nos seus serviços.
Para instâncias com três ou mais nós, a atualização usa implantação contínua entre os nós com sincronização automática de dados, garantindo uma atualização sem tempo de inatividade.
Para a maioria dos serviços, a atualização ocorre sem perdas. No entanto, as reconexões de rede durante a atualização podem gerar alguns logs de erro de reconexão e acesso. Esse é um comportamento esperado. Os dados de monitoramento também podem apresentar breves flutuações devido à reinicialização do cluster.
-
Em alguns cenários especiais, não é possível garantir uma atualização sem perdas. Antes de realizar a atualização, verifique as seguintes condições:
Instâncias com um ou dois nós não são instâncias de alta disponibilidade (HA), portanto, a atualização causará tempo de inatividade.
Se você estiver usando um {{XREF_7}}, há uma probabilidade muito baixa de que a perda de pacotes ou outras anomalias desconhecidas durante a atualização acionem um bug no cliente, fazendo com que seus serviços fiquem offline. Nesse caso, a atualização causará tempo de inatividade.
Se você estiver usando um {{XREF_8}} e tiver configurado o caminho de verificação de integridade do Spring Cloud Actuator como a sondagem
livenessoureadinesspara o seu serviço, devido a um bug em versões mais antigas do Spring Cloud Alibaba, há uma probabilidade muito baixa de que a falha na sondagem faça com que sua aplicação seja reiniciada automaticamente. Nesse caso, a atualização causará tempo de inatividade.
-
Ao atualizar de um mecanismo Eureka para a edição profissional ou de desenvolvedor do Nacos:
Você não precisa modificar o código da sua aplicação.
As reconexões de rede durante a atualização podem fazer com que a renovação de heartbeat falhe para um pequeno número de instâncias registradas. Os clientes Eureka tentam registrar novamente de forma automática na próxima renovação e se recuperam após se conectarem a um nó de servidor íntegro.
Por padrão, uma instância da edição básica do Eureka é migrada para a edição de desenvolvedor ou profissional do Nacos com a versão 2.1.2.2 do mecanismo. Posteriormente, você pode atualizar para a versão mais recente do Nacos. Para mais informações, consulte {{XREF_9}}.
Caminho de atualização
Você só pode atualizar da edição básica para a edição profissional ou de desenvolvedor se o seu mecanismo Nacos for da versão 1.2.1.0 ou posterior. Se você estiver usando uma versão 1.1.3.x, precisará primeiro atualizar o mecanismo para a versão 1.2.1. Para obter instruções, consulte {{XREF_10}}.
Atualize a versão do mecanismo Nacos
O Nacos 1.1.3 foi descontinuado e não recebe mais manutenção. Para evitar problemas, atualize a versão do seu mecanismo para 1.2.1 ou posterior o mais rápido possível.
Não é possível reverter a versão pelo console após a atualização. Se tiver alguma dúvida, participe do grupo do DingTalk com o ID 43525005207 para obter assistência.
Faça login no console do MSE e selecione uma região na barra de navegação superior.
No painel de navegação à esquerda, escolha Microservices Registry > Instances.
-
Você pode iniciar a atualização pelo console de duas maneiras:
NotaSe a instância de destino já estiver na versão mais recente, a opção Manual Upgrade não será exibida.
Método 1
Na página Instances, encontre a instância de destino e clique em Manual Upgrade na coluna Engine Version.
Método 2
Na página Instances, clique na instância que deseja atualizar. Na página Basic Information, clique em Manual Upgrade ao lado de Engine Version.
Na caixa de diálogo Cluster Upgrade, clique em OK.
Atualize a edição básica do Nacos/Eureka
Faça login no console do MSE e selecione uma região na barra de navegação superior.
-
Na página Instances, encontre a instância do MSE e clique em More na coluna Actions.
Para uma instância de assinatura, selecione Upgrade ou Downgrade de acordo com os requisitos do seu negócio.
Para uma instância de pagamento conforme o uso, selecione Upgrade/Downgrade.
-
Na página de alteração de especificações, selecione uma Product Edition:
Para instâncias de nó único, selecione a edição de desenvolvedor.
Para instâncias de vários nós, selecione a edição profissional.
ImportanteAs seguintes limitações se aplicam ao alterar a Product Edition:
Uma instância da Basic Edition pode ser atualizada para a Developer Edition ou Professional Edition.
Uma instância da Developer Edition só pode ser atualizada para uma versão posterior da Developer Edition. Ela não pode ser atualizada para a Professional Edition.
Uma instância da Professional Edition só pode ser atualizada para uma versão posterior da Professional Edition. Ela não pode ser rebaixada para a Developer Edition.
Confirme a Engine specification e o Number of Cluster Nodes. Após verificar o custo total no canto inferior direito, clique em Buy now.
Perguntas frequentes
Versões do cliente
P: A edição profissional suporta clientes mais antigos?
O centro de configuração é compatível com o cliente Nacos 1.0.0 e posteriores. A descoberta de serviços é compatível com o cliente Nacos 1.2.0 e posteriores. Os clientes Nacos 1.x.x não suportam conexões persistentes, portanto, recomendamos o uso do cliente Nacos 2.0.0 ou posterior.
P: Como atualizar os clientes Spring Cloud Alibaba ou Dubbo?
Spring Cloud Alibaba
Para atualizar o cliente Nacos para o Spring Cloud Alibaba, especifique-o nas suas dependências:
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-registry-nacos</artifactId>
<version>${dubbo.version}</version>
<exclusions>
<exclusion>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
<version>2.0.2</version>
</dependency>
Dubbo
Para atualizar o cliente Nacos para o Dubbo, especifique-o nas suas dependências:
A versão 2.7.8 do Dubbo possui um bug crítico que cria instâncias excessivas do cliente Nacos, levando a um aumento abrupto nas conexões e threads. Atualize sua versão do Dubbo antes de atualizar o cliente Nacos. Para mais informações, consulte os detalhes do problema.
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-registry-nacos</artifactId>
<version>${dubbo.version}</version>
<exclusions>
<exclusion>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
<version>2.0.2</version>
</dependency>
Erros após a atualização
Erro: Connection is unregistered ou Client not connected,current status:STARTING
Sintoma: Após atualizar uma instância do MSE para a edição profissional e atualizar o cliente Nacos na sua aplicação, a aplicação falha ao iniciar e relata o erro
Connection is unregisteredouClient not connected,current status:STARTING.-
Causa: O cliente não consegue estabelecer uma conexão gRPC com o servidor. Siga estas etapas para solucionar o problema:
Teste a conectividade de rede executando o comando
telnet ${nacos.server.address}:9848.Verifique se a sua aplicação e a instância do MSE estão na mesma VPC.
Se você estiver conectando pela internet, primeiro precisará {{XREF_11}}.
Você não precisa alterar a configuração de porta na sua aplicação. Mantenha-a definida como 8848. O cliente Nacos calcula automaticamente a porta gRPC correta.
Erro: Nacos cluster is running with 1.X mode, can't accept gRPC request temporarily.
Sintoma: Após atualizar o MSE para a edição profissional e o cliente da aplicação, ocorre um erro de inicialização:
"Nacos cluster is running with 1.X mode, can't accept gRPC request temporarily.”.Causa: A edição profissional do MSE realiza uma gravação dupla para sincronizar dados entre as versões antiga e nova e garantir a consistência. Durante esse processo, ela rejeita temporariamente as solicitações de clientes Nacos 2.0.0. As solicitações de clientes Nacos 1.x.x e as operações do console não são afetadas. A transição é concluída automaticamente, geralmente em 5 a 20 minutos, dependendo do tamanho da instância.
Recomendação: Aguarde alguns minutos e reinicie sua aplicação.