vrischmann.restic
Restic
Implementa copias de seguridad de restic utilizando servicios y temporizadores de systemd.
Este rol tiene dos modos:
user
, que agrega servicios y temporizadores a nivel de usuario (para tu usuario normal).server
, que agrega servicios y temporizadores a nivel del sistema.
Requisitos
Necesitas tener restic instalado y tus repositorios ya inicializados.
Variables del Rol
Nombre | Requerido | Descripción |
---|---|---|
restic_binary |
no | Ruta completa del binario restic. |
restic_backup_mode |
sí | Modo de copia de seguridad (ya sea "user" o "server"). |
restic_user_home |
no | Directorio home del usuario (si se ejecuta en modo "user"). |
restic_user_name |
no | Nombre del usuario (si se ejecuta en modo "user"). |
restic_user_group |
no | Grupo del usuario (si se ejecuta en modo "user"). |
restic_backups |
sí | Lista de definiciones de copias de seguridad para restic. |
restic_conf_directory |
no | Directorio de configuración (si se ejecuta en modo "server"). |
Definición de Copia de Seguridad
La lista restic_backups
contiene N elementos que definen las copias de seguridad.
Cada definición de copia debe contener la siguiente información:
- El nombre del repositorio (usado para los servicios de systemd: usa solo caracteres alfanuméricos)
- Las variables de entorno que restic necesita para usar el repositorio
- La especificación de calendario para el temporizador de systemd.
- Los directorios a respaldar
También puede contener una lista de directorios a excluir.
Por ejemplo, esto define dos repositorios:
restic_backups:
- name: remote-scaleway
env:
AWS_ACCESS_KEY_ID: "{{ restic_scaleway_aws_access_key_id }}"
AWS_SECRET_ACCESS_KEY: "{{ restic_scaleway_aws_secret_access_key }}"
RESTIC_REPOSITORY: "s3:s3.fr-par.scw.cloud/foobar/home"
RESTIC_PASSWORD: "{{ restic_remote_password }}"
calendar_spec: "*-*-* *:00/15:00"
backup_directories:
- /home/vincent
excludes:
- /home/vincent/tmp
- name: remote-linode
env:
AWS_ACCESS_KEY_ID: "{{ restic_linode_aws_access_key_id }}"
AWS_SECRET_ACCESS_KEY: "{{ restic_linode_aws_secret_access_key }}"
RESTIC_REPOSITORY: "s3:eu-central-1.linodeobjects.com/foobar/barbaz"
RESTIC_PASSWORD: "{{ restic_remote_password }}"
calendar_spec: "*-*-* *:00/15:00"
backup_directories:
- /data/media
excludes:
- /data/media/Movies
Licencia
MIT
Instalar
ansible-galaxy install vrischmann.restic
Licencia
mit
Descargas
134
Propietario
Still learning