As the CEO of a busy and growing company, migrating to a virtual desktop was challenging for me. By the nature of what I do, I don't fall neatly into one of the "low-hanging fruit" use cases that are obvious candidates for VDI.
Nonetheless, I dove right in and I've been documenting my journey here in this series. I've discussed the key concerns I had with the architecture of the virtual desktop infrastructure (VDI) environment I would use and how I went about picking a new device to use for accessing my virtual machine. However, that still leaves the biggest, scariest, most difficult problems to solve: ensuring uptime and protecting my data and productivity.
Conveniently, the answer to both is the same: Managing user personality in a VDI deployment is how you ensure both uptime and data availability.
So, what do I mean by personality? I mean that you have to break apart user-deployed or departmental applications, user-level settings, and user-created data. These things make up the user persona. It's the culmination of what they access, how they access it and what they produce once it's accessed. Figure out how to silo those three things, and then make them portable.
Managing the user persona
There are tons of tools out there that you can use for user profile management and user-installed applications. In my own use case, I settled on Liquidware Labs Inc.'s ProfileUnity for a couple of reasons.
My mobile device has everything I need to be functional when connectivity is scarce.
First, the product doesn't require even one server in order to operate. ProfileUnity has a handful of scripts and executables that are dropped in your Active Directory domain controller's netlogon path. It uses native components in Windows to abstract each element of the personality and make it portable based on settings that you can define very granularly. In other words, you're not adding any new points of failure to your network by implementing this product. You're simply using the infrastructure you already have in a new way.
The first task with this tool is to capture your desktop and application settings. I have a lot of little configurations in my Office products, email and desktop configuration that make me efficient, so I didn't want to have to re-do that every time I log into a new virtual machine, and I don't want to be locked to any one VM. With ProfileUnity, you can capture those items on logoff, saving them to a network share so that they can be restored on logon regardless of the VM you're using.
To ensure that I wouldn't lose anything, I created a "profile" folder on the network and redirected all shell folders to that (desktop, favorites, certs, etc.) At that point, I became VM independent. No new data is created on any VM I use. It's simply redirected to one specific folder.
Finally, there's the issue of applications. For that, I used Liquidware Labs FlexApp, a tie-in to ProfileUnity that detects the installation of a new application, intercepts the install process and redirects to a virtual hard drive that is detached and reattached at logon and logoff. Any apps you might install in the normal course of business will follow you to your new VM when you log off and log on.
So, my user persona on the virtual desktop was under control, but, remember, I'm a mobile worker. I travel a lot. So how do I stay productive in transit?
Combating connectivity with cloud
For mobile access, I had settled on the Dell Venue 11 Pro with a hard dock keyboard for several reasons. However, I have a secret I didn't mention in the previous entry: The other reason I selected that device is that I need and want a full OS for my Office apps -- because sometimes VDI just isn't practical.
I work everywhere and anywhere, anytime. I don't always have Internet access, which means I don't always have my VDI image. However, with the addition of a private cloud that my company deployed (OwnCloud), which maps VDI data to the desktop and caches it, I can work offline as the need arises.
Additionally, since I can run the full suite of Office products, I have my full Outlook install with my cached email. As long as I am online at some point during the day, my mobile device has everything I need to be functional when connectivity is scarce.
So, a good way to ensure uptime with VDI is by using nonpersistent VDI images. If your VM were to become corrupted, you simply log in to a new one. For added data availability, profile management products such as Liquidware Labs Profile Unity and FlexApp help ensure that your data, settings and applications remain with you as you move between VMs. Finally, try out cloud apps for email and data synchronization to a mobile device so that you're totally functional if you should find yourself without Internet.
It's been many months now since I've had any physical computer hardware. My home is a sea of thin and zero clients. So what's the outcome of all of this? How has my life changed for the better or worse? In my final installment, you may be as surprised as I was when you hear about the biggest change in my life that resulted from moving to a virtual desktop.