3/03/2014

SmartDeploy


I don't think I blog enough about some of the truly cool tools I get to use at work.

Well I say use.. but "figure out" is more accurate.. then I pass them along to the rest of the team for daily use.

SmartDeploy is a Windows toolkit for assembling boot media to deploy customized install images on Laptops, Desktops or Servers.

Its a really cool software suite that is simple to install. You download a binary and double click to install and it suggests/offers to install the Windows Automated Install Kit (WAIK) so that it can work with you to create WinPE media to perform a SysPrep or captured images to your target hardware "platform".

It's got a lot of facets and features to it.

After install you'll immediately notice Four new shortcuts pinned to your Start Menu

Start Menu




I've slightly relabeled them here but they carry the gist of what they do with the new labels:

1. Build a VM Wizard - will automatically build a VM for example in VMWare Player
2. Capture VM Wizard - will automatically Capture a Microsoft [.wim] format copy of that VM
3. Make NetBoot Media Wizard - will automatically create a WinPE environment (with) an embedded  SmartDeploy control panel to pre-process and merge an unattend.xml file into WinPE and add a "Platform Pack" to support network and storage for that target hardware platform

Windows Deployment Services is merely Microsofts implementation of the NetBoot PXE standard process of starting Netbootable platforms across a network with an Installation environment.

The Platform Manager is probably the nicest piece of their innovation.

The Platform Manager is a simple File walker/virtual installer that creates a file called a "Platform Pack" which is essentially a "bundle" of Third Party drivers unpacked and preinstalled in the platform pack file, made up of files obtained from a Third Party for that hardware "platform".

A hardware "platform" could be for a specific laptop model for Dell, or for a laptop model for HP.

These platform pack files all end in three letter suffixes .ppk for "platform pack" or "platform package"

There is enormously more to the platform pack "system" than I'm letting on.. the SmartDeploy control panel built into every WinPE boot media also has "WMI" query tool and can query the target platform before installation to ask "who are you? answer > DELL" or "what are you? answer > Model 360 laptop which can be used to "Navigate" a single driver pack which includes drivers for multiple hardware platforms to find a specific set of drivers for install and post install boot up.

And for "first tier" supported systems.. mostly the laptops.. they have "prebuilt" driver pack files you can download from their website.. just point your browser.. click and download. At no cost as long as you have an existing general support contract. Or you can make your own using the Platform Manager. You can even browse what they have available before you buy. And requesting a new first tier supported platform pack is no cost.. and generally provided within the same day if not within hours.

"Second tier" are more like "Servers" which might require some special support assistance to create.. for an extra consulting fee.

"Third Tier" I gather is more for home grown "whiteboxes" as custom as you'd like to get... Embedded Point of Sales systems perhaps?

Additionally, SmartDeploy let's you add "Tasks" in one of several phases while booting the WinPE environment on the target:

1. PREINSTALL - before the system is partitioned and and image is laid down
2. POSTINSTALL - after the system is imaged
3. FIRSTBOOT - upon first startup, while running as the system computer account
4. FIRSTLOGIN - upon first user login one time

The Netboot media is how we use it.. but you can also make .ISO images for burning later (or using as virtual media in say an HP iLO situation) or USB flash media for booting SmartDeploy on the target

The SmartDeploy system includes network resources so you can reference a .wim install image stored on a network, or locally on a hard drive or USB media and it includes the ability to "Take an Image" of a target platform... performing an ad-hoc capture before install.

Recently we were looking at deploying a Hyper-V cluster and needed a reliable deployment system that let us create our images on a remote system.. refresh as often as we'd like, then capture and deploy to a blade farm/microsoft failover cluster.  We found SmartDeploy already had a platform pack for deploying to Hyper-V virtual machines.. which is essentially installing the Integration services to smarten up a Hyper-V VM instance so that it "knows" its on a Hyper-V host and to take full advantage of that fact. that may seem a small task.. but when you are use to installing Windows from an ISO then repeatedly download and installing Updates and Service packs forever and a day.. it speeds things up immeasurably.




Something that I haven't stressed enough is this is a complete sysprep compliant system that doesn't violate any of Microsoft's rules about generalizing or the oobe experience. It's fully integrated with that system and puts a very functional, very organized face on top of a usually very complex topic.

Though it doesn't support Linux or other "black box" file systems opaque to the Microsoft tools.. I can just barely see the possiblity of including something like Macrium in the environment which does and in that way get a very functional two for one tool.

It does include a VNC remote console feature and some type of "Cloud" system to direct traffic.. but I don't see it as functional as the extremely simple Teamviewer product at this time.