Purpose of this guide:
This guide explains step by step, how to install and configure the brand new Proxmox Backup Server with the Proxmox VE virtualization environment. At this link (https://www.firewallhardware.it/en/proxmox-backup-server-functionalities-and-features/) you can find a description of the Proxmox Backup Server solution, such as the possibility of performing incremental backups of VMs and CTs. We will also show with a series of Video guides many interesting aspects of the Proxmox VE + Proxmox Backup Server solution.
Software environment used:
The guide is applicable to the Proxmox VE ver. 6.30 onwards.
The Proxmox Backup Server solution used in this article is 1.0-6.
Ambiente Hardware utilizzato:
This guide requires 2 systems:
- A Proxmox VE environment, (PVE) installed and running.
- A Proxmox Backup Server environment, (PBS) that we are going to install.
The PBS environment must have 2 discs (for convenience): one for the OS and the other for backup storage.
The two operating systems have been virtualized on this hardware platform: https://www.miniserver.it/proxmox-appliance/virtual-appliance-a3server-aluminum.html equipped with a 2TB SSD disk and 32 GB of RAM.
To try the PBS solution, you can also use a ready-made and free downloadable virtual PVE solution that we have made available at this link: This is a 3-node virtual cluster configured with Ceph.
How to Install Proxmox Backup Server:
Since the installation is really very simple (like PVE), we will only cover the important steps: Once the software has been downloaded, we proceed with the basic installation of the PBS.
Since this is a test, our PBS will be a virtual machine. Below we post the configuration we have adopted on PVE so that you can reproduce it:
At this point we start with the installation.
We recommend that you choose the ZFS filesystem first. The reason you can go and see in the previous articles where we talk about the functionality of the ZFS filesystem.
At the end of the installation we enter the console and give the commands:
apt-get install qemu-guest-agent (only if you are creating a VM)
apt-get install htop iotop (we’ll need them later!)
let’s reboot and finally we can enter the GUI. Warning: the new Proxmox Backup Server GUI responds on port 8007 and NOT on 8006.
The graphic interface will look like the following image:
Let’s configure the PBS:
Clicking on Disks the situation should be as follows:
Let’s now create the storage that will host the backups: Click on Disks, ZFS and do the seg. Configuration:
Our PBS storage will then appear in the Datastore session as follows
Let’s now move on to the configuration of the PVE.
Let’s configure the PVE:
Let’s go to our PVE and go to Datacenter, click on Storage, Add and select the Proxmox Backup Server storage device.
Let’s go now to configure it:
in our case the configuration will be as follows:
Where is it:
ID: is the name you want to give to the storage resource seen by the PVE
Server: the IP of the PBS
Username: userid must be root @ pam, which is user @ .
Password: PBS password.
Datastore: in our case it will be backupprox, that is the datastore previously created on our PBS. I therefore point out that it will be possible to configure multiple datastores on the same PBS with different rules, such as backup retention or encryption.
Backup Retention: with this menu we could choose how many backups to keep in the datastore. ATTENTION: the indication “It’s preferred to configure backup retention directly on the Proxmox Backup Server appears clearly.” ie Proxmox recommends not configuring the retentions parameters here, but configuring them on the PBS.
Fingerprint: you can get the string to put in this field by going to the PBS dashboard, clicking on the “Show Fingerprint” button, copy and paste it here.
Encryption: here you can decide whether to perform backups in encrypted mode or not (default). It will also be possible to upload an encryption key already in our possession (Upload an existing client encryption key) which will allow us to reload previously encrypted backups.
By clicking on Add, if everything has been done correctly the configuration should be completed.
By clicking on pbs, the final result should be this:
At this point the configuration is finished, we just have to create a VM on the PVE and check that everything is working.
Note: if you have created PVE as a VM, you must go under the Options of the created VM and disable the “KVE hardware virtualization” parameter, otherwise your VM will NOT boot.
Let’s start the VM and perform a backup taking care to select our PBS as the destination:
Let’s move now to PBS:
Once the backup is launched, let’s see what happens on the PBS.
By clicking on the backupprox datastore, that is the datastore selected as the destination of our backups, we will be able to observe the running task.
Let’s now explore the options present on datastore.
As mentioned previously, we know that the retention parameters can be set on each PBS datastore, so let’s set them:
Prune e GC: In this menu we find the scheduling of 2 tasks or Prune and Garbage Collector.
Prune: This task allows you to set the backup retention parameters, that is the rules that allow you to decide whether a backup instance should be kept or deleted. All this based on parameters, keep-last, keep-hourly, keep-daily, etc. that we are going to set in the same menu.
to better understand the mechanism Proxmox provides us with a prune simulator that helps to understand these parameters.
A trivial example: if I wanted to keep the last 20 backups of a VM, just set keep-last = 20.
It is important to understand that Prune does NOT take care of the actual cancellation of the instances, but rather takes care of applying the rules defined in the “keep-XXX” fields by deleting the index files relating to the instances to be deleted, which will be deleted by the Garbage task Collection. Therefore, after executing the prune command, in the Content menu, you will notice a decrease in the instances, but you will not notice a decrease in space in the Datastore.
Prune Schedule: based on the above it is possible to set a schedule for this task.
Garbage Collection: deals with the actual cancellation of the instances that the Prune has “reported” based on the retention set.
Garbage Collection Schedule: based on the above it is possible to set a schedule for this task.
Verify Jobs: the scheduling of this task is used to check whether or not the backup instances have undergone a degradation linked to hardware problems on the datastore on which they are located.
If we relaunch the backup on the PVE, we see that under the Datastore and on the PBS Dashboard the information begins to populate.
Obviously it will be possible to notice that the first backup will be total, while the following ones will be incremental, so you will have mainly 2 benefits:
- They will be faster and thus require much less I/O on both the PVE source machine and the PBS target storage.
- They will take up much less space on the Datastore on our PBS.
To learn more about these aspects and to learn more about the use of this tool, we refer you to the videos on our youtube channel to which we invite you to subscribe to stay updated on the various insights that we regularly release.
Proxmox Backup Server: configuration and operation [Video ITA]
Proxmox Backup Server: the new solution for incremental backup – Italian video [Part 2]
Currently the PBS solution is only at the Beta1 version, however there are really very interesting features. Despite being a Beta, therefore NOT suitable for use in production, the solution seems very stable to us.