Jump to content




anyweb

How can I dynamically deploy multiple operating systems with System Center 2012 R2 Configuration Manager ?



Recommended Posts

Introduction

Traditionally you deploy one operating system per task sequence but there are times when you might want to deploy more than operating system in the same task sequence.

 

There are a variety of ways of doing this, for example you could use a MDT based User Driven Installation (UDI) task sequence which in turn requires you to use the UDI Wizard Designer to edit the Volume page and add, remove or re-order Operating System wim images which can then be displayed to the end user (shown below).

 

Multiple WIMS via UDI task sequence.png

 

This works well as long as you are willing to use UDI based task sequences and the associated UDI Designer Wizard and don't mind updating the MDT Toolkit Files package after doing so.

 

Alternatively you could use a dynamic task sequence which uses a HTA FrontEnd (hypertext application or web page..) that is based on variables set in the task sequence itself. The HTA method is more dynamic as you do not need to update the MDT Toolkit files package every time you make a change to one of the operating systems included in the task sequence and you don't need to use a User Driven Installation based task sequence either.

 

Here is what the FrontEnd looks like

 

Multi Image.png

 

you can click on the drop down menus to select from the Operating Systems that you make available

 

drop down menu.png

 

In addition you can use tooltips (by hovering over a drop down menu) in this task sequence to display helpful info to the end user about what each operating system is for.

 

tooltip.png

 

 

So how is it done ? I'll show you.

 

Step 1. Get the Task Sequence

 

Download the Multiple Operating Systems in a Task Sequence below.

 

Multi-Image task sequence.zip

 

You need to import it into your Configuration Manager server. To Import it, in the Configuration Manager console navigate to the Software Library and find the Operating Systems section, right click on Task Sequences and choose Import Task Sequence as shown below.

 

Import Task Sequence.png

 

browse to the UNC path where you downloaded the ZIP file above

 

browse to the source.png

 

click next, you will get an import failure for the boot wim, select Ignore Dependency as shown below

 

ignore dependency.png

 

The task sequence is imported successfully.

 

successfully imported.png

 

Step 2. Get the HTA

 

Download the Multi Image HTA below

 

Multi-Image.zip

 

Unzip these files and copy them to a folder on your Configuration Manager server. Next, create a package by doing as follows, select Application Management in software Library, and choose Packages, right click and choose Create Package

 

create package.png

 

fill in some info about the package, call it Multi-Image

 

path of multi-image.png

 

Select do not create a program

 

do not create a program.png

 

continue through the wizard until done

 

continue until done.png

 

Step 3. Distribute the package

 

Right click on the Multi-Image package and choose Distribute Content,

 

distribute content.png

 

distribute it to all your distribution points as shown below

 

content destination.png

 

continue until the wizard is complete.

 

wizard is complete.png

 

Step 4. Edit the Task sequence

 

Right click on the Multiple Operating Systems in a Task Sequence task sequence and choose edit,

 

edit task sequence.png

 

you'll probably see the error below, it's ok we are going to add that package next...

 

objects referenced.png

 

On the Display HTA step, click on the Browse button beside Package, and select the Multi-Image so it looks like below

 

display hta.png

 

Once done, take a look at the three OSName variables, they are what is shown to the end user in the Multi-Image HTA. You can set these variables to match whatever three (or two or more) operating systems you are deploying in this task seqence.

 

OSName variable.png

 

in addition you can define the two tooltips used in the HTA

 

tooltip variable.png

 

If you want the HTA to display make/model and serial number info then add a MDT Toolkit Files step, immediately followed by a MDT Gather step as shown below (this is optional, and requires MDT Integration with Configuration Manager 2012.)

 

MDT Gather.png

 

Now you need to add your operating system images, under the New Computer Group,click add,choose images and then apply operating system image as shown below

 

add images apply operating system image.png

 

click on browse and browse to your selected operating system image

 

windows 7 enterprise.png

 

Next, select the Options tab, and add a condition (Task Sequence Variable) and enter the following info, ImageValue = OSValue1 as shown below

 

OSVALUE1.png

 

repeat the above for each Operating System Image you want to deploy, however set the options value for the variable ImageValue to OSValue2 or OSValue3 as appropriate.

 

You don't need to make all three available, you can simply disable one or two in the task sequence if you want and they won't appear in the HTA. Dynamic !

 

disable this step.png

 

for the purpose of this task sequence, you can go ahead and add a boot wim and then deploy it for testing, obviously you'll want to customize the task sequence to do all the actions you normally do,

 

below you can see that the second Operating System image was selected (OSValue2) and is being deployed as logged in SMSTS.log

 

osvalue2 selected.png

 

That's it, job done !

 

 

 

 

 

 

Summary

Deploying multiple operating systems with Configuration Manager 2012 R2 is easy enough and there are many ways of doing it, this method is dynamic and I hope you try it out !.

 

Related Reading

Downloads

You can download a Microsoft Word copy of this guide here.

 

Multiple Wim Images in One Task Sequence.zip

Share this post


Link to post
Share on other sites


Nice. But here is a question. I haven't tried this out yet but been thinking of this idea before. How do you select which image that you would like to boot with?

Share this post


Link to post
Share on other sites

you mean controlling what boot wim get's used ? that's decided by the task sequence it is attached to, and the order of when it was deployed,

 

so for example if i deploy a task sequence with a x86 boot wim to All Unknown Computers, and then PXE boot an unknown computer, it will download that x86 boot wim

Share this post


Link to post
Share on other sites

Thanks as always Niall! Question though... I've filled at the TS with the standard options for my normal OSD steps and created a standalone boot media for the sequence. When it runs, it basically downloads the files needed to run the HTA, but then nothing displays, the rest of the TS flies through without making any actual changes. I'm guessing this is because the HTA doesn't run so no choices are made, thusly causing each OS image to be skipped.

 

