notmycloud.proxmox_backup_client
Ansible-Proxmox-Backup-Client
Ten składnik zainstaluje i skonfiguruje Proxmox Backup Client na systemie opartym na Debianie. Dokumentację Proxmox Backup Client znajdziesz tutaj: Proxmox Backup Client.
Zmienne
Zmienna | Wymagana | Domyślna | Opis |
---|---|---|---|
proxmox_backup | Tak | Słownik zawierający Twoją konfigurację dla tego składnika | |
.server | Tak | Słownik zawierający informacje o połączeniu z serwerem Proxmox Backup. | |
.server.user | Tak | Nazwa użytkownika do dostępu do PBS, np. backup@pbs | |
.server.pass | Tak | Hasło lub token dla podanego użytkownika. | |
.server.host | Tak | Nazwa hosta/FQDN/IP PBS. | |
.server.datastore | Tak | Magazyn do przechowywania kopii zapasowych. | |
.server.port | Nie | 8007 | Niestandardowy port API PBS. |
.server.fingerprint | Nie | Odcisk palca certyfikatu serwera, znaleziony na pulpicie nawigacyjnym. | |
.client | Tak | Słownik zawierający konfigurację klienta dla PBC. | |
.client.archives | Tak | Tablica elementów do kopii zapasowej. | |
.client.archives.name | Tak | Nazwa pliku archiwum do przesłania, nie może zawierać znaku '/' | |
.client.archives.path | Tak | Ścieżka do kopii zapasowej. | |
.client.archives.format | Tak | Typy plików to zwykle .pxar dla archiwów plików i .img dla obrazów urządzeń blokowych. | |
.client.encrypt | Nie | Słownik zawierający ustawienia szyfrowania po stronie klienta. | |
.client.encrypt.enable | Tak | Nie | Włącz lub wyłącz szyfrowanie po stronie klienta. |
.client.encrypt.pass | Nie | Hasło do klucza szyfrowania, jeśli jest chronione hasłem. | |
.client.encrypt.key | Tak | ~/.config/proxmox-backup/encryption-key.json | Ścieżka do przechowywania klucza szyfrowania. |
.client.encrypt.master | Nie | Ścieżka do lokalnego master-public.pem do skopiowania do klienta | |
.client.output | Nie | Słownik zawierający opcje formatowania logów stdoutput. | |
.client.output.format | Nie | text | Możliwe wartości to text, json, json-pretty. |
.client.output.border | Nie | Jeśli ustawione, nie będą renderowane granice tabeli. | |
.client.output.header | Nie | Jeśli ustawione, nagłówki tabeli nie będą renderowane. | |
.client.include_devices | Nie | Tablica punktów montowania do uwzględnienia, domyślnie pomijane. | |
.client.skip_lost_found | Nie | Nie | pomiń katalogi lost+found. |
.client.schedule.calendar | Nie | '*-*-* 4:00:00' | Ciąg OnCalendar systemd Timer, domyślnie codziennie o 4 rano. |
.client.schedule.runifmissed | Nie | Nie | Uruchom usługę, jeśli ostatni czas uruchomienia został pominięty. |
.client.exclude | Nie | Tablica zawierająca ustawienia dla plików .pxarexclude. | |
.client.exclude[#].path | Tak | Ścieżka pliku .pxarexclude (folder macierzysty). | |
.client.exclude[#].enabled | Tak | Stwórz plik wykluczenia, usuń, jeśli nie. | |
.client.exclude[#].rules | Tak | Tablica reguł wykluczenia, może zawierać wyraźne uwzględnienie. |
Domyślna konfiguracja
default_config:
client:
encrypt:
enable: false
key: ~/.config/proxmox-backup/encryption-key.json
output:
format: text
skip_lost_found: no
schedule:
calendar: '*-*-* 4:00:00' # Codziennie o 4 rano
runifmissed: no
Przykłady
Zmienne grupy na wszystkich poziomach (format YAML).
pbs_global_server:
user: backup@pbs
pass: ProxmoxBackupPassword
host: pbs.example.com
datastore: backups
fingerprint: 7f:f1:ee:...:3d:de:2b
pbs_global_client:
skip_lost_found: yes
exclude:
- path: /
rules:
- /boot/*
- /tmp/*
- path: /var/
rules:
- /run/*
- /log/*.[0-9]
- /log/*.[0-9].*
- /log/**/*.[0-9]
- /log/**/*.[0-9].*
archives:
- name: root
path: /
format: .pxar
- name: boot
path: /boot
format: .pxar
Zmienne na poziomie hosta (format YAML).
pbs_client:
archives:
- name: ssd
path: /ssd
format: .pxar
- name: data
path: /Data
format: .pxar
exclude:
- path: /ssd/qbit/
rules:
- /incomplete/*
- path: /ssd/media/
rules:
- /_transcode/temp/*
- /_transcode/log/*
- /converted/*.jpg
- /converted/*.mp4
- /.Trash*
Łączenie domyślnych ustawień grupy z nadpisaniami hosta
pbs_global_client jest zmienną dla całej grupy. pbs_client jest zmienną dla hosta. combine(pbs_client, recursive=true) połączy słowniki. Słownik wewnątrz combine będzie miał priorytet nad słownikiem przekazywanym. Można to łączyć.
# Połącz tablice, aby jedna nie nadpisywała drugiej.
- name: Merge PBS Client Arrays
set_fact:
pbs_client_merged:
archives: "{{ pbs_global_client.archives + pbs_client.archives }}"
exclude: "{{ pbs_global_client.exclude + pbs_client.exclude }}"
- name: Setup Proxmox Backup Client
include_role:
name: proxmox-backup-client
vars:
proxmox_backup:
server: "{{ pbs_global_server }}"
client: "{{ pbs_global_client | combine(pbs_client, recursive=true) | combine(pbs_client_merged, recursive=true) }}"
O projekcie
Ansible role to install and configure the Proxmox Backup Client.
Zainstaluj
ansible-galaxy install notmycloud.proxmox_backup_client
Licencja
mit
Pobrania
320
Właściciel