Para ler o oplog de um nó de shard específico — por exemplo, para implementar sincronização de dados ou backups incrementais — você precisa de um endpoint de conexão direta para esse shard. Por padrão, a conexão com um cluster sharded do ApsaraDB for MongoDB ocorre por meio de um nó Mongos. Embora isso seja suficiente para a maioria das cargas de trabalho de leitura e escrita, essa abordagem não expõe os oplogs individuais de cada shard.
Informações de fundo
Uma instância de cluster sharded do ApsaraDB for MongoDB é composta por três componentes: Mongos, Shard e Configserver. Você pode selecionar a quantidade e a configuração dos componentes de shard para criar instâncias de cluster sharded com diferentes níveis de desempenho.
Pré-requisitos
Antes de começar, verifique se você possui:
Uma instância de cluster sharded
O protocolo MongoDB configurado na instância
Observações de uso
Ao solicitar um endpoint de shard, o sistema cria endpoints para os nós primário, secundário e somente leitura desse shard. Como cada endpoint exige um endereço IP, certifique-se de ter endereços IP suficientes disponíveis.
O tipo de rede do endpoint de shard deve corresponder ao tipo de rede do nó Mongos.
Não é possível modificar um endpoint de shard após sua criação.
Este tópico descreve como solicitar um endpoint privado. Para acessar o shard pela Internet, solicite primeiro um endpoint privado, defina uma conta e senha e, em seguida, solicite um endpoint público. Para mais informações, consulte Solicitar um endpoint público para uma instância.
Se sua instância utilizar discos locais, você poderá solicitar uma conta de conexão direta durante a solicitação do endpoint de shard. Caso utilize discos em nuvem, crie primeiro uma conta de conexão direta na página Account Management antes de solicitar o endpoint de shard.
A solicitação de endpoint está disponível apenas para shards em instâncias de cluster sharded.
Solicitar um endpoint de shard
Os procedimentos variam conforme o tipo de disco da instância (nuvem ou local). Identifique o tipo de disco e siga o procedimento correspondente.
Instâncias que utilizam discos em nuvem
A solicitação de um endpoint de shard em uma instância com disco em nuvem causa conexões transitórias nas conexões existentes. Certifique-se de que sua aplicação possua um mecanismo de reconexão automática. Execute esta operação fora dos horários de pico para minimizar impactos.
Crie uma conta de shard apenas na primeira vez que solicitar um endpoint de shard nesta instância. Ignore a Etapa 1 nas solicitações subsequentes.
Etapa 1: Criar uma conta de shard
Acesse a página Sharded Cluster Instances. No canto superior esquerdo, selecione um grupo de recursos e uma região e clique em ID da instância desejada.
No painel de navegação à esquerda, clique em Accounts.
Clique em Create Account.
-
No painel Create Account(Only shards are supported.), defina os seguintes parâmetros:
Parâmetro
Descrição
Account Name
Deve começar com uma letra minúscula. Pode conter letras minúsculas, dígitos e sublinhados (_). O comprimento deve ser de 4 a 16 caracteres. Palavras-chave não são permitidas. A conta possui permissões de somente leitura.
Account Password
Deve ter entre 8 e 32 caracteres e incluir pelo menos três dos seguintes tipos: letras maiúsculas, letras minúsculas, dígitos e caracteres especiais (
!@#$%^&*()_+-=). Para redefinir a senha posteriormente, consulte Redefinir uma senha.Confirm Password
Insira a senha novamente.
Clique em OK.
Etapa 2: Criar um endpoint de shard
No painel de navegação à esquerda, clique em Database Connections.
Na seção Internal Connections, clique em Create-Shard-Cs-Connections.
-
No painel Create-Shard-Cs-Connections, defina os seguintes parâmetros:
Parâmetro
Descrição
Node Type
Fixo como Shard.
Select Node ID
Selecione o ID do nó de shard para o qual deseja criar um endpoint.
Clique em OK.
Aguarde até que o status da instância mude de Creating Network Connection para Running.
Na seção Internal Connections, visualize o endpoint recém-criado.
Instâncias que utilizam discos locais
Alternativamente, acesse a página Basic Information da instância, localize a seção Shard List e clique em Add Shard . Ative a opção de conexão direta e solicite um endpoint na seção Apply For Shard Direct Connection Endpoint .
Defina o nome da conta e a senha apenas na primeira vez que solicitar um endpoint de shard ou de nó Configserver nesta instância. Em solicitações posteriores, esses campos não são obrigatórios.
Acesse a página Sharded Cluster Instances. No canto superior esquerdo, selecione um grupo de recursos e uma região e clique em ID da instância desejada.
No painel de navegação à esquerda, clique em Database Connections.
Na seção Internal Connections, clique em Create-Shard-Cs-Connections.
-
No painel Create-Shard-Cs-Connections, defina os seguintes parâmetros:
Parâmetro
Descrição
Node Type
Fixo como Shard.
Select Node ID
Selecione o ID do nó de shard para o qual deseja criar um endpoint.
Account Name
Deve começar com uma letra minúscula. Pode conter letras minúsculas, dígitos e sublinhados (_). O comprimento deve ser de 4 a 16 caracteres. Palavras-chave não são permitidas. A conta possui permissões de somente leitura.
Account Password
Deve ter entre 8 e 32 caracteres e incluir pelo menos três dos seguintes tipos: letras maiúsculas, letras minúsculas, dígitos e caracteres especiais (
!@#$%^&*()_+-=). Para redefinir a senha posteriormente, consulte Redefinir uma senha.Confirm Password
Insira a senha novamente.
Clique em OK.
Aguarde até que o status da instância mude de Creating Network Connection para Running.
Na seção Internal Connections, visualize o endpoint recém-criado.
Próximos passos
Conecte-se ao nó de shard usando o endpoint recém-criado para ler seu oplog ou executar operações diretas no shard.
Caso não precise mais do endpoint de shard, libere-o. Para mais informações, consulte Liberar o endpoint de um shard ou nó Configserver.