Il server backup di Proxmox è un servizio per eseguire in modo ef­fi­cien­te il backup di macchine virtuali, container e host fisici all’interno di un ambiente Proxmox. Questa guida ti mostra passo dopo passo come in­stal­la­re e con­fi­gu­ra­re il server backup di Proxmox e col­le­gar­lo a Proxmox VE, per impostare una soluzione di backup af­fi­da­bi­le per la tua in­fra­strut­tu­ra.

Primo passaggio: pre­di­spo­ni un server adatto

Prima di iniziare l’in­stal­la­zio­ne del tuo server backup basato su Proxmox, as­si­cu­ra­ti di avere a di­spo­si­zio­ne un server adatto. Il server backup di Proxmox può essere eseguito sia su un hardware fisico sia in una macchina virtuale. Per l’uso in pro­du­zio­ne, però, si consiglia un hardware dedicato.

Il tuo sistema dovrebbe sod­di­sfa­re i seguenti requisiti:

  • CPU: utilizza una CPU a 64 bit di AMD o Intel con almeno quattro core. Una CPU multicore potente migliora le pre­sta­zio­ni durante il backup con Proxmox.
  • RAM: prevedi almeno 4 GB di RAM per il sistema operativo, la cache del file system e i servizi Proxmox. Inoltre, dovresti calcolare almeno 1 GB di RAM per ogni terabyte di spazio di ar­chi­via­zio­ne nel datastore.
  • Ar­chi­via­zio­ne dei backup (datastore): se possibile, utilizza SSD en­ter­pri­se veloci, perché i backup generano spesso ope­ra­zio­ni di lettura e scrittura casuali. Se utilizzi HDD, si consiglia una cache dei metadati per ridurre i tempi di accesso.
  • Rete: le in­ter­fac­ce di rete multi-gigabit (NIC) ga­ran­ti­sco­no una con­nes­sio­ne stabile in presenza di un elevato volume di dati.
Server dedicati
Per­for­man­ce e in­no­va­zio­ne
  • Pro­ces­so­ri al­l'a­van­guar­dia di ultima ge­ne­ra­zio­ne
  • Hardware dedicato ad alte pre­sta­zio­ni
  • Data center cer­ti­fi­ca­ti ISO

Secondo passaggio: crea un supporto di in­stal­la­zio­ne avviabile

Se il tuo sistema soddisfa i requisiti, nel secondo passaggio puoi creare un supporto avviabile (ad esempio una chiavetta USB). Un supporto avviabile contiene tutti i file necessari affinché il server possa avviarsi di­ret­ta­men­te da quel supporto ed eseguire l’in­stal­la­zio­ne. Per farlo, scarica in­nan­zi­tut­to il file ISO più recente dell’ap­pli­ca­zio­ne “Proxmox Backup Server” dal sito ufficiale di Proxmox. L’in­stal­la­zio­ne del server backup avviene di norma di­ret­ta­men­te su un sistema fisico come in­stal­la­zio­ne bare metal di Proxmox, per garantire pre­sta­zio­ni e af­fi­da­bi­li­tà massime.

Per rendere avviabile la chiavetta USB, su Windows puoi uti­liz­za­re lo strumento Rufus. Su Linux, invece, il modo più semplice è scrivere di­ret­ta­men­te l’ISO sulla chiavetta con il comando dd.

Terzo passaggio: installa Proxmox Backup Server

Dopo aver creato il supporto di in­stal­la­zio­ne, puoi avviare l’in­stal­la­zio­ne di Proxmox Backup Server. A tal fine, all’avvio del server apri il menu di boot. A seconda del sistema, di solito puoi farlo tramite i tasti funzione [F2] o [F12], il tasto Esc oppure il tasto [Canc] o [Del].

Seleziona nel BIOS il supporto di in­stal­la­zio­ne creato. Dopo pochi istanti si avvia l’as­si­sten­te di in­stal­la­zio­ne grafico di Proxmox Backup Server. Definisci il disco di de­sti­na­zio­ne su cui in­stal­la­re Proxmox. Quindi imposta il fuso orario, la di­spo­si­zio­ne della tastiera e la password di root. Inserisci inoltre un indirizzo e-mail tramite il quale in futuro riceverai messaggi di sistema e notifiche.

