Guide de l'administrateur NetBackup™ for MongoDB
- Présentation de la protection de MongoDB à l'aide de NetBackup
- Vérifiez les conditions requises pour le plug-in MongoDB for NetBackup
- Configuration de NetBackup for MongoDB
- Configuration d'options de sauvegarde pour MongoDB à l'aide du fichier mongodb.conf
- Ajout des informations d'authentification MongoDB dans NetBackup
- Gestion des hôtes de sauvegarde
- Sauvegarde de MongoDB à l'aide de NetBackup
- Restauration ou récupération de données de MongoDB à l'aide de NetBackup
- Dépannage
- Annexe A. Informations supplémentaires
Conditions requises et bonnes pratiques pour protéger MongoDB
Pour les clusters MongoDB partitionnés, les processus mongos et mongod doivent être en cours d'exécution sur le serveur d'application spécifié en tant que client dans la politique de sauvegarde.
Seules les plates-formes RHEL et SUSE sont prises en charge pour les hôtes de sauvegarde .
Le plug-in NetBackup for MongoDB nécessite que le serveur principal, le serveur de médias et l'hôte de sauvegarde NetBackup disposent de la version 8.2 ou d'une version ultérieure de NetBackup.
Vérifiez que NetBackup prend en charge votre version de MongoDB. Pour plus d'informations, consultez la liste de compatibilité logicielle.
NetBackup prend en charge les clusters MongoDB configurés ou installés sur les systèmes d'exploitation RHEL, SUSE et Linux-s390x (IBMzSeriesRedHat).
NetBackup prend en charge les configurations MongoDB suivantes :
Cluster MongoDB partitionné (cluster MongoDB avec serveur de configuration et partitions)
Cluster MongoDB avec jeu de répliques
MongoDB autonome sans jeux de répliques
NetBackup prend en charge les types d'authentification suivants pour MongoDB :
Aucune authentification
Authentification simple
Authentification basée sur les certificats
NetBackup prend en charge les systèmes de fichiers suivants pour la sauvegarde et la restauration :
XFS
ext4
Installez les packages OpenSSH sur tous les nœuds MongoDB. Activez SSH sur tous les nœuds MongoDB.
NetBackup prend en charge les clusters MongoDB configurés avec le moteur de stockage WiredTiger .
NetBackup protège les clusters MongoDB configurés ou installés localement à l'aide des fichiers
.tar
ou installés à l'aide des référentiels officiels MongoDB.NetBackup prend en charge la sauvegarde incrémentielle différentielle pour MongoDB avec une sauvegarde complète. Actuellement, les sauvegardes incrémentielles cumulatives ne sont pas prises en charge.
NetBackup recommande de disposer d'au moins trois serveurs de configuration dans votre environnement MongoDB partitionné pour assurer une prise en charge haute disponibilité des sauvegardes.
N'installez pas le plug-in MongoDB sur un serveur qui dispose également de l'application MongoDB. Un serveur disposant de l'application MongoDB ne peut pas être utilisé comme hôte de sauvegarde.
Assurez-vous que l'heure locale sur le serveur MongoDB et l'hôte de sauvegarde est synchronisée avec le serveur NTP.
Pour les clusters MongoDB partitionnés, le rôle de routeur de requête doit être présent sur le serveur de configuration.
Pour le cluster MongoDB disposant d'un système d'exploitation SUSE, définissez le champ PasswordAuthentication sur Oui dans le fichier
/etc/ssh/sshd_config
pour tous les nœuds MongoDB.Une fois le fichier à jour, redémarrez sshd.
Assurez-vous que tous les clusters prennent en charge le même algorithme de clé de hachage (RSA).
Si le cluster MongoDB est en cours d'exécution sous le compte
mongod
, un compte sudoer non racine est requis et ceux-ci doivent être configurés en tant qu'utilisateur de l'hôte dans le fichiertpconfig
.Si le cluster MongoDB est en cours d'exécution sous un compte racine ou non racine, vérifiez que les informations d'authentification de l'utilisateur de l'hôte configurées à l'aide de la commande tpconfig correspondent à celles du compte utilisateur de l'hôte utilisé pour configurer le cluster MongoDB (compte utilisateur de l'hôte du daemon MongoDB, racine ou non racine).
Pour plus d'informations, reportez-vous à la section Se reporter à Conditions requises pour l'utilisateur de l'hôte..
Si vous utilisez un client NetBackup en tant qu'hôte de sauvegarde, assurez-vous d'ajouter la valeur suivante dans le fichier
bp.conf
du serveur principal NetBackup :APP_PROXY_SERVER=NBU_CLIENT_FQDN
Si l'utilisateur hôte MongoDB ne dispose pas des autorisations racine, assurez-vous que l'utilisateur a accès à tous les chemins temporaires pour copier le client léger (
mdbserver
), les journaux, les snapshots, etc. Ajoutez l'utilisateur non racine au fichiersudoers
dans le système d'exploitation.Si vous installez MongoDB à l'aide du fichier
.tar
ou à un emplacement autre que celui par défaut, ajoutez le chemin d'accès au dossier bin MongoDB dans le fichierbashrc
du système d'exploitation pour vous assurer que vous pouvez exécuter les commandes MongoDB à partir de l'interface de ligne de commande.Si votre serveur MongoDB utilise le système d'exploitation SUSE 12.3, assurez-vous que vous pouvez vous connecter aux processus mongod et mongos à l'aide de l'option --host <FQDN>. Pour plus d'informations, consultez le Guide de l'administrateur MongoDB.
Lorsque vous utilisez l'option -host_password avec la commande tpconfig et
mongodb.conf
HostPassword
, assurez-vous que le mot de passe :ne dépasse pas 63 caractères ;
contient un ou plusieurs caractères alphanumériques : a-z, A-Z, 0-9 ;
contient un ou plusieurs des caractères suivants : - (tiret), _ (trait de soulignement), , (virgule), . (point), ?(point d'interrogation).
Lorsque vous définissez les chemins d'accès des journaux, clients légers (
mdbserver
), snapshots ou autres dans le fichiermongodb.conf
, assurez-vous que l'utilisateur hôte dans le fichier d'informations d'authentification dispose d'autorisations valides pour accéder à ces chemins.Pour activer SSH, ajoutez l'entrée suivante au fichier sudoers :
Default <host_user> !requiretty
Assurez-vous que les limites et les seuils MongoDB sont conformes aux directives MongoDB officielles.
Assurez-vous que le nom d'hôte est utilisé de façon cohérente dans la commande tpconfig pendant la configuration de la politique et dans le fichier
mongodb.conf
. Par exemple, si vous utilisez le nom de domaine complet, utilisez-le pour toutes les instances de nom d'hôte au lieu de noms courts.Assurez-vous que application_server correspond au nom d'hôte utilisé dans l'environnement MongoDB et vérifié à l'aide de la commande db.hostInfo().
Par exemple, la valeur de nom d'hôte affichée par db.hostInfo() :
"hostname" : "<hostname_value>:<port>"
Assurez-vous que le fichier
mongodb.conf
ne présente pas d'erreur de format JSON ou de faute de frappe avant d'exécuter un travail de sauvegarde ou de restauration.Assurez-vous que le chemin d'accès aux certificats de sécurité ajoutés dans le fichier
mongod.conf
et utilisés avec la commande tpconfig est identique pour tous les nœuds MongoDB.Pour l'authentification simple, configurez le même utilisateur faisant partie du groupe racine à partir de la base de données d'administration pour chaque nœud MongoDB.
Si vous utilisez le fichier
mongod.conf
oumongos.conf
pour démarrer les processus MongoDB, exécutez le fichiermongod
à l'aide du chemin d'accès absolu du système sur le cluster MongoDB. Par exemple, utilisez la commande suivante :mongod --config /home/user1/mongod.conf
NetBackup vous recommande d'exécuter une sauvegarde complète lorsque vous avez apporté des modifications de configuration à l'instance MongoDB. Si une sauvegarde incrémentielle est planifiée pour s'exécuter après les modifications de configuration, exécutez une sauvegarde complète manuellement avant la sauvegarde incrémentielle.
Par exemple, lorsque vous modifiez la version de Feature Compatibility (FCV) de MongoDB, la version de MongoDB, le type d'authentification, la topologie (ajout de nouvelles partitions ou suppression de partitions existantes), les paramètres de stockage, etc., exécutez une sauvegarde complète.