Quando você habilita o Direct to S3 Backup, o MongoDB Agent faz upload dos blocos de snapshot diretamente para o S3 usando URLs pré-assinadas que o MongoDB Ops Manager fornece. O MongoDB Ops Manager lida apenas com os metadados para o upload, como a geração de URLs pré-assinadas, o rastreamento do manifesto de bloco e a sinalização de conclusão. O caminho de dados do snapshot ignora o MongoDB Ops Manager e não flui mais pelo servidor do MongoDB Ops Manager. Isso remove o gargalo de proxy para grandes implantação e agendar de backup frequentes.
Este tópico explica como habilitar o Direct to S3 Backup e como configurar suas definições opcionais.
Importante
O backup direto para o S3 requer o MongoDB Ops Manager 9.0.0 ou posterior, ou o MongoDB Ops Manager 8.0.27 ou posterior, e uma versão mínima do MongoDB Agent em cada host que executa o backup:
Versão do Ops Manager | Versão mínima do MongoDB Agent |
|---|---|
9.0 |
|
8.0 |
|
Como funciona o backup direto para S3
Quando o Direct to S3 Backup está habilitado em uma tarefa de backup e o MongoDB Agent na implantação atende ao requisito de versão mínima, o MongoDB Ops Manager executa as seguintes ações:
O MongoDB Ops Manager gera URLs de upload pré-assinadas usando as credenciais do S3 configuradas para o snapshot blockstore. As URLs apontam para o mesmo bucket S3 que o blockstore usa.
O MongoDB Ops Manager define
uploadPath=AGENT_DIRECT_S3na descrição do cursor de backup. O MongoDB Agent lê esse valor, congela o caminho de upload da tarefa e faz o upload dos blocos de snapshot diretamente para o S3 usando essas URLs pré-assinadas.O MongoDB Ops Manager acompanha a conclusão do upload por meio das APIs de manifesto de bloco. Nenhuma chamar de upload de proxy
/dataBlocksocorre.
Como o MongoDB Agent faz upload de dados de snapshot diretamente para o S3, o MongoDB Ops Manager não fica mais no caminho de dados para backups. O MongoDB Ops Manager permanece responsável apenas pelos metadados de backup.
Coexistência e fallback
O backup direto para o S3 e os backups padrão que transmitem dados pelo MongoDB Ops Manager podem coexistir.
Em uma tarefa em que você habilita o Direct to S3 Backup, o MongoDB Ops Manager retorna ao caminho padrão quando a versão do MongoDB Agent está abaixo do mínimo. O fallback dura até que você atualize o MongoDB Agent. Frotas de versões mistas continuam a fazer backup com sucesso:
As implantações que atendem ao requisito de versão usam o backup direto para S3.
As implantações que não atendem ao requisito de versão usam o caminho de dados padrão. A tarefa muda automaticamente para Direct to S3 Backup no primeiro snapshot após você atualizar o MongoDB Agent, sem necessidade de nenhuma outra ação. Um snapshot que já está em andamento é concluído em seu caminho de upload original.
Além disso, você pode ativar ou desativar manualmente o backup direto para S3 para uma tarefa, conforme descrito abaixo.
Observação
O Direct to S3 Backup aplica-se apenas aos dados de bloco de snapshot. Os dados de oplog para recuperação point-in-time continuam a usar o caminho de backup padrão através do armazenar de oplog configurado.
Pré-requisitos
Antes de habilitar o Direct to S3 Backup:
Certifique-se de que você esteja executando o Ops Manager 9.0.0 ou posterior, ou o Ops Manager 8.0.27 ou posterior.
Garanta uma versão do MongoDB Agent de pelo menos
109.0.0.9279-1para implantações do MongoDB Ops Manager 9.0, ou108.0.27.9088-1para implantações do MongoDB Ops Manager 8.0, em cada host que executa o backup.Certifique-se de que a implantação tenha um armazenamento de snapshots S3 (blockstore). O MongoDB Ops Manager usa o mesmo bucket S3 e as mesmas credenciais que o blockstore usa.
Acesso à rede do hospedar de backup
Cada host que executa um backup deve ser capaz de:
Resolva o nome DNS do ponto de extremidade compatível com S3 ou S3
Estabeleça conexões HTTPS de saída para esse ponto de extremidade
Carregar dados usando as URLs pré-assinadas S3 que o MongoDB Ops Manager gera
Ao habilitar o Direct to S3 Backup, o caminho de upload de alto volume muda dos servidores de aplicativos do MongoDB Ops Manager para cada hospedar que executa um MongoDB Agent. Anteriormente, apenas os servidores do MongoDB Ops Manager precisavam de acesso à rede ao S3. Verifique a conectividade de saída de um host de backup para o ponto de extremidade S3 antes de habilitar o recurso.
Agentes do MongoDB não exigem3 chaves de acesso S ou funções do IAM. O MongoDB Ops Manager gera todos os URLs pré-assinados usando as credenciais S3 configuradas para o armazenamento de snapshots. Essas credenciais devem permitir operações pré-assinadas PUT no bucket, não apenas leituras.
Habilitar backup direto para S3
Para habilitar o backup Direct to S3, conclua as etapas a seguir.
Habilite a flag de recurso de backup Direct to S3.
No console do Ops Manager Admin, clique em General e Ops Manager Config.
Clique na aba Custom.
Adicione um dos seguintes pares de chave e valor para habilitar o backup Direct to S3 no nível global ou de projeto:
Nível de acessoChaveValorProjeto
mms.featureFlag.backup.d2s3controlledGlobal
mms.featureFlag.backup.d2s3enabledClique em Save.
(Condicional) Habilite o Backup Direct to S3 no projeto.
Se você definiu o sinalizador como controlled na etapa anterior, habilite o recurso nas configurações do seu projeto:
Em seu projeto do Ops Manager, clique em Settings.
Clique na aba Beta Features e clique em Backup Direct To S3.
(Condicional) Habilite o backup direto para S3 em tarefas de backup existentes.
Em um projeto onde você habilitou o Direct to S3 Backup, as novas tarefa de backup começam com o Direct to S3 Backup já habilitado. O primeiro snapshot de cada nova tarefa é carregado diretamente para o S3, e nenhuma ação por tarefa é necessária.
As tarefa de backup que existiam antes de você habilitar o recurso mantêm suas configurações existentes. Você também pode habilitar ou desabilitar o Direct to S3 Backup em qualquer tarefa. Para alterar a configuração de uma tarefa:
Clique em Admin, Backup e depois em Jobs.
Para a tarefa de destino, localize a linha Direct S3 Backup. A linha aparece apenas quando o armazenamento de snapshots da tarefa é um blockstore S3.
Defina Direct S3 Backup como Enabled ou Disabled.
Para clusters, selecione Apply to all cluster members para habilitar o recurso em cada shard e no servidor de configuração.
Clique em Save.
Verifique a versão do agente em cada hospedar.
Verifique a versão de cada MongoDB Agent que executa o backup e garanta que ela atenda à versão mínima para sua implantação do MongoDB Ops Manager.
A tabela a seguir resume quando uma tarefa de backup usa o Direct to S3 Backup:
Cenário | Caminho de upload |
|---|---|
Tarefa criada após você habilitar o recurso no projeto | Direto para o backup S3, começando com o primeiro snapshot |
Tarefa criada antes de você habilitar o recurso no projeto | Caminho padrão até que você habilite o backup Direct to S3 na tarefa |
Tarefa com backup direto para S3 habilitado e um MongoDB Agent abaixo da versão mínima | Caminho padrão até você atualizar o MongoDB Agent. A tarefa muda para o backup direto para S3 no primeiro snapshot após a atualização. |
Gerenciar configurações opcionais
As seguintes configurações opcionais ajustam o desempenho do upload do Direct to S3 Backup.
mms.backup.d2s3.transfer.numWorkersNúmero de workers de upload paralelos que o MongoDB Agent usa para uploads de Backup Direct to S3. Padrão:
2. Você também pode definir uma substituição por tarefa.Configure essa definição no arquivo de configuração do MongoDB Ops Manager junto com as outras propriedades
mms.backup.*. Se você definir essa propriedade, o MongoDB Agent usará esse número exato de trabalhadores e ignorará seu próprio ajuste automático. Se você deixá-la sem definição, o MongoDB Agent dimensiona a contagem de trabalhadores com base na CPU e na memória do hospedar.mms.backup.d2s3.transfer.maxNumUnitOfWorkBlocksNúmero máximo de blocos por unidade de trabalho para o caminho de upload Direct to S3. Quando não definido, o MongoDB Agent retorna a um padrão interno de
100.Configure esta definição usando uma das seguintes opções:
Aplicar configurações globais do Ops Manager na interface do Ops Manager.
Aplicar configuração específica da tarefa usando a caixa de diálogo WTCheckpoint Config na página Jobs.
Observação
O número de conexões simultâneas com o S3 aumenta com o número de tarefas de backup que são executadas ao mesmo tempo. Se sua implantação executar muitas tarefa de backup simultaneamente, o número total de conexões S3 pode ser alto.
Considerações operacionais
Desempenho e dimensionamento
Carga do MongoDB Ops Manager: os servidores de aplicativos do MongoDB Ops Manager não carregam mais payloads de bloco de snapshot, mas ainda lidam com pré-assinatura, validação de manifesto, estado de tarefa e gravações de metadados. Dimensione o MongoDB Ops Manager para cargas de trabalho de plano de controle.
Dimensionamento do hospedar do agente: O backup direto para S3 move a compactação, o hashing, o TLS e os uploads paralelos de S3 dos servidores do MongoDB Ops Manager para cada hospedar que executa um MongoDB Agent. Antes de habilitar o recurso, certifique-se de que esses hosts tenham CPU, memória e capacidade de rede de saída suficientes para a carga de trabalho adicional. Capture uma duração de snapshot de linha de base e uso de recursos para que você possa comparar o impacto após habilitar o Direct to S3.
Quando
mms.backup.d2s3.transfer.numWorkersnão está definido, o MongoDB Agent dimensiona automaticamente o número de workers de backup com base na CPU e na memória que o hospedar tem permissão para usar. Ele começa com aproximadamente um worker por 4 vCPUs dessa permissão, até um máximo de 16 workers. Cada worker pode usar cerca de um núcleo de CPU no pico, portanto, planeje manter pelo menos 25% da capacidade de CPU permitida do hospedar para backup.Durante os snapshots, monitore o uso da CPU do MongoDB Agent e a latência do banco de dados. Se o MongoDB Agent estiver limitado pela CPU ou se a latência do banco de dados aumentar, considere adicionar capacidade ou reduzir
numWorkers.
Caminho de rede: A taxa de transferência total do backup é o agregado de cada caminho do agente MongoDB para S3. Confirme se o seu ponto de extremidade S3, ponto de extremidade VPC ou proxy pode lidar com a simultaneidade esperada em todos os servidores fazendo backup simultaneamente.
Segurança e IAM
Permissões do MongoDB Ops Manager: As credenciais S3 configuradas para o armazenamento de snapshots devem permitir operações
PUTpré-assinadas no bucket e prefixos usados para snapshots.Permissões do MongoDB Agent: os MongoDB Agents não têm credenciais S3. O MongoDB Ops Manager gera URLs pré-assinadas para cada upload e verificação de bloco.
Imutabilidade: O backup direto para S3 é compatível com o bloqueio de objeto S3. Os IDs de versão de objeto exigidos por snapshot imutável são registrados no manifesto de bloco.
Saiba mais
Para aprender sobre o recurso complementar que baixa dados de snapshot diretamente do S3 durante o restaurar, consulte Restaurar diretamente do S3.
Para aprender como os backups funcionam no MongoDB Ops Manager, consulte Processo de backup.
Para aprender sobre os recursos de backup necessários, consulte Gerenciar armazenamento de snapshot compatível com S3.