So my question is, will this work from inside Windows PE? Or, does it have to be run from within an OS for the HTA to display properly? Judging from the screenshots, it looks like it does work from within Windows PE so I wonder if I have the steps not sequenced correctly or something?

Share this post


Link to post
Share on other sites
will this work from inside Windows PE? 

absolutely ! that's how it's designed to run,

you probably have a spelling mistake or an other problem, attach your smsts.log and i'll be able to determine what the issue is

 

my guess is you have no HTA support in your boot wim optional components and therefore it cannot display the HTA.

Share this post


Link to post
Share on other sites

Thanks for the quick response!

 

I started thinking along those lines just after I posted and as you suggested, I did not have HTA support enabled in my boot image. However, after enabling, the TS still fails, though not at the HTA steps. Oddly enough, it still does not display the HTA and proceeds through the TS until it fails at Setting up Configuration Manager. Checking the log file, I do not see any errors pertaining to the HTA sequence. I've attached the log file and a screen shot of the TS steps.

 

 

smsts.log

post-20332-0-92496500-1407786410_thumb.png

Share this post


Link to post
Share on other sites

did you redistribute the boot wim and then recreate the media after adding hta support to the boot wim ? the HTA component is shown below, is that the one you added ?

 

add hta support.png

 

 

 

Share this post


Link to post
Share on other sites

did you redistribute the boot wim and then recreate the media after adding hta support to the boot wim ? the HTA component is shown below, is that the one you added ?

 

attachicon.gifadd hta support.png

 

 

 

 

Yes in all regards. I can try again though. I notice that the placement of my steps doesn't really match yours. Not sure if that's going to make a huge difference or not as I think the overriding issue is that the HTA doesn't display.

Share this post


Link to post
Share on other sites

show me your display hta step

Share this post


Link to post
Share on other sites

i'll need your smsts.log file to see why it's skipping the display hta

Share this post


Link to post
Share on other sites

i'll need your smsts.log file to see why it's skipping the display hta

 

Here you go. Afraid it doesn't show much as it is acting like it completely successfully.

smsts.log

Share this post


Link to post
Share on other sites

looks ok for that step at least, what did you create exactly, standalone media ? is the boot image x86 or x64 ?

Share this post


Link to post
Share on other sites

looks ok for that step at least, what did you create exactly, standalone media ? is the boot image x86 or x64 ?

Yes sir, standalone media on a 32GB USB drive. The boot image is x86.

Share this post


Link to post
Share on other sites

ok i will create some standalone media here and test it.

Share this post


Link to post
Share on other sites

ok i will create some standalone media here and test it.

 

I just tried running the sequence from PXE and got the same result. So, I don't think it's necessarily the standalone media itself.

Share this post


Link to post
Share on other sites

correct it's not, you have some other issue, i've just booted from my standalone media and it displays just fine

 

standalone media.png

Share this post


Link to post
Share on other sites

a few errors from your earlier log

 

Cannot find NAAConfig CCM_NetworkAccessAccount

Unable to get Network Access Account. Ignoring.

Cannot find ClientConfig CCM_ClientAgentConfig

 

 

have you defined your network access account ?

 

have you made ANY change to the original HTA files i provided here ? if so can you try the ones i supplied instead, just as a test

Share this post


Link to post
Share on other sites

a few errors from your earlier log

 

 

have you defined your network access account ?

 

have you made ANY change to the original HTA files i provided here ? if so can you try the ones i supplied instead, just as a test

 

As far as I know, I didn't change anything. Simply unpacked the .zip folder and copied to my storage location for distribution. Just to take everything else out, I created a 2nd TS with only the HTA steps involved and ran from Software Center. Still does the same thing.

 

I did notice this... if I just open an command prompt and simply run the HTA application from there, I get this pop-up from Windows Security. We're all used to see that when running applications, but could that be what's causing the issue when trying to run from the TS? Like it's trying to pop-up and can't?

post-20332-0-62090400-1408052903_thumb.png

Share this post


Link to post
Share on other sites

Might be making progress... Since this was downloaded from the Internet, it was set to be blocked in the properties and uploaded to the DP as such. Locally, I unblocked the application in the properties and ran it without getting the display shown above. Tried doing a simple Update DP and re-run the TS, but it remained the same. Will try to blow away the original package and re-create using the unblocked app tomorrow.

Share this post


Link to post
Share on other sites

So after re-creating the package with the properties already set to unblock (seems that's really just a Windows 8 thing?), redistributing, and testing, I might have made progress, but still having the issue. On my test VM, using the test TS, I get the below screenshot. It's acting as if the HTA is displayed, because the TS is waiting. You can also see that I'm viewing the properties of the HTA as ran from the _SMSTaskSequence directory. However, the HTA is not showing.

 

I'm completely at a loss at this point. *beats head against wall*

 

 

post-20332-0-50177800-1408116908_thumb.png

Share this post


Link to post
Share on other sites

if you use teamviewer i can connect and take a look, drop me a mail at niall@windows-noob.com if you want me to do so

 

note: this task sequence is designed to run from WinPE not from within Windows.

Share this post


Link to post
Share on other sites

Hey Niall...

Just an update. I've re-downloaded the Multi-Image zip, re-sourced, re-packaged, and redistributed it. Re-creating the TS media and.................... Works like a charm! Absolutely no earthly clue why the first time I downloaded it, it didn't work. But, I can overlook that... it only sort of bugs me LOL. Thanks again for all your time

Share this post


Link to post
Share on other sites

great to hear it and i hope you enjoy the cool functionality !

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×