User Tools

Site Tools


backup:proxmox:pbs_verwendung

This is an old revision of the document!


Proxmox Backup Server Client

Der Client ist verfügbar aktuell für

  • Debian
  • ???
  • ???


Client Installation

Debian

Non Sub Client

echo "deb http://download.proxmox.com/debian/pbs buster pbs-no-subscription" >> /etc/apt/sources.list.d/pbs.list
apt update
apt install proxmox-backup-client


Sub Client

echo "deb http://download.proxmox.com/debian/pbs buster pbs-enterprise" >> /etc/apt/sources.list.d/pbs.list
apt update
apt install proxmox-backup-client


Auf andere Clients warte ich noch…

Client Benchmark

Um zu sehen wie schnell der Client auf dem System arbeiten kann, kann ein kleiner Benchmark durchgeführt werden.

root@debian01:~# proxmox-backup-client benchmark
SHA256 speed: 121.24 MB/s
Compression speed: 160.03 MB/s
Decompress speed: 313.62 MB/s
AES256/GCM speed: 63.00 MB/s
Verify speed: 79.98 MB/s
┌───────────────────────────────────┬───────────────────┐
│ Name                              │ Value             │
╞═══════════════════════════════════╪═══════════════════╡
│ TLS (maximal backup upload speed) │ not tested        │
├───────────────────────────────────┼───────────────────┤
│ SHA256 checksum computation speed │ 121.24 MB/s (6%)  │
├───────────────────────────────────┼───────────────────┤
│ ZStd level 1 compression speed    │ 160.03 MB/s (21%) │
├───────────────────────────────────┼───────────────────┤
│ ZStd level 1 decompression speed  │ 313.62 MB/s (26%) │
├───────────────────────────────────┼───────────────────┤
│ Chunk verification speed          │ 79.98 MB/s (11%)  │
├───────────────────────────────────┼───────────────────┤
│ AES256 GCM encryption speed       │ 63.00 MB/s (2%)   │
└───────────────────────────────────┴───────────────────┘

Environment Variablen

  • PBS_REPOSITORY → Default Backup Repo
  • PBS_PASSWORD → Passwort zum Backup Server
  • PBS_ENCRYPTION_PASSWORD → Wenn Verschlüsselung verwendet wird muss hier das Secret eingetragen werden
  • PBS_FINGERPRINT → Wird nur verwendet bei Cert Auth

Setzt man die ENV Vars muss man bei den einzelnen Befehlen für den Backup Client nicht immer alle Parameter mit geben.
Dies erleichtet einem das ganze schon sehr. Hier ein Bespiel für meine Testinstallation

export PBS_PASSWORD="asdf1234"
export PBS_REPOSITORY="192.168.134.150:backup01"


Backup mit dem Client erstellen

proxmox-backup-client backup root.pxar:<Folder> --repository <servername>:<datastore>
proxmox-backup-client backup root.pxar:/ --repository 192.168.134.150:backup01


Um ein Backup periodisch zu machen kann man hier einfach ein Script schreiben und dieses via cron einbinden


Backup Snashots anzeigen

Anzeigen der Backups die auf dem Server liegen

proxmox-backup-client snapshots --repository 192.168.134.150:backup01


Anzeigen der Files im Snapshot Zeigt alle Files von diesem Backup an. Achtung → lange Liste

proxmox-backup-client catalog dump --repository <servername>:<datastore> <snapshot>
proxmox-backup-client catalog dump --repository 192.168.134.150:backup01 host/debian01/2020-10-30T09:40:18Z


Restore mit dem Client

Es gibt verschiedene Möglichkeiten einen Restore zu machen.

Restore eines Snapshots

Hier werden alle Daten in das angegeben Zielverzeichnis Restored

Restore von einem Archiv (alle Files die da drin sind)
proxmox-backup-client restore --repository <backupserver>:<datastore> <backupset> root.pxar <restore path>
proxmox-backup-client restore --repository 192.168.134.150:backup01 host/debian01/2020-10-30T09:40:18Z root.pxar /root/bla_restore.txt


Single File Restore

Dies ist mit dem Interaktiven Restore recht einfach

proxmox-backup-client catalog shell --repository <backupserver>:<datastore> <backupset> root.pxar


Hier ein Beispiel Restore von zwei Files

root@debian01:~# proxmox-backup-client catalog shell --repository 192.168.134.150:backup01 host/debian01/2020-11-19T10:25:34Z root.pxar
Starting interactive shell

pxar:/ > ls
bin
boot
dev
etc
home
initrd.img
initrd.img.old
lib
lib32
lib64
libx32
lost+found
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var
vmlinuz
vmlinuz.old

pxar:/ > select /root/bla.txt
added path: "/root/bla.txt"

pxar:/ > select /etc/hosts
added path: "/etc/hosts"

pxar:/ > list-selected
/etc/hosts
/root/bla.txt

pxar:/ > restore-selected /home/restore/

pxar:/ > exit

root@debian01:~# ls -la /home/restore/etc/hosts 
-rw-r--r-- 1 root root 188 Okt 30 10:18 /home/restore/etc/hosts

root@debian01:~# cat /home/restore/root/bla.txt 
bla bla bla


