Voor virtualisatie gebruiken wij Proxmox. Voor het back-uppen van Proxmox hebben wij pmrb geschreven. Een tekortkoming in de ingebouwde Proxmox back-ups is dat je zelf bij moet houden welke VM's wanneer worden geback-upt. Je kunt ook niet aangeven wanneer de back-up moet stoppen met draaien, wat gevolgen kan hebben voor de snelheid van de centrale storage. pmrb voorziet in probleemloze Proxmox back-ups.


Wat doet pmrb?

pmrb staat voor "ProxMox Rolling Backups". Het script wordt op iedere Proxmox node gedraaid als cronjob.


root@proxmox1-1:~# pmrb --help

This script will provide you with rotating backups of your VMs. It will make sure to create backups if the oldest backup is too old. However, it will not start new backups if it is too late to avoid performanceissues with your
storage.

Options:
pmrb [--dry-run] [--verbose] [--notafter <HH:MM>] [--maxage <weeks>] [--storage <pool>] [--email <emailaddress>]
--dry-run Don't actually run the backup. Just show which machines would be backed up
--verbose Add some extra output
--notafter Do not start a backup after HH:MM
--maxage Run new backups if the last VM-backup is older than <weeks> weeks
--storage Don't autodetect any storagepool that allows backups, use <pool>
--email Send an email to <emailaddress> for each backup
--help This help

pmrb accepteert een aantal opties waardoor het z'n doel bereikt: Zorg dat we van iedere VM een diskimage hebben van maximaal X-weken oud, maar voorkom onnodige load op de productiestorage op productiemomenten.

Als je pmrb start, gaat het twee dingen doen:

Bepaal in welke Proxmox storagepool we de back-ups gaan plaatsenInventariseer welke VM's er op deze machine draaien en zet die in een lijstSorteer de volgorde van te back-uppen machines op basis van deze voorwaardenAls er een back-up van de VM is die jonger is dan <weeks>, haal de machine dan uit de lijst van te back-uppen machinesAls er nog geen back-up van de VM is, zorg dan dat deze bovenaan het lijstje van te back-uppen machines komt te staanSorteer de rest van de machines op basis van 'hoe jonger de back-up, hoe lager op de lijst'

Begin met het maken van back-ups, maar alleen als het niet later is dan <HH:MM>

Je kunt pmrb dagelijks draaien. Het gaat namelijk niets doen op het moment dat de back-ups jong genoeg zijn. Zodra er een nieuwe VM op het platform bijkomt, zal deze automatisch bij de eerst volgende run geback-upt worden. Als een back-up wel te oud is, zal er een nieuwe back-up gemaakt worden. Omdat het (in de meeste gevallen) niet zal lukken om alle machines in één run te back-upppen, ontstaat er vanzelf een verdeling van de load van het back-uppen over de verschillende momenten dat pmrb draait.

Je kunt pmrb downloaden via Tuxis z'n publieke HG-repository. Tips en feature-requests zijn natuurlijk altijd welkom.