There is a lot of information out there that already exists about how to utilize OSD but I thought I would add mine to the list as well in the hopes that it will help to make somebody’s life easier when it comes to deploying operating systems within their environment.
This is the first blog in a series to come and this time I’m going to focus only on what SCCM OSD can do for you and your IT infrastructure.
OSD gives us great flexibility in the way that we deploy our Operating Systems and images. I’ll summarize a few of the key things at a high level here and I will write about each one of these items in more detail in upcoming articles.
OSD gives us the ability to take an install CD (e.g. Windows 7) and use those source files to install a reference image right from scratch. This is a fantastic feature as it allows us to easily automate the process of installing a baseline Operating System. Once the OS is built we can use Task Sequences to customize our “vanilla” OS installation and to re-capture that computer as a reference image for later deployments.
Why is this so great? Once you have the process configured the way you like it, then it allows us to build out a reference computer in a consistent, reliable way that virtually eliminates human error. It will also save hours of frustration from IT staff that will no longer have to build a reference computer manually each time a change is made or testing a new deployment fails.
When we say “bare-metal” we mean that the computer does not have an existing Operating System installed already. SCCM OSD gives us the ability to deploy an Operating System image to a bare-metal computer in several ways.
We know now that we can use SCCM to deploy an image to a PC that did not already have an OS installed, but what if the computer already had an OS on it. Simple, we can deploy to that too. In fact, it’s very similar to distributing any other software to an existing SCCM client as all we have to do is advertise that Task Sequence to a particular computer.
Whether we are imaging a bare-metal machine or performing an upgrade of an existing OS, SCCM gives us the ability to transfer user state from the old PC to the new PC. SCCM allows us to do this using a State Migration Point (another SCCM role) in combination with the User State Migration Tool (USMT).
One of the first questions you might have is “what exactly is defined as user state?”
In terms of USMT, user state can be defined as the following:
A more thorough explanation of what USMT is capable of can be found here.
In my opinion, Task Sequences are what sets SCCM apart when it comes to OSD. Task Sequences give us the flexibility to perform a series of steps during deployment that is completely customizable to the needs of the IT organization.
There are already several built-in steps that can be used in Task Sequences, such as the following:
And there are many more that come with SCCM out of the box, but for anything that isn’t there we can use a task sequence for running our own scripts as well. This makes the possibilities virtually limitless when it comes to customizing the deployment to suit the needs of any IT organization.
Another cool feature of using OSD within SCCM is it allows us to integrate it with the Microsoft Deployment Toolkit. Once we have integrated with MDT, there will be some additional Task Sequence steps that we can use in our deployments to do some pretty cool things such as:
Integrating MDT with SCCM is not mandatory. We can create very complex deployment scenarios just by using the features included with SCCM by default. However, I recommend to everybody that they should at least check out which options are available to them.
I hope this gives a good summary of some of the cool things that OSD can do for any IT organization. Over the next while, I plan to dive in to each area in more depth and provide some examples of how to effectively use SCCM OSD to deploy images.