Veeam Backup & Replication is one of my favorite piece of software I get to work with. I’ve been working with B&R since 2010 (v5) and it has always been easy to install, easy to configure, and quick to start taking backups and protecting my environment. And that is just the software, the company itself is even better. Their support forums are full of employees and users that are knowledgeable and quick to help. The best way to describe Veeam is a company that is on your side as an Administrator. They listen to their community, their users, their customers and are developing solutions that make our jobs easier.
The following guide walks you through installing SQL Express, Veeam, connecting to vCenter 5.5 and configuring deduplication for a secondary drive on Windows Server 2012 R2. I have a preference for installing all software to a secondary drive instead of the OS (C:\) drive so this documentation shows how to install each component to that secondary drive in the event you have the same preference as me.
Veeam’s site contains best practices regarding backup types, sizing of your Veeam server, deduplication recommendations, and everything else that goes into the planning of your Veeam Backup & Replication deployment. This guide is more just to show how to configure the components and an example of what I’m seeing for deduplication rates.
Prerequisites:
1. Windows Server 2012 R2 patched, joined to domain, with 2 additional drives (one for Veeam to be installed on and the other for backup data)
2. A user or group defined for Veeam administrators (required when doing a standalone SQL Express install in order to use Veeam, the service account used to run veeam must be a member of this group or added as a SQL Administrator in step 8)
3. A domain user account with admin rights to the vCenter server
4. Mount the Veeam B&R ISO
5. Turn off User Account Control (SQL Express install will fail without this)
Install:
1. Open “This PC”, located the Veeam disc, right click and choose “Open”
2. Browse to “Redistr\x64”, locate and double-click on “SQLEXPR_x64_ENU.exe”
3. Once the “SQL Server Installation Center” windows appears, click on “New installation or add features to an existing installation”
4. Accept the license terms and click “Next”
5. After Setup Support Files are loaded the SQL Server 2008 R2 Setup window will appear. Choose the features you’ll need (just Database Engine Services usually), change the Directories to the secondary drive (D:\ for this writing) and click “Next”
6. Enter the name of the instance and change the root directory to the secondary drive and click “Next”
7. You can run the SQL database engine as Network Service, but I prefer running as a named service account. Enter the domain\username, password, and click “Next”
8. Choose “Mixed Mode” for authentication type. Enter the “sa” password and immediately save it somewhere.
- a. For “SQL Server administrators”, only users/groups added here will be able to open and run Veeam. Add all users that will need to access Veeam or create a group.
- b. Click “Data Directories” tab and ensure all the directories are pointing to the secondary drive and click “Next” (For organization I prefer to create folders for each file, but it isn’t necessary)
9. Choose if you want to send error reports to Microsoft and click “Next”
- a. Install will now begin to run
10. Once Installation completes, click “Close”
11. Navigate back to the root of the disc drive then locate and run “Setup.exe”
12. Click on install for “Veeam Backup & Replication”
13. Click “Next” through the initial setup screen
14. Read and accept the license agreement and click “Next”
15. If you have a license key add it now, otherwise click “Next”
16. Choose the program features to install. Click “Browse” button to change the installation to the secondary drive (you will have to make a new Folder name “Veeam” followed by “Backup and Replication” inside of it). Click “OK” then click “Next”
17. If any of the components that are required show a status of “Failed”, click the “Install” button
18. Enter the domain\username and password of the account Veeam will use to access vCenter and click “Next”
- a. This user should be a local administrator on the server running Veeam or you’ll receive this message
19. Choose “Use existing instance of SQL Server”, select the Server\Instance and then enter a name for the Veeam database. Click “Next”
- a. If the domain\veeam account isn’t in the Veeam Admins group, you will receive the following error that the user account “lacks CREATE ANY DATABASE permission”
20. Note the ports for Backup service and Catalog service and click “Next”
21. Change the “vPower NFS” directory to the secondary drive by clicking “Browse”, then navigate to the D:\Program Files\Veeam\Backup and Replication” then create a new folder inside named “NfsDatastore” and click “OK”.
- a. For Guest file system catalog, click Browse and create a new folder named “VBRCatalog” under the D:\ drive. Click OK then “Next”
22. Review the configuration and then click “Install”
23. Once installation completes, click “Finish”
24. Now that Veeam is installed, let’s upgrade it to the latest patch. On Veeam’s website, download the latest patch for the version you’re running (Patch 4 for this writing) and copy it out to the server running Veeam.
25. Run the executable for this patch
26. Click “Next” through the first screen of the patch wizard
27. Click “Install” to begin the installation
28. Once the patch is installed, click “Finish”
29. Now that Veeam is installed and fully patched, locate Veeam Backup & Replication and open
30. You will receive a message about components that need to be updated (vPower NFS, Transports, Installer, etc). Click the check box next to the server and click “Next”
31. Click “Finish” once the components have been updated
32. Click the menu button and then click on “Options”
33. Click the check box for “Enable e-mail notification” and then enter your SMTP server, from email and to email. Click “OK”
34. Click on “Virtual Machines” towards the lower-left of the window and click “Add Server”
35. Click on your Server type (VMware vSphere for this writing)
36. Enter the name or IP of the vCenter server and click “Next”
37. For credentials, click “Add” then enter the domain\username and password for the Veeam account used to connect to vCenter. Click “OK” then click “Next”
38. Once the server has been added, click “Finish”
39. By default, the folder all VM backups are stored in is “C:\backup”. To change this before you create any backup jobs is to click on “Backup Infrastructure” towards the lower left of the window then click on “Backup Repositories”
40. Click the “Add Repository” button towards the top-left
41. Name your Backup Repository and click “Next”
42. Choose the type of repository (Microsoft Windows server) and click “Next”
43. Click the “Populate” button then select the backup drive and click “Next”
44. Enter the folder name (I took the default of D:\Backups) and click the populate button to see the capacity and free space of the drive. Limit the max concurrent tasks and/or data ingestion rate and click “Next”
45. Ensure vPower NFS is enabled and click “Next”
46. Review the settings and click “Next”
47. Once it completes, click “Finish”
48. Once the new repository appears, click the Menu button in the top-left corner and then click “Configuration Backup”
49. Change the Backup repository to the newly created repository and click “OK”
50. Right click on the “Default Backup Repository” and click “Remove” and click “Yes” to confirm delete
51. Now that a new repository is created, we need to enable deduplication on that folder. Open Server Manager, click on “Manage” then choose “Add Roles and Features”
52. Click “Next” through the “Before you begin” screen
53. Choose “Role-based or feature-based installation” and click “Next”
54. Choose “Select a server from the server pool” and select the current server then click “Next”
55. Expand “File and Storage Services”, then “File and iSCSI Services” and then check the box next to “Data Deduplication” and click “Next”
56. Click “Next” through “Features”
57. Click “Install”
58. Once installation is complete, click “Close”
59. Back in “Server Manager”, click on “File and Storage Services”
60. Click on “Volumes”, right-click the drive that we’ll be enabling dedupe for and choose “Configure Data Deduplication”
61. Set data deduplication from “Disabled” to “General purpose file server”, change “Deduplicate files older than (in days)” to 0.
- a. To exclude folders from being deduped on that disk, click the “Add” button, expand the “Z:\” drive, and select each folder to prevent deduplication. In our setup, only backups are going to the Z:\ drive so we’ll skip this
- b. Click “Set Deduplication Schedule” and then check the box for “Enable throughput optimization”. You will set the schedule for when dedupe runs. This should run when your backups are NOT running. My backups run OUTSIDE business hours, so dedupe should run DURING business hours. Click “OK” when finished and “OK” again
Now that Veeam is setup and connected to vCenter and we have a backup repository created with dedupe enabled, let’s take a look and see what kind of savings we get when we take our backups. One thing to note is that you won’t see much dedupe savings on a single backup file, but on a long backup chain and multiple backup jobs is where the real savings starts to come into play.
I have configured backups of 2 of my Exchange 2013 servers to run every 6 hours and keep 28 restore points (7 days). This backup job is set to “Reverse incremental” and Veeam is performing inline dedupe, compression set to “Optimal” and optimized for “Local target”. My first full backup was 36.3GB. Over the next 3 days, I have taken 12 more backups for a total of 75.1GB.
After dedupe ran over the last 3 days, we see the size as 75.1GB, but Size on disk is only 10.5GB
This is where it gets a little interesting though. In powershell, running the command “Get-DedupStatus” only shows a savings of 14GB. I’m not sure which one is accurate, but even a savings of just 14GB in one backup job is an improvement. Since Windows Server 2012 deduplication runs across all files on a volume, you will see increased savings for every new backup file that’s created for every job that writes to that backup repository.