Dopo aver con­fer­ma­to i tuoi dati, l’as­si­sten­te esegue au­to­ma­ti­ca­men­te l’in­stal­la­zio­ne. Non appena il processo è com­ple­ta­to, ti verrà chiesto di riavviare il server e rimuovere il supporto di in­stal­la­zio­ne. Dopo il riavvio, il sistema esegue au­to­ma­ti­ca­men­te il boot nel nuovo ambiente di Proxmox Backup Server. Ora puoi accedere tramite console o in­ter­fac­cia web e pro­se­gui­re con la con­fi­gu­ra­zio­ne.

Quarto passaggio: crea un archivio (datastore)

I datastore sono il fulcro di un server backup di Proxmox. Qui vengono ar­chi­via­ti cen­tral­men­te tutti i backup, gli snapshot e i dati di archivio. Ogni datastore fa ri­fe­ri­men­to a una specifica directory o unità del sistema che funge da percorso di ar­chi­via­zio­ne. Puoi creare tutti i datastore che vuoi, ad esempio per separare diversi obiettivi di backup per server o client dif­fe­ren­ti.

N.B.

In al­ter­na­ti­va, puoi con­fi­gu­ra­re il datastore anche su un file server Proxmox. Questo funge da ar­chi­via­zio­ne di rete centrale, in cui più host Proxmox possono salvare e gestire insieme i propri backup.

Esistono due modi per con­fi­gu­ra­re un datastore: tramite l’in­ter­fac­cia web grafica oppure tramite la riga di comando.

Di seguito ci con­cen­tria­mo sulla con­fi­gu­ra­zio­ne tramite riga di comando.

Prima di creare il datastore, as­si­cu­ra­ti che il percorso di ar­chi­via­zio­ne esista e sia scri­vi­bi­le. Se, ad esempio, hai montato un disco ag­giun­ti­vo in /mnt/backupdisk, ve­ri­fi­ca­lo come segue:

ls /mnt/backupdisk
bash

Se la directory è vuota, è pronta per essere uti­liz­za­ta come datastore. Ora crea il nuovo datastore con il comando:

proxmox-backup-manager datastore create backups /mnt/backupdisk
bash

backups è il nome del nuovo datastore e /mnt/backupdisk è la directory di de­sti­na­zio­ne in cui vengono salvati i dati di backup. Il server backup di Proxmox crea ora la struttura di directory ne­ces­sa­ria e registra il datastore nella propria con­fi­gu­ra­zio­ne.

Per as­si­cu­rar­ti che il datastore sia stato con­fi­gu­ra­to cor­ret­ta­men­te, puoi usare il seguente comando:

proxmox-backup-manager datastore list
bash

A questo punto il tuo datastore è attivo e può essere uti­liz­za­to dai client.

N.B.

In al­ter­na­ti­va, puoi creare co­mo­da­men­te il datastore anche tramite l’in­ter­fac­cia web. Per farlo, accedi all’in­ter­fac­cia web sulla porta 8007. Vai su “Datastore” -> “Aggiungi”. Inserisci quindi un nome e una directory e conferma i dati.

Quinto passaggio: configura utenti e permessi di accesso

Affinché altri sistemi possano salvare i loro backup sul server di backup, devi prima con­fi­gu­ra­re account utente ap­pro­pria­ti e token di accesso. Questi vengono uti­liz­za­ti per l’au­ten­ti­ca­zio­ne e la gestione dei permessi.

Per prima cosa crei un utente dedicato per scopi di backup. È più sicuro che usare l’accesso root standard, perché così puoi definire con pre­ci­sio­ne quali au­to­riz­za­zio­ni riceve questo utente:

proxmox-backup-manager user create backup@pbs
bash

In questo modo viene creato un utente con il nome backup@pbs. Il suffisso @pbs indica che si tratta di un utente all’interno del realm locale del server backup di Proxmox. Suc­ces­si­va­men­te crei un token API, che viene uti­liz­za­to per la con­nes­sio­ne con Proxmox VE. Questo token funge da chiave di accesso, così Proxmox VE può au­ten­ti­car­si au­to­ma­ti­ca­men­te verso il server di backup senza dover salvare una password:

