As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Importante
O Amazon DocumentDB não segue os mesmos ciclos de vida de suporte do MongoDB e a programação do MongoDB não se aplica ao Amazon DocumentDB. end-of-life Não há planos atuais end-of-life para o Amazon DocumentDB 3.6, e seus drivers, aplicativos e ferramentas atuais do MongoDB 3.6 continuarão funcionando com o Amazon DocumentDB.
Você pode atualizar seu cluster Amazon DocumentDB para uma versão superior com o mínimo de tempo de inatividade usando. AWS DMS AWS DMS é um serviço totalmente gerenciado que facilita a migração de versões mais antigas do Amazon DocumentDB, bancos de dados relacionais e bancos de dados não relacionais para seu cluster de destino do Amazon DocumentDB.
Tópicos
Etapa 1: ativar fluxos de alterações
Para realizar uma migração com o mínimo de tempo de inatividade, é AWS DMS necessário acesso aos fluxos de alteração do cluster. Os fluxos de alterações do Amazon DocumentDB fornecem uma sequência ordenada pelo tempo dos eventos atualizados que ocorrem dentro das coleções e bancos de dados do seu cluster. A leitura do stream de alterações permite realizar AWS DMS a captura de dados de alteração (CDC) e aplicar atualizações incrementais ao cluster Amazon DocumentDB de destino.
Para habilitar fluxos de alteração para todas as coleções em um banco de dados específico, autentique-se em seu cluster Amazon DocumentDB usando o shell mongo e execute os seguintes comandos:
db.adminCommand({modifyChangeStreams: 1,
database: "db_name",
collection: "",
enable: true});
Etapa 2: modificar a duração da retenção dos fluxos de alterações
Em seguida, modifique o período de retenção do fluxo de alterações com base em quanto tempo você gostaria de manter os eventos de alteração no fluxo de alterações. Por exemplo, se você espera que a migração do cluster do Amazon DocumentDB leve 12 horas, você deve definir a retenção do fluxo de alterações para um valor maior que 12 horas. AWS DMS O período de retenção padrão para o cluster do Amazon DocumentDB é de três horas. Você pode modificar a duração da retenção do log do stream de alterações do seu cluster Amazon DocumentDB para que fique entre uma hora e sete dias usando o AWS Management Console ou o. AWS CLI Para obter mais detalhes, consulte Modificar a duração da retenção do log do fluxo de alterações.
Etapa 3: migrar seus índices
Crie os mesmos índices em seu cluster Amazon DocumentDB de destino que você tem em seu cluster Amazon DocumentDB de origem. Embora AWS DMS gerencie a migração de dados, ele não migra índices. Para migrar os índices, use a ferramenta de índice do Amazon DocumentDB para exportar índices do cluster de origem do Amazon DocumentDB. Você pode obter a ferramenta criando um clone do repositório de GitHub ferramentas do Amazon DocumentDB e seguindo as instruções em. README.md
No exemplo a seguir, substitua cada user input placeholder
por suas próprias informações.
O código a seguir despeja índices do seu cluster Amazon DocumentDB de origem:
python migrationtools/documentdb_index_tool.py --dump-indexes --uri
mongodb://sample-user:user-password@sample-source-cluster.node.us-east 1.docdb.amazonaws.com:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'
--dir ~/index.js/ 2020-02-11 21:51:23,245: Successfully authenticated to database: admin2020-02-11 21:46:50,432: Successfully connected to instance docdb-40-xx.cluster-xxxxxxxx.us-east-1.docdb.amazonaws.com:27017 2020-02-11 21:46:50,432: Retrieving indexes from server...2020-02-11 21:46:50,440: Completed writing index metadata to local folder: /home/ec2-user/index.js/
Depois que seus índices forem exportados com sucesso, restaure esses índices em seu cluster Amazon DocumentDB de destino. Para restaurar os índices que você exportou na etapa anterior, use a ferramenta de índice Amazon DocumentDB. O comando a seguir restaura os índices em seu cluster Amazon DocumentDB de destino a partir do diretório especificado.
python migrationtools/documentdb_index_tool.py --restore-indexes --uri
mongodb://sample-user:user-password@sample-destination-cluster.node.us-east 1.docdb.amazonaws.com:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'
--dir ~/index.js/ 2020-02-11 21:51:23,245: Successfully authenticated to database: admin2020-02-11 21:51:23,245: Successfully connected to instance docdb-50-xx.cluster-xxxxxxxx.us-east-1.docdb.amazonaws.com:27017 2020-02-11 21:51:23,264: testdb.coll: added index: _id
Para confirmar que você restaurou os índices corretamente, conecte-se ao seu cluster Amazon DocumentDB de destino com o shell mongo e liste os índices de uma determinada coleção. Use o seguinte código:
mongo --ssl
--host docdb-xx-xx.cluster-xxxxxxxx.us-east-1.docdb.amazonaws.com:27017
--sslCAFile rds-ca-2019-root.pem --username documentdb --password documentdb
db.coll.getIndexes()
Etapa 4: criar uma instância de AWS DMS replicação
Uma instância AWS DMS de replicação conecta e lê dados do seu cluster Amazon DocumentDB de origem e os grava no cluster Amazon DocumentDB de destino. A instância AWS DMS de replicação pode realizar operações de carga em massa e CDC. A maior parte desse processo ocorre na memória. No entanto, operações grandes podem exigir buffer no disco. Transações armazenadas em cache e arquivos de log também são gravados no disco. Depois que os dados são migrados, a instância de replicação também transmite quaisquer eventos de alteração para garantir que a origem e o destino estejam sincronizados.
Para criar uma instância de AWS DMS replicação:
-
Abra o AWS DMS console
. -
No painel de navegação, selecione Replication instances.
-
Selecione Criar instância de replicação e insira as seguintes informações:
Em Nome, insira um nome de sua escolha. Por exemplo,
docdb36todocdb40
.-
Em Descrição, insira uma descrição de sua escolha. Para o item de lista, a instância de replicação do Amazon DocumentDB 3.6 para o Amazon DocumentDB 4.0.
-
Para a classe Instância, escolha o tamanho com base em suas necessidades.
-
Para a versão Mecanismo, escolha
3.4.1.
-
Para a Amazon VPC, escolha a Amazon VPC que abriga seus clusters Amazon DocumentDB de origem e destino.
-
Para Armazenamento alocado (GiB), use o padrão de 50 GiB. Se você tiver uma workload de alto throughput de gravação, aumente esse valor para corresponder à sua workload.
-
Para Multi-AZ, escolha Sim se precisar de alta disponibilidade e suporte de failover.
Para Acessível publicamente, habilite esta opção.
Selecione Create replication instance.
Etapa 5: criar um endpoint AWS DMS de origem
O endpoint de origem é usado para o cluster Amazon DocumentDB de origem.
Para criar um endpoint de origem
-
Abra o AWS DMS console
. -
No painel de navegação, escolha Endpoints.
-
Escolha
Create endpoint
e insira as seguintes informações:Em Tipo de endpoint, selecione Origem.
>Em Identificador do endpoint, insira um nome que seja fácil de lembrar, por exemplo
docdb-source
.Em Mecanismo de origem, escolha
docdb
.Em Nome do servidor, insira o nome DNS do cluster do Amazon DocumentDB de sua origem.
Em Porta, insira o número da porta do cluster do Amazon DocumentDB de sua origem.
Para Modo SSL, escolha
verify-full
.Para certificado CA, escolha Adicionar novo certificado CA. Baixe o novo certificado CA
para criar um pacote de conexões TLS. Para Identificador de certificado, insira rds-combined-ca-bundle
. Para Importar arquivo de certificado, escolha Escolher arquivo e navegue até o arquivo.pem
que você baixou anteriormente. Selecione e abra o arquivo. Escolha Importar certificado, erds-combined-ca-bundle
na lista suspensa selecione Escolher um certificado-
Em Nome de usuário, insira o nome de usuário principal do seu cluster de origem do Amazon DocumentDB.
-
Em Senha, digite a senha principal do cluster se origem do Amazon DocumentDB.
-
Em Nome do banco de dados, insira o nome do banco de dados que você deseja atualizar.
Teste sua conexão para verificar se ela foi configurada com sucesso.
Escolha Criar Endpoint.
nota
AWS DMS só pode migrar um banco de dados por vez.
Etapa 6: criar um endpoint de AWS DMS destino
O endpoint de destino é para seu cluster Amazon DocumentDB de destino.
Para criar um endpoint de destino:
-
Abra o console de AWS DMS
. -
No painel de navegação, escolha Endpoints.
-
Selecione Criar endpoint e insira as seguintes informações:
Em Tipo de endpoint, selecione Destino.
Em Identificador de endpoint, insira um nome que seja fácil de lembrar, por exemplo
docdb-target
.Em Mecanismo de origem, escolha
docdb
.Em Nome do servidor, insira o nome DNS do cluster do Amazon DocumentDB de seu destino.
Em Porta, insira o número da porta do cluster do Amazon DocumentDB de seu destino.
Para Modo SSL, escolha
verify-full
.-
Para certificado CA, escolha o
rds-combined-ca-bundle
certificado existente no menu suspenso Escolher um certificado. -
Em Nome de usuário, insira o nome de usuário principal do seu cluster de destino do Amazon DocumentDB.
Em Senha, insira a senha principal do cluster de destino do Amazon DocumentDB.
-
Em Nome do banco de dados, insira o mesmo nome do banco de dados que você usou para configurar seu endpoint de origem.
-
Teste sua conexão para verificar se ela foi configurada com sucesso.
-
Escolha Criar Endpoint.
Etapa 7: criar e executar uma tarefa de migração
Uma AWS DMS tarefa vincula a instância de replicação à sua instância de origem e de destino. Ao criar uma tarefa de migração, você especifica o endpoint da origem, o endpoint de destino e a instância de replicação, com todas as configurações de migração. Uma AWS DMS tarefa pode ser criada com três tipos diferentes de migração: migrar dados existentes, migrar dados existentes e replicar alterações em andamento ou replicar somente alterações de dados. Como o objetivo dessa apresentação é atualizar um cluster do Amazon DocumentDB com o mínimo de tempo de inatividade, as etapas utilizam a opção de migrar dados existentes e replicar as alterações em andamento. Com essa opção, AWS DMS captura as alterações ao migrar seus dados existentes. AWS DMS continua capturando e aplicando alterações mesmo após o carregamento dos dados em massa. Por fim, os bancos de dados de origem e de destino ficarão sincronizados, permitindo uma migração com tempo de inatividade mínimo.
Abaixo estão as etapas para criar uma tarefa de migração para uma migração com o mínimo de tempo de inatividade:
-
Abra o AWS DMS console
. -
No painel de navegação, escolha Tarefas de migração de banco de dados.
-
Escolha Criar tarefa de migração de banco de dados e insira as seguintes informações na seção Configuração da tarefa:
Em Identificador da tarefa, insira um nome que seja fácil de lembrar, por exemplo
my-dms-upgrade-task
.Em Nome descritivo de recurso da Amazon (ARN), insira um nome fácil de usar para substituir o ARN padrão do DMS.
Em Replication instance (Instância de replicação), escolha a instância de replicação que você criou em Etapa 4: criar uma instância de AWS DMS replicação.
Para Endpoint do banco de dados de origem, escolha o endpoint de origem que você criou em. Etapa 5: criar um endpoint AWS DMS de origem
Para Ponto final do banco de dados de destino, escolha o endpoint de destino que você criou em. Etapa 6: criar um endpoint de AWS DMS destino
-
Em Tipo de migração, escolha Migrar e replicar.
-
Insira as seguintes informações na seção Configurações da tarefa:
-
Na seção Modo de preparação da tabela de destino, escolha Não fazer nada. Isso garantirá que os índices criados na etapa 3 não sejam descartados.
-
Na subseção Registros de tarefas, selecione Ativar CloudWatch registros.
-
Para a configuração de inicialização da tarefa de migração, escolha Automaticamente ao criar. Isso iniciará a tarefa de migração automaticamente assim que você a criar.
-
Escolha Criar tarefa de migração de banco de dados.
-
AWS DMS agora começa a migrar dados do seu cluster Amazon DocumentDB de origem para seu cluster Amazon DocumentDB de destino. O status da tarefa deve alterar de Iniciando para Em execução. Você pode monitorar o progresso escolhendo Tarefas no AWS DMS console. Depois de vários minutos/horas (dependendo do tamanho da migração), o status deve mudar de Carga concluída, replicação em andamento. Isso significa que AWS DMS concluiu uma migração de carga completa do seu cluster Amazon DocumentDB de origem para um cluster Amazon DocumentDB de destino e agora está replicando eventos de alteração.

Eventualmente, sua origem e destino estarão sincronizados. É possível verificar se eles estão sincronizados executando uma operação count()
em suas coleções para verificar se todos os eventos de alteração foram migrados.
Etapa 8: alterar o endpoint da aplicação para o cluster Amazon DocumentDB de destino
Depois que a carga completa estiver concluída e o processo de CDC estiver sendo replicado continuamente, você estará pronto para alterar o endpoint de conexão de banco de dados da sua aplicação do seu cluster Amazon DocumentDB de origem para seu cluster Amazon DocumentDB de destino.