hadret.restic

Ansible Rola: Restic

CI

To jest rola Ansible, która instaluje restic na systemach Linux i FreeBSD.

Wymagania

Brak.

Zmienne Roli

Dostępne zmienne są wymienione poniżej, razem z wartościami domyślnymi (zobacz 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 określa wersję binarki restic, która powinna być zainstalowana. Jest porównywana z repozytorium na GitHubie, gdzie ogłoszone są wydania do pobrania.
  • restic_install_path podaje ścieżkę, gdzie binarka restic powinna być dostępna (/usr/local/bin jest domyślnie dodawane do $PATH). To ta sama ścieżka, która jest używana przez skrypt pomocniczy, który wykonuje faktyczne kopie zapasowe, gdzie nazwa jest tworzona jako $restic_install_path/restic-$job_name (więcej na ten temat później).
  • restic_password_file_path podaje ścieżkę do folderu, w którym powinny być przechowywane pliki z hasłami dla repozytoriów restic. Każdy plik jest tworzony jako $restic_password_file_path/.restic-@job_name. Te pliki są ukryte (stąd . na początku pliku) i mają ograniczony dostęp do odczytu dla użytkownika restic_user i grupy restic_group. Domyślnie to root, ale można to zmienić na dowolnego istniejącego użytkownika. W takim przypadku zapewnione będą odpowiednie uprawnienia dla tego użytkownika.
restic_discard_cron_stdout: false

Określa, czy wyjście zadania cron powinno być kierowane do /dev/null, czy nie (będzie wysyłać e-maile przy każdym wykonaniu, jeśli jest ustawione na false).

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

Włącza bardzo prostą integrację z Prometheus, która zapisuje trzy wartości w domyślnej lokalizacji kolektora plików tekstowych. Należy pamiętać, że włączenie tej opcji zainstaluje/doda dwie dodatkowe zależności: jq oraz moreutils (do sponge).

restic_repos: []

Definiuje tablicę zadań restic. Każde zdefiniowane zadanie stworzy osobny skrypt pomocniczy oraz plik z hasłem. Przykłady można znaleźć w defaults/main.yml.

Zależności

Brak.

Przykładowy Playbook

- hosts: all
  roles:
     - hadret.restic

Podziękowania

Ta rola opiera się na pracach donat-b/ansible-restic oraz paulfantom/ansible-restic. Wszystkie testy molecule i konfiguracja CI opierają się na pracy geerlingguy. Wiele części integracji z Prometheus zostało bezpośrednio przejętych z tego wątku na forum Restic.

Licencja

MIT

Informacje o autorze

Ta rola została częściowo stworzona w 2018 roku przez Filipa Chabika.

O projekcie

Restic installation for Linux & FreeBSD.

Zainstaluj
ansible-galaxy install hadret.restic
Licencja
mit
Pobrania
3.1k
Właściciel
Vegetarian, skeptic & Linux SysAdmin (: