I’d like to prefix this question by mentioning that I’m a Linux administrator, so managing a network of Windows desktops isn’t really my forte; however I’ve been tasked with upgrading a network of Windows desktops from XP Pro to Windows 7, and the upgrade of Windows SBS 2003 to 2008.
I’d like to take this opportunity to do the job right, and implement some sort of automation for the delivery of software packages and updates, because currently this is a completely manual process, which across 25 desktops is obviously a bit time consuming.
It also means when a new desktop is introduced on the network, you have to start from scratch, and make sure it is built exactly the same as the rest of them.
The obvious answer here is disk imaging; however the problem is further complicated by the fact that nearly all the desktops are slightly different, so obviously the underlying hardware isn’t the same, making straight cloning problematic.
I thought a nice solution here would be to run some sort of virtualized desktop, so the hardware is abstracted away, however after looking at virtual desktop products from Citrix and Oracle, it seems that they all use some sort of RDP, meaning I’d need a server grunty enough to run 25 desktops at once, and if I wanted to do that I could just use terminal server and a thin client.
The Linux admin in me is thinking about using something like virtual box, and a rsync job that would just pull down an updated image when necessary, however I don’t feel like this is a particularly tidy solution, and I’m probably reinventing the wheel.
So my main objective is completely automated deployment of the underlying operating system, automated installation of software packages, and automated updating.
I’m sure this has been solved before, and I’d really appreciate any suggestions on a way to manage this with as much automation as possible.