Other Duties as Assigned

Sorry to go way off the path when it comes to my normal rants and posts about technology, I had a bit of a revelation this morning and felt compelled to share it. With any IT job there are times where you are frustrated with management, where you are selling your idea to someone up the chain and you realize that your idea tends to be influenced by some new technology that someone else is selling you. That’s when the light bulb goes off and you say to yourself, “well I guess I could be a pre-sales engineer too” only you don’t like the idea of working on commission. Still as an on site engineer you rely somewhat on SE’s to help provide the data that makes your business case, because after all you are “just an IT geek” in the eyes of management.

The funny thing about this revelation is I have had it several times before where I realized that I have always been selling my plans to those above me. Two years ago I joined a company called Technician Professionals (Tec-Pros) and quickly climbed the corporate ladder (ok I was employee number 6 so it wasn’t much of a climb). In that time the company grew to 35 employees and my role as lead Technologist or Director of IT Operations or whatever I was called evolved with our growth.

We were very successful at first trading on just our skills and reputation to perform great work, but as time went on we needed to grow the business. It was then that I started talking to customers about what Tec-Pros could do for them and having technology and road map conversations about the future of virtualization in the corporate structure. All the while I was still performing installs and building virtual desktop infrastructures and looking towards the future. Things have shifted somewhat and while I am still very technical my role is now to train the newer staff on how to perform the engagements and manage the projects. I talk to people more about capabilities and best practices more now than I used to.

Over the course of my career I have seen many of my friends most of whom I viewed as the best and brightest go on to be SE’s at large vendors. So as I made a transition from doing to discussing it never hit me that I was actually changing from a script writing, keyboard punching engineer to a sales engineer. It certainly wasn’t my intention but it was what the company needed me to be. So now I am managing all IT operations and helping to drive sales for Tec-Pros. It’s not a bad gig either, it’s just like engineering only I get to be the one helping to push the idea forward. In the end I believe all good IT people are sales people, if you are trying to innovate you have to have buy in, and to gain that buy in you are selling your idea. SE’s just do it with margin.

Who moved My Documents?

