Use a replicação remota do Harbor para sincronizar imagens unilateralmente com uma instância do Container Registry Enterprise Edition e configure um endpoint personalizado para implementar a recuperação de desastres geográfica dos seus repositórios de imagens.
Caso não queira sincronizar imagens usando a capacidade de replicação remota do Harbor ou se a velocidade de sincronização for prioridade, consulte Migrate self-managed Harbor to Container Registry Enterprise Edition.
Pré-requisitos
Uma instância do Container Registry Enterprise Edition criada. Para mais informações, consulte Create an Enterprise Edition instance.
Procedimento
Sincronizar imagens de um registro do Harbor com uma instância do Container Registry Enterprise Edition
Se o registro do Harbor estiver implantado em um data center, conecte-o à instância Enterprise Edition por meio da VPC onde essa instância reside. Para mais informações, consulte Access an Enterprise Edition instance across regions or from a data center.
Etapa 1: Criar um namespace
Faça login no console do Container Registry.
Na barra de navegação superior, selecione uma região.
No painel de navegação à esquerda, clique em Instances.
Na página Instances, clique na instância do Container Registry Enterprise Edition para a qual deseja sincronizar as imagens.
No painel de navegação à esquerda da página de gerenciamento da instância do Container Registry Enterprise Edition, escolha .
Na página Namespace, clique em Create Namespace.
-
Na barra lateral Create Namespace, configure o Namespace e selecione On ou Off em Automatically Create Repository. Em seguida, clique em Confirm.
Parâmetro
Descrição
Namespace
Insira o nome do projeto no Harbor que você deseja sincronizar. Exemplo: test-project.
Automatically Create Repository
Selecione Open.On.
NotaSe selecionar Close, crie um repositório no namespace antes de sincronizar as imagens.Off: é necessário criar um repositório no namespace antes de sincronizar a imagem.
Etapa 2: Configurar o repositório de destino no Harbor
Faça login no Harbor.
No painel de navegação à esquerda, escolha .
Na página Repository, clique em NEW ENDPOINT.

-
Na caixa de diálogo New Registry Endpoint, configure os parâmetros descritos na tabela a seguir.
Parâmetro
Descrição
Provisioner
Selecione Docker Registry na lista suspensa.
Name
Insira um nome para o novo endpoint.
Description
Insira uma descrição para o novo endpoint.
Endpoint URL
Insira o endpoint do repositório de destino da instância do Container Registry Enterprise Edition. Certifique-se de que o controle de acesso esteja ativado. Para mais informações, consulte Configure VPC access control e Configure Internet access.
A instância do Container Registry Enterprise Edition está implantada em uma VPC.
Exemplo de endpoint do repositório de destino:
https://<Name of the Container Registry Enterprise Edition instance>-registry-vpc.cn-qingdao.cr.aliyuncs.com.A instância do Container Registry Enterprise Edition está implantada na Internet.
Exemplo de endpoint do repositório de destino:
https://<Name of the Container Registry Enterprise Edition instance>-registry.cn-qingdao.cr.aliyuncs.com.
Access ID
Insira o nome de login do repositório de destino, igual ao da sua conta Alibaba Cloud.
Password
Insira a senha usada para acessar o repositório de destino. Para mais informações, consulte Use a permanent password.

Clique em Test Connection. Se a mensagem Connection tested successfully aparecer, os parâmetros inseridos são válidos. Clique em Confirm.

Etapa 3: Configurar uma regra de sincronização
Faça login no Harbor.
No painel de navegação à esquerda, escolha System Management > Replications.
Na página Replications, clique em Create Rule.

-
Na caixa de diálogo Create Rule, configure os parâmetros conforme descrito na tabela abaixo. Em seguida, clique em Save.
Parâmetro
Descrição
Name
Insira um nome para a regra de sincronização.
Description
Forneça uma descrição para a regra de sincronização.
Replication mode
Selecione Push-based.
Source resource filter
Siga as instruções na tela para configurar este parâmetro, utilizado para filtrar os recursos que você deseja sincronizar. O valor padrão do parâmetro Resource na seção "Source resource filter" é All.
Target
Escolha o repositório de destino configurado na Etapa 2.
Target
No campo Namespace, insira o namespace criado na Etapa 1 na instância do Container Registry Enterprise Edition. O parâmetro Flattening simplifica a hierarquia do repositório durante a replicação. Selecione Flatten 1 Level para que, por exemplo, harbor-project/nginx seja replicado como
acr-ns/nginxapós selecionar Flatten Level 1.Trigger Mode
Defina um modo de acionamento. Para sincronizar alterações de imagem do Harbor, selecione Event-driven Operations.
Bandwidth
Especifique um valor para limitar a largura de banda máxima da rede durante a sincronização. O valor padrão é -1, indicando que não há limite imposto à largura de banda máxima.

