hadret.restic

Ansible Rolle: Restic

CI

Eine Ansible-Rolle, die restic unter Linux und FreeBSD installiert.

Anforderungen

Keine.

Rollenvariablen

Die verfügbaren Variablen sind unten aufgeführt, zusammen mit den Standardwerten (siehe defaults/main.yml):

restic_version: '0.15.1'
restic_install_path: '/usr/local/bin'
restic_password_file_path: '/root'
restic_discard_cron_stdout: false

restic_user: root
restic_group: "{{ restic_user }}"
  • restic_version gibt die Version der zu installierenden Restic-Binärdatei an. Sie wird mit dem GitHub-Repository abgeglichen, in dem die Versionen zum Herunterladen angekündigt werden.
  • restic_install_path gibt den Pfad an, von dem aus die Restic-Binärdatei verfügbar sein sollte (/usr/local/bin ist standardmäßig Teil von $PATH). Dies ist auch der gleiche Pfad, der vom Wrapper-Skript verwendet wird, das die eigentliche Backup-Ausführung durchführt, wobei der Name als $restic_install_path/restic-$job_name konstruiert wird (mehr dazu später).
  • restic_password_file_path gibt den Pfad zum Ordner an, in dem die Passwortdateien für Restic-Repositories gespeichert werden sollen. Jede Datei wird als $restic_password_file_path/.restic-@job_name erstellt. Diese Dateien sind standardmäßig verborgen (daher das . vor der Datei) und sind nur für den restic_user und die restic_group zum Lesen zugänglich. Diese sind standardmäßig root, können aber überschrieben werden, sodass jeder gültige/bereits vorhandene Benutzer verwendet werden kann. In diesem Fall werden angemessene Berechtigungen für diesen Benutzer sichergestellt.
restic_discard_cron_stdout: false

Definiert, ob die Ausgaben des Cronjobs nach /dev/null geleitet werden sollen oder nicht (es wird eine E-Mail bei jedem Ausführen gesendet, wenn dies auf false gesetzt ist).

restic_prometheus_exporter: true
restic_prometheus_output_path: /var/lib/node_exporter/textfile_collector

Es aktiviert eine sehr einfache Prometheus-Integration, die drei Werte am Standard-Textdateisammlerstandort schreibt. Bitte beachten Sie, dass die Aktivierung dieser Unterstützung zwei zusätzliche Abhängigkeiten installiert/benötigt: jq und moreutils (für sponge).

restic_repos: []

Dies definiert ein Array von Restic-Jobs. Jeder definierte Job erstellt ein separates Wrapper-Skript und eine Passwortdatei. Beispiele finden Sie in defaults/main.yml.

Abhängigkeiten

Keine.

Beispiel-Playbook

- hosts: all
  roles:
     - hadret.restic

Danksagungen

Diese Rolle baut auf den Arbeiten von donat-b/ansible-restic und paulfantom/ansible-restic auf. Alle Tests von molecule und die CI-Konfiguration basieren auf der Arbeit von geerlingguy. Viele Teile der Prometheus-Integration wurden direkt aus diesem Restic-Forumthread übernommen.

Lizenz

MIT

Autoreninformation

Diese Rolle wurde 2018 von Filip Chabik zusammengestellt.

Über das Projekt

Restic installation for Linux & FreeBSD.

Installieren
ansible-galaxy install hadret.restic
GitHub Repository
Lizenz
mit
Downloads
3.1k
Besitzer
Vegetarian, skeptic & Linux SysAdmin (: