Posted by: Denny Cherry
Backup & recovery, SQL Server, vCenter, VMware
VMware’s vCenter system uses SQL Server as it’s default database platform. One thing that needs to be looked into for a lot of VMware installations is the backup setup for the vCenter databases. Often I find the vCenter databases configured in SIMPLE recovery. Now this doesn’t mean that the database is simple to recover in the event of a failure. What this actually means is that there is no point in time recovery of the vCenter databases. Now this might be OK for smaller systems as there probably aren’t a whole lot of changes being made to the vCenter farm other than performance data. As long as you are OK with loosing a days worth of performance data then keeping the vCenter databases in SIMPLE recovery might be OK.
However for larger farms lots of changes are probably being made to the configuration of the farm on a daily bases. Because of this you won’t want to run the database in SIMPLE recovery. Instead you’ll want to run the database in the FULL recovery mode. This enables the ability to do point in time recovery of the database once you start doing database transaction log backups. This means that when (note that I didn’t say “if”) the hard drives on the vCenter server fail and cause the database to be lost
of become corrupt you’ll only loose a few minutes of data at the most.
To ensure that you don’t loose a lot of data from the vCenter database you will need to begin doing transaction log backups. This will do a couple of things. First it’ll make it so that you can restore the database successfully. Second it’ll make sure that the hard drive on your vCenter server doesn’t fill up with one giant transaction log file. If you don’t have a DBA in your shop, and you’ve got a SQL Server with a license that you paid for (something other than the SQL Express that VMware installs if needed) you can setup the SQL Server Maintenance Plans to handle the backups using SQL Server Management Studio. You can always bring in a SQL Server consultant to setup backups and make sure that everything is setup correctly and working if you don’t have a SQL Server DBA handy. If you’ve got a DBA handy in your shop you’ll probably want to have them setup SQL Server backups as per your normal company policies so that the databases are backed up, and those backups tested to ensure that they are functional.
Personally I like to set the recovery mode for the vCenter databases to FULL when working at clients, but it’s totally up to you, as long as you understand what the risks are with each of the options available to you. (Yes I know that I didn’t cover the BULK_LOGGED recovery model, for the purposes of VMware’s vCenter databases the BULK_LOGGED recovery model and the FULL recovery model are the same.)
Hopefully I have helped demystified the SQL Server backup concepts for you a little bit.