vSphere Tags & Veeam Backup
I have spent many of my years as an IT profession thinking about and designing data protection solutions. Both for organizations I worked in and for other organizations I consulted with. And it has been my opinion for much of this time that the number one enemy of well designed system is complexity. Anywhere manual process is required to maintain a data protection system is a place where failure will result. I start with this every time.
That is why I have been a longtime proponent of utilizing metadata or 'Tags' in all backup jobs I create. So let's get into how this works with a VMware backup job though Veeam.
First, we are going to need to assign these tags in vSphere. I will demonstrate this through the UI, but this can also very easily be achieved through CLI. If you want to take a look at this method; I outline these steps here
Above is the menu showing the Tags & Custom Attributes. I have done a simple arrangement with all the tags I will utilize under the 'VMs' category. This category will only be utilized for Virtual machines. And i am allowing for Many Tags, for reasons we will look at in the Backup Job itself.
I then assigned these tags to the VMs I want to cover with my Veeam backup job. You will see I have a 24HR and 12HR tag. These will be set for my backup schedules. But we also have the SQL and Infrastructure tags assigned. These set for type of workload. So, 2 ways to organize the VMs. Workload and SLA
Now, let's get into setting up the Veeam Backup Job. This will be a job that covers VMs that require a 24HR RPO, or backed up once a day.
Under Virtual Machines I will use the Tag Object method. In the above example I am selecting the Single tag object. And I can add the required tags. What this will mean is VMs belonging to either group will be backed up by this specific Veeam Backup Job. So, if a VM belongs to one or the other, it will be covered in this job. This is ultimately what I will use, but lets look at the alternate method.
This would be the multiple tag object. With this method a VM would need be labeled with Both Tags. Think of it as an And statement.
This would mean, if I labeled my Active Directory Server and SQL Server with the 24HR tag, only the SQL Server would be selected with the choice above. But this isn't what I am looking for in this example. So, I am going with the first choice. And below is the reason.
I am looking to Backup all VMs with the 24HR tag in this single job. It simplifies the setup and management to organize VMs in this manner. But just because I want to organize all VMs with the same RPO it does't mean they should all be treated the same during a backup.
In this case I don't want to apply Application processing to all VMs in this job. The reason for using Tags is to make it very easy for future VMs to be easily added to a job by getting this labeled applied during provisioning. But I cannot be completely sure what future VM workloads may be. There may be VMs that will fail during processing that don't require it. So why hold up the whole job? So, in the above example I can control both what is in the job, and which get application processing applied. 24HR RPO tags are backed up, but only those labeled SQL get processed. This could easily be changed to something like App Processing or Application. Again, whatever makes it easiest to mange protection jobs going forward.
And that is it. Very simple demonstration, but hopefully provides an idea on how tags can be utilized in a backup job. Providing an automatic way to manage your data protection jobs with Veeam.