I have had this post in draft for a while now, but the issue of maintaining user profile data has shifted a lot since I first started writing it. The basic idea of user profiles has been around since terminals and mainframes were data is stored how it was accessed. But it’s never been a clean solution; there are issues with session persistence and syncing user data between server or desktop location and storage repository. My first take on this was to write about VDI and managing the user’s data through various methods, but even then there are so many ways to skin that cat and worse no one agrees on the best way. Even with-in the vendor community, VMware, Citrix and Microsoft will point to in house applications and services or they will recommend third party software … and it varies engineer to engineer.
So what is an IT person to do? 
Well first lets realize what makes up the user profile, it’s documents, pictures, movies, local databases, application preferences and email let’s never forget about email. All of this is a collection (sometimes a large collection) of data that makes up who the user is on their device and on the network. Often times if profile management such as folder redirection hasn’t been used there will be multiple profiles for each user across multiple devices. Do you use Remote Desktop Services (formerly Remote Desktop or Terminal Services)? Each server the user can log into will have that users profile located on the server, now expand that to their desktops. How do you manage this massive multi-OS multi-file environment? Let’s not forget that OS version to OS version may store user data in different folder structures, think Windows XP vs. Vista7 it used to be C:Documents and Settings%username% now it’s C:Users%username%. 
By now you are either saying “yeah I know this man how do I fix it” or you are scratching your head wondering how many useless things are in your profile. Well before we get to solutions let’s touch base on one more important piece of the user data puzzle, and that’s the size of these profiles. Some profiles are small and run around 128Mb but those are for users that either don’t save anything or are brand new to your environment, the average user you may see anywhere from 256Mb to 1Tb (that’s right I said a Terabyte for a user profile). Now these numbers are somewhat flawed too because as you dig into user profiles there are duplicate files across multiple user profiles meaning dedup can help, or the files can be offloaded with My Documents redirection more on that later. 
Alright so now that we got the problems laid out the question of how we actually manage this need to be addressed.  There are many sides to this debate right now, and I am not sure that any of them are completely right. There are those that will argue that with folder redirection alone, where select folders in a user’s profile are pointed via GPO or script to a shared storage location. (How the storage is configured and presented can be a whole different post all together) you can manage all of your users from a central repository and use Windows Active Directory and GPO’s.  This isn’t entirely wrong with folder redirection users profiles are slimmed down and act as a traditional stateful profile on the machine. If you choose to go this route I recommend creating secondary disk and setting the user profile variable to point to a Users folder located there. By doing this the users data isn’t on the same disk as the operating system and you have effectively decoupled them enough to be able to rebuild and redeploy the OS image without impacting user data as long as you eliminate any ability to save data to the OS disk. Be aware though that each machine that the users logs into will get their slim profile loaded and it will remain there until manually cleared off. 
Then there are stateless environments where the user’s data is streamed to their session and everything is stored centrally and no one is the wiser. This isn’t entirely true though, many companies will tell you this is how their solution works but in reality they all work like a profile with folder redirection and they utilize client based software to help encapsulate (think zip) the users profile and only expand those files as needed. The profiles are still downloaded to the machine but upon log off they sync back changes and are removed. There is of course a performance hit to this method but there is also a lot of upside to not having to worry about corrupt user data disks. Stateless is the desired end state 80% of the time with users being able to access their data from any platform be it a desktop or a cell phone and it’s always the same. There are no concerns about image redeployment because the user isn’t reliant on their OS image, and their applications sit on a different layer as well, completely independent of the OS. 
All of this plays into BYOD as well as we move from device-centric to user-centric models of End User Computing (EUC) and decouple the user from their hardware we all win, user data Utopia I know. 
There are a lot of resources available to learn more, here are a few. What do you use in your environment?
http://blogs.citrix.com/2009/11/13/how-big-is-an-average-userprofile/
http://www.liquidwarelabs.com/products/profileunity.asp
http://support.microsoft.com/kb/232692
http://www.vmware.com/files/pdf/mirage/VMware-Migrating-Windows-Endpoints-Whitepaper.pdf

Building blocks for your Organizations IT Future

First please let me apologize, sorry everyone, I have been tied up performing Production Roll-outs of VDI. It’s been a busy year and I am seeing more and more organizations move from Pilot to Production on their “Journey to the Cloud”. I feel there should be ominous music there.

The truth is VDI is becoming a mainstream idea, and it’s not just the cost savings of the life cycle extensions or the ease of management. I honestly believe it is more of a keeping up with the competition, as businesses begin to adopt a technology other businesses in the same market space will adopt the same or similar solutions to not lose any advantage.

To be honest I am an IT guy first and have only been looking at the business aspect of things for the last few years but it’s amazing to see how business drivers impact IT decisions. I wrote an article previously that expressed my belief that IT Directors and CIO’s could drive organizational change if they defined the verbiage. I am now starting to believe that my opinion will be ever evolving. Business cases whether sound or based off of what the other guys are doing will help to drive initiatives. It’s up to us as the IT resources to help and guide that initiative to meet our goals for our IT organization.

All of this makes planning and road mapping so critical to success, if you know where you want your organization to go, or have been told what the 5-10 year objective is. Than it’s time to sit down with a trusted IT adviser or advisers and put together the way forward. You may find that there are technology considerations that will impact you in year 3 that you can plan for now. A great example would be profile management. If your organization intends to deploy VDI in the future but are currently working on upgrading end user devices to newer PC’s with Windows 8 and you are moving off of Windows XP how will you make the user profile migration seem less? Will you lay the building blocks now to have a portable profile solution that will be flexible enough to move from your current solution to your future solutions without a great deal of effort.

Decoupling users and servers from physical devices is the “cloud” experience that everyone wants, it makes deployments faster easier and cheaper, the three points of the tri-force that no one ever seems to be able to get their arms around. It all comes down to planning, what may not be easier or cheaper now, will make things easier and cheaper in the next cycle. All we have to do is guide our organizations and show them the savings and a visual road map of what their goals and our are and how we get them there.

So how does your organization plan for the future?

Next post back to VDI and a Production roll out.