Introduction #
Cet agent Linux basé est basé sur rear
et restic
.
Installation et configuration #
Crontab #
Dans le contexte où la sauvegarde est orchestrée « de l’exterieur », par exemple avec un script tiers qui préparerait une base de donnée avant que nblinux la sauvegarde, il est possible de désactiver les fonctions de gestion de planification/crontab avec l’argument --skip-cron
. Dans ce contexte, nblinux ne cherchera pas à avoir son propre lancement dans le cron du système.
Il est aussi possible d’utiliser une variable d’environnement : NB_SKIP_CRON=true
Installation #
Pour installer l’agent sur un serveur Linux, connectez-vous à un superuser sur la machine et entrez les commandes suivantes :
wget li.nuabee.fr/nblinux
chmod +x nblinux
./nblinux
Ce premier lancement va permettre de paramétrer le compte de service, le stockage de destination, le mot de passe de chiffrement.
nblinux
s’installe dans /usr/local/bin
Gestion des exclusions #
Lors de l’installation initiale, un éditeur s’ouvrire afin d’ajouter ajouter d’éventuelles exclusions de sauvegarde. Cette étape ouvre l’éditeur de texte par défaut de la machine pour permettre l’ajout, la modification ou la suppression des exclusions de sauvegarde. Un chemin doit être entré par ligne, et ces chemins peuvent comporter des astériques pour avoir des exclusions « wildcard », par exemple /srv/*.iso.
Configurer à nouveau #
Si une erreur a été faite lors de l’installation, il est possible de reconfigurer le tout en supprimant le fichier suivant : /usr/local/etc/nblinux.json
et en lançant à nouveau :
nblinux
Utilisation après l’installation #
nblinux rear --help
ou nblinux restic --help
.Procédure complète manuelle #
Pour lancer manuellement la procédure complète incluant sauvegarde, lancez la commande suivante :
nblinux rear ...
Procédure de sauvegarde manuelle #
nblinux rear
--backuponly ...
Gestion des exclusions de sauvegarde #
nblinux rear
--edit-exclusions ...
Gestion des variables d’environnement #
nblinux
--edit-env-vars
Limitation de la bande passante de sauvegarde #
Indique une limite de débit autorisée lors de la sauvegarde restic. Cette limite est exprimée en KiB par seconde. Cet argument peut être ajouté à la commande du cron afin de garder la limite de backup lors des exécutions planifiées.
nblinux rear
--limit-upload 500 ...
Contourner la gestion du crontab #
Dans le contexte où la sauvegarde est orchestrée « de l’exterieur », par exemple avec un script tiers qui préparerait une base de donnée avant que nblinux la sauvegarde, il est possible de désactiver les fonctions de gestion de planification/crontab avec l’argument --skip-cron
. Dans ce contexte, nblinux ne cherchera pas à avoir son propre lancement dans le cron du système.
Il est aussi possible d’utiliser une variable d’environnement : NB_SKIP_CRON=true
Pilotage direct de Restic #
Ne pas inclure le mot de passe de chiffrement configuré dans les paramètres de restic. Dans ce cas, il devra être spécifié via la variable d’environnement RESTIC_PASSWORD #
nblinux restic
--without-encryption-password ...
Ne pas inclure les paramètres et URLs spécifiques à la destination de stokage auto-configurée #
nblinux restic
--without-repository-location ...
nblinux restic
devient en pratique un simple wrapper pour restic supportant l’envoi de log vers Grafana.Régler la fréquence de mise à jour d’affichage du progrès #
nblinux rear
--progress-update-secs 10 ...
Il est aussi possible d’utiliser une variable d’environnement : NB_RESTIC_PROGRESS_FREQ=true
Arguments avancés / Arguments de debug #
nblinux -d ...
nblinux --keep-log ...
Utilisation des UUID #
Il serait préférable d’utiliser le UUID de vos disques lorsqu’il est référencé dans le fichier /etc/fstab.
En effet, lorsque votre serveur est redémarré dans le cloud le chemin des répertoires, ex : /dev/sdb1 change et le serveur une fois redémarré ne trouve plus le disque.
Pour pallier cela il faut indiquer l’UUID (numéro de série) de votre disque à la place, qui lui ne change jamais.
Méthode pour modifier le UUID #
Pour changer cette entrée trouvez d’abord l’UUID de votre disque en tapant ‘blkid /dev/sdb1’ (ou chemin de votre disque)
Puis dans le fichier /etc/fstab remplacez /dev/sdb1 par UUID=XXXXXX