Mounten eines Snapshots

Man kann via FUSE einen Snapshot mounten und direkt da drin arbeiten bzw. sich seine Files suchen

proxmox-backup-client mount --repository <backupserver:datastore> <backupset> root.pxar <mountpoint>


Hier ein Beispiel

root@debian01:~# proxmox-backup-client mount --repository 192.168.88.150:backup01 host/debian01/2020-11-19T10:25:34Z root.pxar /mnt/x
FUSE library version: 3.4.1

root@debian01:~# cat /mnt/x/root/bla.txt 
bla bla bla

root@debian01:~# ls -la /mnt/x/
insgesamt 4
drwxr-xr-x 2 root root    0 Okt 30 10:22 .
drwxr-xr-x 3 root root 4096 Nov 19 11:46 ..
lrwxrwxrwx 1 root root    0 Okt 30 10:18 bin -> usr/bin
drwxr-xr-x 2 root root    0 Okt 30 10:24 boot
drwxr-xr-x 2 root root    0 Okt 30 10:25 dev
drwxr-xr-x 2 root root    0 Nov 19 10:23 etc
drwxr-xr-x 2 root root    0 Okt 30 10:25 home
lrwxrwxrwx 1 root root    0 Okt 30 10:22 initrd.img -> boot/initrd.img-4.19.0-12-amd64
lrwxrwxrwx 1 root root    0 Okt 30 10:19 initrd.img.old -> boot/initrd.img-4.19.0-11-amd64
lrwxrwxrwx 1 root root    0 Okt 30 10:18 lib -> usr/lib
lrwxrwxrwx 1 root root    0 Okt 30 10:18 lib32 -> usr/lib32
lrwxrwxrwx 1 root root    0 Okt 30 10:18 lib64 -> usr/lib64
lrwxrwxrwx 1 root root    0 Okt 30 10:18 libx32 -> usr/libx32
drwx------ 2 root root    0 Okt 30 10:18 lost+found
drwxr-xr-x 2 root root    0 Okt 30 10:18 media
drwxr-xr-x 2 root root    0 Okt 30 10:18 mnt
drwxr-xr-x 2 root root    0 Okt 30 10:18 opt
dr-xr-xr-x 2 root root    0 Okt 30 10:25 proc
drwx------ 2 root root    0 Nov 19 11:24 root
drwxr-xr-x 2 root root    0 Nov 19 11:03 run
lrwxrwxrwx 1 root root    0 Okt 30 10:18 sbin -> usr/sbin
drwxr-xr-x 2 root root    0 Okt 30 10:18 srv
dr-xr-xr-x 2 root root    0 Okt 30 10:25 sys
drwxrwxrwt 2 root root    0 Nov 19 09:54 tmp
drwxr-xr-x 2 root root    0 Okt 30 10:18 usr
drwxr-xr-x 2 root root    0 Okt 30 10:18 var
lrwxrwxrwx 1 root root    0 Okt 30 10:22 vmlinuz -> boot/vmlinuz-4.19.0-12-amd64
lrwxrwxrwx 1 root root    0 Okt 30 10:19 vmlinuz.old -> boot/vmlinuz-4.19.0-11-amd64


Restore über PVE

Einen Restore über PVE (einer ganzen VM) macht man einfach wie üblich über das PVE GUI.
Dazu gibt es zwei Arten

Restore der VM neben die alte

Hier kann eine neue VMID vergeben werden damit wird die alte VM nicht überschrieben.

  1. Auf den PBS Datastore gehen
  2. Content
  3. Backup auswählen
  4. Restore Button
  5. Storage: Wo der Restore abgelegt werden soll
  6. VMID: Hier kann eine neue VMID vergeben werden
  7. Read Limit: Restore Durchsatz
  8. Unique: Vergabe neuer Mac Adresse (wird normal nicht benötigt oder gewollt)


Restore der VM über die alte

Wenn man gleich über die alte oder defekte VM restoren möchte muss man diese Weg gehen

  1. VM auswählen
  2. Backup
  3. Storage: PBS Datastore auswählen
  4. Backup auswählen
  5. Restore Button
  6. Storage: Wo der Restore abgelegt werden soll
  7. VMID: Diese ist jetzt fix auswählt und zeigt auf die alte bzw. bestehende
  8. Read Limit: Restore Durchsatz
  9. Unique: Vergabe neuer Mac Adresse (wird normal nicht benötigt oder gewollt)


Remote Backup Server & Sync

Man kann an einem zweiten Standort einen zweiten Backup Server stehen haben haben die Daten auf den anderen Standort spielgen.
Dazu muss man die Server zuerst verbinden.

Remote Backup Server hinzufügen

Configuration –> Remotes –> Add

  • Remote: Name des Servers im GUI
  • Host: IP oder FQDN
  • Auth ID: <user>@<domain> (vermutlich öfters root@pam)
  • Password: PW vom User
  • Fingerprint: SSH Fingerprint vom Server

Nach der Einrichtung ist die Serververbindung zwischen den beiden Backupservern nur in einem GUI sichtbar.

Sync Job

Jetzt kann ein Sync Job eingerichtet werden.

backup/proxmox/pbs_verwendung.1607345868.txt.gz · Last modified: by stone