proxmox-backup-manager token create backup@pbs backup-token --privileges DatastoreBackup,DatastoreAudit
bash

Questo comando crea un token con il nome backup-token, che dispone dei permessi DatastoreBackup per scrivere i backup e DatastoreAuditper leggere e ve­ri­fi­ca­re i backup.

Una volta creato il token, Proxmox Backup Server mostra un ID e un valore token. Annota entrambi i valori, perché nel passaggio suc­ces­si­vo ser­vi­ran­no per stabilire la con­nes­sio­ne tra Proxmox VE e Proxmox Backup Server.

Sesto passaggio: collega Proxmox VE al server di backup

Per con­sen­ti­re al tuo host Proxmox VE di salvare i backup di­ret­ta­men­te sul server di backup, devi ag­giun­ger­lo come de­sti­na­zio­ne di ar­chi­via­zio­ne. Puoi farlo sia tramite l’in­ter­fac­cia web sia di­ret­ta­men­te dalla riga di comando.

A questo scopo, accedi via SSH al tuo server Proxmox VE ed esegui il seguente comando:

pvesm add pbs pbs-backup \
--server <IP_BACKUP_SERVER> \
--datastore backups \
--username backup@pbs!backup-token \
--password 'API_TOKEN'
bash

So­sti­tui­sci <IP_BACKUP_SERVER> con l’indirizzo IP del tuo server di backup e API_TOKEN con il valore del token generato nel passaggio pre­ce­den­te. Dopo l’ese­cu­zio­ne corretta, puoi ve­ri­fi­ca­re la con­fi­gu­ra­zio­ne:

pvesm status
bash

Se il datastore è stato integrato cor­ret­ta­men­te, verrà vi­sua­liz­za­to nell’elenco degli archivi di­spo­ni­bi­li. Ora puoi eseguire backup di test per ve­ri­fi­ca­re la con­nes­sio­ne.

Settimo passaggio: configura i job di backup

Una volta stabilita la con­nes­sio­ne, puoi pia­ni­fi­ca­re e au­to­ma­tiz­za­re i job di backup. Anche questo può essere con­fi­gu­ra­to di­ret­ta­men­te tramite shell. Un esempio di job di backup gior­na­lie­ro che esegue il backup di tutte le VM e dei container alle 3 di notte è il seguente:

echo "0 3 ** * root /usr/sbin/vzdump --all --storage pbs-backup --mode snapshot --quiet" >> /etc/crontab
bash

Questa voce cron crea au­to­ma­ti­ca­men­te ogni giorno alle 03:00 un backup snapshot di tutte le macchine virtuali e dei container sullo spazio di ar­chi­via­zio­ne definito pbs-backup.

Suc­ces­si­va­men­te puoi ve­ri­fi­ca­re i backup sul server di backup nel datastore con­fi­gu­ra­to (ad esempio /mnt/backupdisk).

Ottavo passaggio: ri­pri­sti­na e verifica i backup

Per il ri­pri­sti­no di singoli backup hai a di­spo­si­zio­ne sia il client Proxmox VE sia la riga di comando del server backup. Se, ad esempio, desideri ri­pri­sti­na­re un backup di una VM con ID 100, puoi usare il seguente comando da terminale:

proxmox-backup-client snapshot list
bash

In questo modo vi­sua­liz­zi tutti gli snapshot salvati. Seleziona lo snapshot de­si­de­ra­to e avvia il ri­pri­sti­no con il seguente comando:

proxmox-backup-client restore <SNAPSHOT> <PERCORSO_DESTINAZIONE>
bash

Questo comando estrae dal datastore lo snapshot di backup che indichi in <PERCORSO_DESTINAZIONE> e da questo crea un nuovo file di disco virtuale.

Per la verifica periodica dell’integrità dei tuoi backup Proxmox puoi far ve­ri­fi­ca­re au­to­ma­ti­ca­men­te gli snapshot. In questo modo il server controlla che tutti i blocchi di dati siano presenti in modo completo e senza errori.

proxmox-backup-manager verify run backups
bash
Vai al menu prin­ci­pa­le