Este guia explica como migrar de um registro ZooKeeper autogerenciado para Dubbo para um registro MSE ZooKeeper.
Pré-requisitos
Implante a ferramenta MSE Sync. Para mais informações, consulte MSE Sync migration solution.
Crie um cluster MSE ZooKeeper. Para mais informações, consulte Create a ZooKeeper engine.
Limitações
Falhas na ferramenta MSE Sync podem interromper o service de sincronização. Para garantir alta disponibilidade, implante pelo menos dois nós para a ferramenta. Após iniciar a migração, conclua todas as etapas prontamente.
Garanta a conectividade de rede entre o cluster ZooKeeper de source, a ferramenta MSE Sync e o cluster MSE ZooKeeper de destino.
Especificações
|
Serviços Dubbo |
Provedores |
Consumidores |
Especificações mínimas da instância |
Especificações mínimas da ferramenta |
|
0 a 1.000 |
0 a 3.000 |
0 a 9.000 |
2 núcleos, 4 GB |
2 núcleos, 4 GB |
|
1.000 a 4.000 |
0 a 12.000 |
0 a 36.000 |
4 núcleos, 8 GB |
4 núcleos, 8 GB |
|
4.000 a 7.000 |
0 a 21.000 |
0 a 63.000 |
8 núcleos, 16 GB |
4 núcleos, 8 GB |
|
7.000 a 10.000 |
0 a 30.000 |
0 a 90.000 |
16 núcleos, 32 GB |
8 núcleos, 16 GB |
Especificações mínimas da instância: Implante pelo menos três nós para ambientes de produção e cinco nós para ambientes de missão crítica.
Especificações mínimas da ferramenta: Para alta disponibilidade, implante pelo menos dois nós.
Procedimento
A figura a seguir mostra a arquitetura de implantação para a migração.
Etapa 1: Crie uma tarefa de sincronização
-
No painel de navegação à esquerda da ferramenta MSE Sync, clique em Cluster configuration e, em seguida, clique em Add Cluster. Na caixa de diálogo Add Cluster, configure o cluster ZooKeeper de source e clique em OK.
Parâmetro
Descrição
Cluster Name
Insira um nome personalizado para o cluster.
Cluster type
ZK
Cluster IP address list
Insira o endereço IP e a porta de cada nó no cluster ZooKeeper de source, um por linha. A porta padrão é 2181. Exemplo:
127.0.0.1:2181 127.0.0.2:2181 127.0.0.3:2181Se o cluster de source utilizar uma instância do Server Load Balancer (SLB) para balanceamento de carga, insira o endereço IP e a porta da instância SLB no campo Cluster IP address list.
-
Clique em Add Cluster novamente para adicionar o cluster ZooKeeper de destino.
Cluster type: Selecione ZK.
Cluster IP address list: Insira o endpoint e a porta de service do cluster MSE ZooKeeper de destino. Exemplo: mse-8b7de****-p.zk.mse.aliyuncs.com:2181.
Clique em Add Cluster, insira um Cluster Name (por exemplo, MSE zk) na caixa de diálogo e clique em OK.
-
No painel de navegação à esquerda, clique em Sync Task e, em seguida, clique em New Sync para adicionar os serviços Dubbo para migração.
Sync Method: Selecione Bidirectional. Essa opção ativa a sincronização bidirecional, que replica alterações entre os clusters de source e de destino.
Synchronization Type: Selecione Service Information. O MSE Sync lista automaticamente todos os serviços no cluster de source. Selecione os serviços desejados.
Group name: Se estiver sincronizando vários serviços, deixe este parâmetro vazio. Caso contrário, insira um nome de grupo Dubbo específico.
Selecione Source ZK na lista suspensa Source Cluster, selecione MSE zk na lista suspensa Target Cluster, selecione com.example.IHelloService na lista de serviços e clique em OK.
-
Clique em OK.
Na página Service Synchronization da ferramenta de migração, visualize os nomes dos serviços sincronizados.
Após adicionar as tarefas, visualize as tarefas de sincronização criadas na lista Synchronization Tasks, incluindo o cluster de source, o cluster de destino, o progresso da tarefa e o tipo de tarefa. Quando o progresso da tarefa exibir Synchronization Complete (Listening), os dados foram sincronizados e as alterações na source estão sendo monitoradas continuamente.
Etapa 2: Verifique o resultado da sincronização
Faça login no console MSE e selecione uma região na barra de navegação superior.
No painel de navegação à esquerda, escolha Microservices Registry > Instances.
Na página Instances, clique em o nome da instância.
No painel de navegação à esquerda, escolha . Verifique se os serviços estão listados no caminho padrão do Dubbo.
Etapa 3: Migrar os clientes Dubbo
-
Altere o endpoint na configuração do seu cliente Dubbo.
Localize o arquivo de configuração XML do seu cliente Dubbo. No atributo
dubbo:registry address, substitua o endpoint do seu ZooKeeper autogerenciado pelo endpoint do registro MSE ZooKeeper.Antes:
<dubbo:registry address="zookeeper://127.0.0.1:2181"/>Depois:
<dubbo:registry address="zookeeper://mse-8b7de****-p.zk.mse.aliyuncs.com:2181"/> -
Reinicie as aplicações cliente. Elas se conectarão ao registro MSE ZooKeeper.
NotaPara evitar interrupções de service, reinicie os clientes em lotes. Após reiniciar todos os clientes, verifique se eles se desconectaram do cluster de source.
Etapa 4: Desativar o cluster de source
Desligue o cluster ZooKeeper de source.
Pare a ferramenta MSE Sync.