Configurar backups de banco de dados MongoDB
Nesta página
Você pode automatizar backups contínuos e automatizados de bancos de dados MongoDB gerenciados pelo Operador Kubernetes através do recurso personalizado do MongoDB.
Observação
Se você já configurou backups para seus recursos MongoDB durante o sistema de recursos do banco debanco de dados MongoDB , você não precisará concluir o procedimento a seguir.
Considerações
Antes de configurar backups para recursos MongoDB, veja as seguintes considerações:
Se você definir rótulos de atribuição usando o Kubernetes Operator, os valores definidos no arquivo de configuração do Kubernetes para rótulos de atribuição substituirão os valores definidos na IU do OpsManager. Os rótulos de atribuição que você não define usando o Kubernetes Operator continuam a usar os valores definidos na IU do Ops Manager.
Se você definir um campo de agendamento de snapshot usando o Kubernetes Operator, o valor definido no arquivo de configuração do Kubernetes para esse campo substituirá o valor definido na interface do usuário do Ops Manager . Os campos de agendamento de snapshot que você não define usando o Kubernetes Operator continuam a usar o valor definido na interface do usuário do Ops Manager .
Exemplo
Você define
backup.snapshotSchedule.snapshotIntervalHours=6
no operador Kubernetes.Você define os seguintes valores na interface do usuário:
Snapshot Inverval: 10
Dias de retenção do snapshot: 5
O MongoDB Ops Manager usa os seguintes valores para seu sistema:
Snapshot Inverval: 6
Dias de retenção do snapshot: 5
Se você ativar backups para a implantação do banco de dados MongoDB usando o Kubernetes Operator, mas não definir uma programação de snapshots usando o Kubernetes Operator, o Ops Manager usará a programação de snapshots definida na IU do Ops Manager.
Se você ativar os backups para sua implantação MongoDB, mas não definir um cronograma de snapshots, o Ops Manager usará o cronograma de snapshots padrão.
Pré-requisitos
Antes de configurar backups contínuos para recursos MongoDB, conclua as seguintes tarefas:
Configurar backups para o recurso Ops Manager. No procedimento vinculado, consulte as etapas de configuração de backups. Os backups contínuos para bancos de dados MongoDB exigem que você defina o valor
spec.backup.enabled
na especificação de recursos do Ops Manager comotrue
.Implemente um conjunto de réplicas ou um aglomerado compartilhado.
Procedimento
Habilitar backups para seu sistema de banco de dados MongoDB.
Adicione a configuração spec.backup.mode
ao arquivo de configuração do sistema do banco de dados MongoDB e defina seu valor como enabled
, conforme mostrado no exemplo de conjunto de réplicas a seguir:
1 2 apiVersion: mongodb.com/v1 3 kind: MongoDB 4 metadata: 5 name: <my-replica-set> 6 spec: 7 members: 3 8 version: "6.0.0-ent" 9 type: ReplicaSet 10 opsManager: 11 configMapRef: 12 name: <my-project> 13 credentials: <my-credentials> 14 backup: 15 # Sets labels for the Backup Daemon. 16 assignmentLabels: ["test1", "test2"] 17 mode: enabled
Para saber como criar ou editar um arquivo de configuração, consulte implantar um conjunto de réplicas ou distribuir um cluster fragmentado.
Opcional: Configure o planejamento da captura instantânea.
Adicione qualquer uma das seguintes configurações de agendamento de snapshot ao arquivo de especificação do sistema. Para saber como o MongoDB Ops Manager determina o agendamento de snapshot se você não definir um campo de agendamento de snapshot usando o Operador Kubernetes ,] consulte as considerações.
Opcional: Configure os rótulos de atribuição de backup.
Adicione um ou mais spec.backup.assignmentLabels
no arquivo de especificação para o sistema. Use rótulos de atribuição para identificar que os armazenamentos de backup específicos estão associados a determinados projetos. Configurar rótulos no Kubernetes Operator substitui os rótulos que você configurou no MongoDB Ops Manager. Para saber mais, consulte considerações.
Consulte o exemplo do arquivo de especificação com rótulos de atribuição anterior neste procedimento.
Verifique se o status da cópia de segurança é STARTED
.
Execute o seguinte comando para verificar o status dos backups:
kubectl get mdb <resource-name> -n <metadata.namespace> -o yaml
O campo status.backup.statusname
indica o status da cópia de segurança. O status exibe STARTED
quando você configura backups com êxito.