Backup di Host Fisici con PBS

From RVM Wiki
Jump to navigation Jump to search

Creazione snapshot

  • Installare da repository RVM lo script:
apt install backuppc-script
  • Impostare
backup-pre
in modo che crei uno snapshot del sistema montato su /media/backup con tutti i fs da backuppare.


Installazione client PBS

Debian 11 Bullseye

* TODO

Debian 10 Buster

ATTENZIONE: install la versione 1.14 che non supporta namespace

sudo  wget http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
vi /etc/apt/sources.list.d/pbs-client.list
deb http://download.proxmox.com/debian/pbs-client buster main
apt update
apt install proxmox-backup-client

Installazione script di backup

Con pacchetto RVM

  • Installazione pacchetto:
apt install proxmox-backup-script
  • Configurare lo script per gli snapshot:
vi /etc/backup-script.conf
  • Configurare le credenziali
vi /etc/pbsbackup

Per backuppare su un Namespace (Solo buster)

export BKP_REPO="PBS --ns mynamespace"

Manuale

  • Creare lo script:
cat | sudo tee /usr/local/sbin/pbsbackup << 'EOFile'
#!/bin/bash

source /etc/pbsbackup

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

backup-pre

proxmox-backup-client \
    backup \
    root.pxar:$BKP_PATH  \
    --repository $BKP_SRV:$BKP_REPO \
    --all-file-systems

backup-post
EOFile
  • Renderlo eseguibile:
chmod +x /usr/local/sbin/pbsbackup
  • Creare il file di configurazione:
vi /etc/pbsbackup
#!/bin/bash
export BKP_PATH="/media/backup"
export BKP_SRV="10.11.12.13"
export BKP_REPO="PBS"
export PBS_PASSWORD="secrepassWord"

  • Creare il fiel di cron:
cat | sudo tee /etc/cron.d/pbs << EOFile

MAILTO=admin@example.com

#min    hours   DayOfMonth      Month   DayOfWeek user command
00      22      *               *      *          root /usr/local/sbin/pbsbackup > /dev/null
EOFile
  • Provarlo
/usr/local/sbin/pbsbackup

Autenticazione user con un token con diritti solo su quel datastore

  • Creare uno user in PBS, con una password che non si userà:
Configuration/Access Control/User Management
  • Creare un API Token correlato allo user appena creato in:
Configuration/Access Control/API Token
  • Memorizzare username e token
  • Assegnare le permission allo user:
Configuration/Access Control/Permission/Add Permission
Add
User Permission
Path: /datastore/DATASORE-NAME
User: username
Role: DatastoreBackup
  • Assegnare le permission SIA allo user che all'API Token:
 Configuration/Access Control/Permission/Add Permission
Configuration/Access Control/Permission/Add Permission
Add
API Token Permission
Path: /datastore/DATASORE-NAME
API Token: tokenname
Role: DatastoreBackup
  • Configurare lo user sul client:
vi /etc/pbsbackup
export PBS_USER="myusername@pbs!mytokenname"
export PBS_PASSWORD="40de90f4-6791-40e2-99cb-57c734db993d"