Proxmox Backup Server is an enterprise-class client-server backup software that backups virtual machines, containers, and physical hosts. It is specially optimized for the Proxmox Virtual Environment platform and allows you to backup and replicate your data securely. It provides easy management with a command line and web-based user interface and is licensed under the GNU Affero General Public License v3 (GNU AGPL, v3).
So, for a disaster recovery type backup, this seems like a functional solution, but ZFS snapshots are still much more convenient to deal with user-induced file deletion, ransomware, etc. Depending on how badly you want the PBS integration in PVE and number of datasets being backed up in PVE vs TrueNAS in your environment, it might make sense to deal with these limitations and continue using PBS to backup everything.
First, I need to install the proxmox backup client on the TrueNAS system. They only have install guides and binaries for Debian and Ubuntu, and we can use this on TrueNAS SCALE (which is based on Debian Bullseye as of this writing). So, you add the Proxmox public key and sources.list entry, run apt-get update, then apt-get install proxmox-backup-client. Fairly simple.
To do this, I went to System Settings -> Advanced and added a Cron Job. The job calls the backup.sh script hourly as root. Root should have the required permissions to read all of the files in the zfs pool, so it should be able to archive them as well. We could also create a new user for this job, and give them read-only permissions to the entire dataset.
PS: My home PBS is running dedicated (without PVE) on a 8-year old PC (2 core Intel i5 CPU, 8 GB RAM, one new SSD for system and 2*4 TB Disks for Backup Storage). All using ZFS, the storage as ZFS-Mirror.
This easily stores a year of Monthly backups, 8 weeks of Weekly Backups, and 7 Daily backups and 4 hourly ones.
As such, it completly saves me / my clients from buying a dedicated commercial backup for any Windows VMs, as PBS handles this VERY well!
(Proxmox uses MS Shadow Copy for this, this also covers eg MS-SQL!).
This is actually fantastic and I've been wanting to set something up locally for my Proxmox server but best I could do was a remote share via rsync. Thanks for the effort!
I can't seem to login though after initial creation. Username: admin & Password: pbspbs don't work for me. Any suggestions?
You do not seem to have anything in the backup dir....
you should have at least ".gc-status" file
what is the setup of this share ?
can you check inside the container what you have in /backups
I'm running into the username/password not being accepted error. This is well documented on the GitHub page, e.g. -backup-server-dockerfiles/issues/16#issuecomment-1049945808 and the solution seems simple enough, just not sure were to edit this?
In order to back up your Proxmox Mail Gateway configuration on a Proxmox BackupServer, you first need to configure the instance as a backup remote.You can then directly create and restore backups, as well as create ascheduled backup job to run regular backups.
The installer will automatically detect all the hard drives connected to the server.
If you have a private DNS server configured, you can also use the server's hostname, such as :8007/.Proxmox Backup Server GUILet's discuss various options available in the Proxmox Backup Server management interface. The Administration menu option allows you to perform various administrative tasks. Here, you can manage services, updates, repositories, and syslog. You can also restart or shut down Proxmox Backup Server.
You can purchase a subscription if you're planning to use this server in a production environment. After purchasing a subscription, click Subscription in the navigation menu and then click the Upload Subscription Key button, as shown in the screenshot below.
Make sure the Add as Datastore checkbox is selected and click the Create button. This adds the newly created directory as a datastore. If you have multiple unused hard disks, you can click the ZFS option and create a ZFS pool. ZFS makes your backups more resilient to single-disk failures.
Now, select the Backup Operator user and assign a role to it. For our use case, the DatastoreAdmin role is sufficient, as it will allow our Backup Operator user to create and manage backups in the datastore.
Notice how the username is specified here. Just entering the username (e.g., root or backup) is not sufficient; you also need to specify the realm. To specify the root user, you need to type root@pam in the username field. The fingerprint can be obtained from the Proxmox Backup Server Dashboard, as shown in the screenshot below:
We are now ready to create a backup job in the Proxmox VE datacenter to save the backups in Proxmox Backup Server. To do so, make sure Datacenter is selected in Proxmox VE. Now click the Backup option, and then click the Add button.
To restore a VM or container from backup, all you need to do is select the Proxmox Backup Server ID, locate the appropriate backup, select it, and then click the Restore button, as shown in the screenshot below:Subscribe to 4sysops newsletter!
If you want to restore a particular file or folder, you can do so by clicking the File Restore button. You can also perform an on-demand backup and restore an individual VM or container to Proxmox Backup Server. You just need to select pbs as the storage target for your on-demand backup. For more details on Proxmox VE backup and restore, check out my previous post.
First you have to initialize all disks you want to use for the backup datastore with GPT, this can be done in the GUI via Administration > Storage / Disks > Initialize with GPT' or on the command line with
In this test, we used a RAID mirror, but a RAID-10 or RAID-Z2/ RAID-Z3 can also be used for a larger number of hard disks. Proxmox recommends SSD-only for backup storage. If this is not feasible for cost reasons, we recommend the use of a ZFS Special Device (ZFS Instant Log - ZIL-Device). - for example Intel Optane. Once the pool has been created, it is automatically included in the PBS as a backup datastore. Now you can see the created datastore under Datastore > pbs-local.
Explanation of Prune: Prune checks whether certain backups can be removed from the index based on the set retention periods. The index contains the information about all blocks of the backups, which could be restored to another system via the PBS. For example, if there are 6 versions of a block = 6 backups and a retention of 5 is set, Prune will delete the oldest version of the block from the index during the Prune Schedule, so that the retention is correctly maintained again and only 5 versions of the block are left. When Prune does this can be set via "Prune Schedule". No load is created on the storage during the process, so the Prune Schedule can be executed at any time.
Explanation Garbage Collection: The garbage collector grabs the blocks excluded from the index by Prune and also deletes them from the storage. This creates load on the storage and may take longer if there are many backups. Depending on your needs, we recommend running the garbage collection once a day or once a week.
Now that the PBS is stored in the Proxmox VE system, you can perform a test backup. The best way to do this is to perform a one-time backup by clicking either on a container or on a VM and selecting Backup > Backup now. Please note the different backup modes, which are well described in the Proxmox documentation. After a successful backup you can see the backup in the PVE in the GUI as well as on the Proxmox Backup Server.
You can easily configure automatic backups in Proxmox for all of your virtual machines to automatically back up to Proxmox Backup Server. This will automatically back up the virtual machines on a specific schedule.
5. You will receive a message that this will permanently erase the existing virtual machine. If you agree, select Yes. Your virtual machine will now be restored from the backup you selected!
Proxmox Backup Server is enterprise-class client-server backup software that backs up virtual machines, containers and physical hosts.
It is a bare metal solution (ie it installs directly on the physical server without the need for anything else) based on Debian.
Proxmox VE backup support:
Proxmox Backup Server fully supports the Proxmox VE virtualization environment from 6.2.10 both from the web interface and from the command line and allows you to perform VM and CT backups. Each PBS can connect to several Proxmox VEs.
Deduplic:
Periodic backups produce large amounts of duplicate data. The deduplication algorithm avoids redundancy and minimizes the storage space used, optimizing the PBS storage space.
Incremental Backups:
Statistically, the changes between VM and CT backups are generally low. Incremental backups allow you to send only the data that has changed between one backup and another. This mechanism reduces storage space, the impact on network traffic and reduces the I / O of both PVE and PBS.
Remote synchronization and backup outsourcing:
Data can be efficiently synchronized to remote sites, thus allowing the data to be simply relocated to geographically distant sites. To do this, only the deltas containing new data are transferred (incremental backup).