coaxial.backup
Rôle de sauvegarde
Ce rôle Ansible installera et configurera tarsnap et tarsnapper pour effectuer des sauvegardes cryptées à intervalles réguliers.
Ces sauvegardes sont stockées avec tarsnap qui utilise Amazon S3.
En savoir plus sur Tarsnap, sauvegardes en ligne pour les vraiment paranos.
Conditions requises
- Un compte tarsnap avec des fonds
- Ce rôle n’a été testé que sur Ubuntu 16.04 (je l’étendrai à d’autres plateformes si cela vous intéresse, faites-le moi savoir en ouvrant un problème)
- Un fichier de configuration tarsnapper à
templates/tarsnapper.yml.j2
dans votre playbook (comment écrire un fichier de configuration tarsnapper) - Un fichier de configuration tarsnap à
templates/tarsnap.conf.j2
dans votre playbook (comment écrire un fichier de configuration tarsnap)
Variables du rôle
variable | valeur par défaut | but |
---|---|---|
backup__rebuild_cache |
false |
Ignorera tarsnap --fsck |
backup__tarsnap_cachedir |
/usr/local/tarsnap-cache |
Définit le répertoire que tarsnap utilisera pour mettre en cache les sauvegardes (voir man page tarsnap.conf) |
backup__tarsnap_keyfile |
/root/tarsnap.key |
Définit le chemin où la clé tarsnap sera enregistrée |
backup__tarsnap_apt_key |
40B98B68F04DE775 |
ID de la clé utilisée pour signer le package tarsnap |
backup__tarsnap_username |
[email protected] |
Nom d’utilisateur pour tarsnap.com (uniquement requis si vous voulez générer une nouvelle clé tarsnap) |
backup__tarsnap_password |
encrypt me |
Mot de passe pour tarsnap.com (uniquement requis si vous voulez générer une nouvelle clé tarsnap) |
backup__tarsnapper_config_file |
/etc/tarsnapper.yml |
Définit le chemin où la configuration des tâches tarsnapper sera enregistrée sur l’hôte cible |
backup__tarsnapper_log_file |
/var/log/tarsnapper.log |
Définit le chemin où les journaux des tâches cron seront écrits |
backup__cron_{minute,hour,dom,month,dow} |
respectivement : 28 , 3 , * , * , * |
Intervalle pour exécuter tarsnap pour les sauvegardes |
Remarques
S'il n'y a pas de fichier clé tarsnap trouvé à files/{{ ansible_hostname }}.yml
, une nouvelle clé Tarsnap sera générée en utilisant les variables backup__tarsnap_username
et backup__tarsnap_password
, et une nouvelle machine sera enregistrée comme {{ ansible_host }}
.
S'il y a une clé tarsnap à files/{{ ansible_hostname }}.yml
, alors cette clé sera utilisée et aucune nouvelle génération de clé ou enregistrement de machine n’aura lieu.
Si la tâche Ajouter la clé apt tarsnap
échoue, cela signifie que la clé du package a changé mais que je n’ai pas encore mis à jour le rôle. Vérifiez quelle est la clé actuelle sur https://www.tarsnap.com/pkg-deb.html, remplacez sa valeur par la variable backup__tarsnap_apt_key
et ouvrez un problème afin que je puisse mettre à jour le rôle avec la nouvelle clé.
Dépendances
Aucune.
Exemple de Playbook
- hosts: all
roles:
- role: coaxial.backup
Licence
MIT
Informations sur l'auteur
Coaxial <64b.it>
Automated, encrypted, online backups using tarsnap
ansible-galaxy install coaxial.backup