Looking for a nicer solution to backup, I came across AppAssure and decided to take a closer look. My previous exposure to Microsoft’s Data Protection Manager lead me to Dell’s offering based on features and performance.
Since most of our customers are smaller businesses (50 users or less), backups tend to be file synchronization, cloud or tape options. The small business is generally not served by the more enhanced power of bare metal restores and technologies like de-duplication. And it’s a shame, because there is a real market for these great tools if they’re at a reasonable price. In talks with Dell representatives, I learned that AppAssure was a little-known company, and Dell wanted to put some muscle behind this venture to help it take off. My first exposures to the product were through countless seminars and demonstrations. Great for an overview, but not so good if you want to understand how this works. I moved to a trial version (which you can download here – registration required) to see more about this.
The AppAsure backup is essentially just a wrapper around VSS (Volume Shadow Copy) in Windows. As such, you won’t find this solution working on OS X or Linux. The product touts a number of nice features, and, in a purely Windows environment – looks to be the kind of backup solution many businesses are looking for. AppAssure includes a central server component called The Core, and connections to other computers by way of installed Agents. All of these can be installed at will, based on requirements and needs. The Management Console in version 5 is a web-based configuration tool – a departure from previous versions where the management tool was an application.
My experience with the product confirmed these numbers were relatively accurate (I wasn’t able to test every use-case or speed listed though). While a Windows 7 Professional machine was sending a base image, the main AppAssure process required less than 2% of total CPU load. On the first snapshot of the Exchange Server, the Agent.Service.exe process maxed out at about 11% CPU usage. An impressive lack of local power required.
The lynchpin of the AppAssure process is the Repository. This is where AppAssure stores the backup information related to your system. When you create a repository, all that’s needed is a directory on an addressable drive (this could be local or a CIFS UNC share).
You might have needed a double-take on that one. It’s true, the location where AppAssure places files is always a partitioned drive space and AppAssure will use the file system you pick to store it’s own data. I was quite surprised when I started the first repository creation process. I really expected AppAssure to need an unpartitioned full drive to access. The challenge is that this location needs to be accessible with enough speed for read/write operations to keep up with the incoming demand. When you create the repository, AppAssure doesn’t do any sort of benchmark to warn you – so you’ll want to be sure to consult some of the various recommendations out there.
The repository data is stored at one-time and of a finite size. You’ll have to choose what size to give the respiratory when you create it too, and I didn’t see any options to expand the size after the repository is created. And, while you can just expand and create new repositories – I didn’t see any way that AppAssure might use all the repositories in a pooled way (or to improve the overall backup efficiency). It appears that you’ll be left to the heavy lifting of balancing space usage.
While the interface that exposes this information is seriously lacking, I was excited to see how the de-duplication technology in AppAssure would look. The information I could gather from a few recovery sets was indeed impressive. The finer details about the compression involved could have included more data. The interface path to find compression information was more convoluted than it needed to be. What should be here is a “Repository Information” page that lists all the compression and de-duplication details.
The biggest question with AppAssure (despite local file support) would be whether it would support NAS devices and other network-based storage hardware. Essentially, this is implemented by way of CIFS support. You can connect to NAS devices and even other Windows based machines on your network by way of a UNC (Universal naming convention), credentials and AppAssure will create the repository files required. Be aware though, this may not be the best choice as far as performance goes. The beauty of this kind of support means that many organizations might already have a mass of storage space available (thus reducing the need for a massive hardware purchase).
As long as you have admin rights to machine you’d like to deploy to, AppAssure can remotely install the agent on that computer and automatically reboot (if you want). I also found that part of the installation process automatically opens the required firewall port for the computer in the local Windows Firewall configuration. In addition, any run-time files that needed to be deployed were also downloaded and installed automatically. All of the install activity can be seen in the console (pictured above) and on the local computer in the C:\WindowsTemp folder. The agent itself is installed locally at: C:\Program Files\AppRecoveryAgent – After the agent is installed and computer rebooted – you have to start protecting the computer manually from the console.
This one was by no means a killer feature when I first saw that AppAssure supported it, but it was one of those “let’s see how it works” things. I tried it on a domain controller (running inside of an ESX server) and had that exported to VMware Workstation format files. After a lengthy export process, and with the original machine still running, I brought the resulting files to a VMware Workstation installation and loaded it. The machine booted with no trouble and I had the machine accessible. Color me impressed. This type of feature can get your failed server back online in a fraction of the time if a failure occurs.
Also supported in AppAssure is a method of restoring computers directly to the base hardware. This type of restore would be incredibly appealing in scenarios where a drive may have been replaced or a machine needed to be recovered from a total failure.
The Exchange related features are supported automatically when the agent is installed. When the agent see that a supported version of Exchange is on the server, the entire process of creating a recovery point is modified to suit that process.
It should be noted that having the Mailbox Restore application available is nice, you’re forced to have Outlook installed to enable the restore functions – not a good idea if you plan to keep Office client binaries off your server. The Mailbox Restore tool appears to be able to open raw unmounted Exchange database files (perhaps those mounted to a restore point) and restore messages directly into PST files in Outlook. That’s the kind of tool that could save your hide.
Another feature that looks great with this product is the ability to take backups offsite by way of replicating with another Core installation. Something like this may not appeal to smaller businesses, but for company looking to keep control of data and take it offsite – replication can provide for both scenarios fairly well.
The next challenge was to get the agent running on a Windows XP computer. The computer would be a Virtual Machine. The first attempt yielded all sorts of agent errors locally with the AppAssure service just dying. I decided to run all possible Windows Updates – again, the agent failed. As a last-ditch attempt, I put the computer in the local domain and reinstalled the agent. Again it failed.
The next step was to build a clean Windows XP machine inside a virtual machine. I installed all updates, joined the domain and then attempted a remote deploy of the AppAssure agent. The first time, the “Agent-Web.exe” (process responsible for handling the setup) failed and hung leading to an error on the server. I killed this process, rebooted, cleared the temp files and then tried to remote deploy again – this succeeded. With the agent running as cleanly as possible – the service that runs AppAssure‘s agent still failed and unloaded due to a number of .NET errors. It was so bad that I wasn’t even able to get one clean recovery image. Given the location of the default recovery log at: AppRecovery.log – I would imagine some troubleshooting would be in order.
Based on my tests with Windows XP clients, it’s likely you’ll run into some issues protecting these machines. You’ll want to keep that in mind if you’re environment is mostly Windows XP. The official word from AppAssure is that they support Windows XP.
These kinds of issues are probably of the more difficult to understand – and AppAssure seems to do little to help the administrator troubleshoot what was going on. It would appear as though an interaction (or lack of permissions) with the “Volume Labeled ‘System Reserved” volume may have killed the entire backup process. Other cases included various WMI errors during remote agent deployment. AppAssure is likely to provide some headaches on your road to setting up the system.
1. Agent machine and domains – While it was 100% clear if a computer running the backup agent didn’t to be joined to a domain, I decided to test a computer that could never join one. In this case I setup a Windows 7 Starter computer and run the agent. All worked well and there were no issues running full backups to the repository (as long as you’ve connected with administrative permissions).
2. Open PST files – Perhaps the bane of every administrator’s existence, It was important to see how the agent would handle the backup of open personal storage files (used in Microsoft’s Outlook). I’m happy to say, whether open or not, the file data was recovered and placed in the repository.
3. Running The Core server in a Virtual Machine – while Dell and AppAssure may not recommend doing so, I found the core product performed well enough when run on and ESXi server virtual machine. You’re really going to need a huge amount of space (not exactly best suited for a VM), but running it is possible.
Perhaps I went a little far with this, but I wanted to see if the agent would protect a Windows 8 machine (a laptop running build 8400 of Windows 8). The first thing I noticed with the agent setup was causing Windows 8 to spontaneously reboot. Not cool, so I turned off Windows Update – what seemed to be the cuprit. Of course, the reboot caused some of the temporary files to linger and trash the setup process. I had to delete those manually and restart the setup.
Once the setup was running, the agent did install. I turned off the firewall on Windows 8 and attempted to connect from the core, and the connection worked. So far, so good. Sadly, that was as far as it would go – the agent wasn’t able to draw any data off the Windows 8 client (or create any recovery points). If in fact there is no support, I would expect future versions of Appasure to support Windows 8 as the release draws closer. Remember too, that in Windows 8, the VSS susbsystem is slightly different.