Na coluna Name da página Replications, selecione a regra criada na etapa anterior e clique em Copy. Assim, as imagens existentes no registro do Harbor serão replicadas para a instância do Container Registry Enterprise Edition. Quando o status da tarefa de replicação mudar para Succeeded, a sincronização estará concluída. Alterações subsequentes no repositório de imagens do Harbor serão sincronizadas com a instância do Container Registry Enterprise Edition no modo de acionamento baseado em eventos.

Configurar um endpoint personalizado para implementar recuperação de desastres geográfica
O Container Registry Enterprise Edition oferece suporte ao recurso de endpoint personalizado, permitindo adicionar endpoints e certificados SSL personalizados às instâncias. Dessa forma, é possível usar esses endpoints para acessar as instâncias do Container Registry Enterprise Edition via HTTPS.
Escolha uma das soluções de recuperação de desastres abaixo, conforme seu ambiente de rede.
Solução 1: O registro do Harbor está implantado na Alibaba Cloud e o acesso à instância do Container Registry Enterprise Edition ocorre pela Internet
Neste exemplo, a instância do Container Registry Enterprise Edition está implantada na região China (Hangzhou) e o registro do Harbor está na região China (Zhangjiakou). Ambas compartilham o mesmo endpoint e possuem o PrivateZone configurado. Para saber como configurar o PrivateZone, consulte Accessing an instance with a custom domain name.
A tabela a seguir apresenta as informações básicas sobre a instância do Container Registry Enterprise Edition e o registro do Harbor.
|
ID da instância |
Endpoint público |
VPC associada |
Endpoint personalizado |
|
ACR-A |
a-registry.cn-hangzhou.cr.aliyuncs.com |
vpc-aaaaa |
cross-region.registry.io |
|
Harbor-B |
- |
vpc-bbbbb |
cross-region.registry.io |
Se o registro do Harbor na região China (Zhangjiakou) falhar e as aplicações não conseguirem enviar ou baixar imagens dele, modifique a resolução do PrivateZone para o endpoint personalizado. Isso permitirá baixar as imagens sincronizadas da instância do Container Registry Enterprise Edition em outra região. Procedimento:
Faça login no Alibaba Cloud DNS console.
No painel de navegação à esquerda, clique em Private Zone.
Na aba Authoritative Zone, insira o endpoint personalizado
cross-region.registry.iopara buscar zonas. Duas zonas serão exibidas. Clique na zona associada à VPCvpc-bbbbb.Na aba Resource Record Settings, localize o registro que deseja editar e clique em Modify na coluna Actions.
-
No painel Modify Record, configure os parâmetros descritos na tabela abaixo e clique em Confirm.
Parâmetro
Descrição
Record Type
Selecione CNAME.
Hostname
Defina este parâmetro como @.
Record Value
Defina este parâmetro como o endpoint público da instância do Container Registry Enterprise Edition:
a-registry.cn-hangzhou.cr.aliyuncs.com.TTL
Mantenha o valor padrão.
Solução 2: O registro do Harbor não está implantado na Alibaba Cloud e o acesso à instância do Container Registry Enterprise Edition ocorre pela Internet
Configure o endpoint personalizado da instância do Container Registry Enterprise Edition para corresponder ao endpoint do registro do Harbor. Exemplo: www.ha****.com. Para mais informações, consulte Accessing an instance with a custom domain name.
Caso o registro do Harbor falhe e as aplicações não consigam enviar ou baixar imagens, modifique a resolução DNS para que o endpoint do Harbor (por exemplo, www.harbor.com) aponte para o endereço IP público da instância do Container Registry Enterprise Edition. Assim, as aplicações poderão acessar a instância pela Internet para realizar push e pull de imagens.
Solução 3: O registro do Harbor não está implantado na Alibaba Cloud e o acesso à instância do Container Registry Enterprise Edition ocorre pela VPC
Se o registro do Harbor falhar e as aplicações não conseguirem enviar ou baixar imagens, obtenha o endereço IP privado da instância do Container Registry Enterprise Edition. Configure uma regra de roteamento e a resolução DNS para que o endpoint do Harbor (por exemplo, www.harbor.com) resolva para esse endereço IP. Dessa maneira, as aplicações poderão acessar a instância do Container Registry Enterprise Edition pela VPC para enviar e baixar imagens. Para mais informações, consulte Access an Enterprise Edition instance across regions or from a data center.