Blog Archives

So your boss is going to want stats for your OSD sequence? [Part 2 – Reporting with Excel]

How to provide hard statistics on your build sequences.


In Part 1 I went into how I collected the data that would be used to report on the 2 goals my boss set out for our OS deployment; 1) a 90% success rate and 2) 60 minute build times.

Read the rest of this entry

Advertisements

Creating Your Own Personal Hydration Solution – Part 4: Configuration Manager Infrastructure

Part 0 Introduction
Part 1 Setting Up
Part 2 First VM – Windows Router
Part 3 Domain Controller
Part 4 Configuration Manager Infrastructure

Configuration Manager 1511

After completing the first three parts of this series you would have a virtual lab with 4 separate network segments all connected to and routed through a Windows 2012 R2 server (RTR01) acting as the router. This server will also provide Internet access to any virtual machines that are connected to the 4 network segments.  You also would have an Active Directory domain controller (DC01) that provides DHCP and DNS services to the lab.

In Part 4 we are going to build out a Configuration Manager 1511 infrastructure.  This will include a Primary site server (CM16) and 2 Distribution Points (DP16a & DP16b).

Read the rest of this entry

Creating Your Own Personal Hydration Solution – Part 3: Domain Controller

Part 0 Introduction
Part 1 Setting Up
Part 2 First VM – Windows Router
Part 3 Domain Controller
Part 4 Configuration  Manager Infrastructure

DC01

After completing parts 1 and 2 of this series you would have a virtual lab with 4 separate  network segments all connected to and routed through a Windows 2012 R2 server (RTR01) acting as the router.  This server will also provide Internet access to any virtual machines that are connected to the 4 network segments.

In Part 3 we are going to build a domain controller (DC01).  This server will provide not only Active Directory Domain Services to the lab but also DHCP and DNS services as well.

Read the rest of this entry

Creating Your Own Personal Hydration Solution – Part 2: First VM – Windows Router

Part 0 Introduction
Part 1 Setting Up
Part 2 First VM – Windows Router
Part 3 Domain Controller
Part 4 Configuration  Manager Infrastructure

RTR01

Routing between subnets and access to the Internet (required for Windows Activation) is handled by RTR01, a Windows server running Routing and Remote Access (RRAS).  This should be the first virtual machine to be built and configured as machines on the other subnets will need this server in place for them to successfully build.

This virtual machine will have 5 network adapters, one on each network.  The build will create a basic Windows server.  To configure the server you will need to run some PowerShell as well as manually configuring RRAS.

Read the rest of this entry

Creating Your Own Personal Hydration Solution – Part 1: Setting Up

Part 0 Introduction
Part 1 Setting Up
Part 2 First VM – Windows Router
Part 3 Domain Controller
Part 4 Configuration  Manager Infrastructure

In this first installment we’ll work on getting the foundation set for building up the lab.  We’ll configure the virtual networks, the host networking and get our MDT environment installed and configured.  We are going to use a number of tricks that I’ve learned from others.

[This is going to be a long one.]

Read the rest of this entry

Creating Your Own Personal Hydration Solution: Introduction

Setting up a lab can be a pretty time consuming project.  A number of people, myself included, have created various hydration kits in an attempt to make it easier.  One thing that they many have in common is that they use the Microsoft Deployment Toolkit (MDT) to generate a large build ISO to be used for building each virtual machine.

Using an MDT build ISO has both advantages and disadvantages.  It is portable.  It is simple. But it takes massive amounts of disk space and changes are very time consuming.

Read the rest of this entry

Running Data DeDuplication on Hyper-V Hosts with PowerShell

First off, I want to thank Johan Arwidmark for the core code used in my script.  His blog posting can be found here.

Disk space is tight on my development VM host, very tight.  You cannot get too many VMs running on just 256GB.  So, I decided I’d make the switch to running Hyper-V on Server 2012 R2 and take advantage of Data DeDuplication.  Johan speaks highly of it, so I thought I would give it a try.

On my 2 hosts I have 8 VMs running on each and after DeDuplication I have plenty of disk space for more.

They say a picture is worth a thousand words….

DeDupe_01b

I have 8 virtual machines in this folder.  With DeDupe I am able to store 270GB of VMs in less than 6GB of space.

I put together this script to process the drive.  It automatically shuts down any running VMs, processes the DeDuplication and then starts the VMs that it shut down back up.

# Shut down all running VMs and then process deduplication
$AllVMs = Get-VM | Where {$_.State -eq 'Running'}

FOREACH ($VM in $AllVMs)
 {
 Write-Host Shutting down $VM.Name
 Stop-VM -Name $VM.Name
 }

# Execute the Dedupe jobs
Start-DedupJob -Type Optimization -Memory 75 -Priority High -Volume D: -Wait
Start-DedupJob -Type GarbageCollection -Full -Memory 75 -Priority High -Volume D: -Wait
Start-DedupJob -Type Scrubbing -Full -Memory 75 -Priority High -Volume D: -Wait

# Restart the VMs that had been running
FOREACH ($VM in $AllVMs)
 {
 Write-Host Starting up $VM.Name
 Start-VM -Name $VM.Name
 }

When disk space starts to get a little cramped I run this script. I give it some time to run and when it is finished I have the space I need.

OSD Migration – Windows 10 9926 to 10041 using SCCM 2012 R2

Last week ConfigMgr blogger and Twitter friend Paul Winstanley ran a live blog detailing the process of using SCCM 2012 to upgrade an existing Windows 10 machine from one build (build 9926) to the next (build 10041).

Paul is a number of time zones ahead of me so he had a good head start when I tuned in Tuesday morning.  We both ran into a bit of a stumbling block when our upgrades failed.

Win10-inplace-013

While Paul ran into this error upgrading 9926 to 10041, I received the same error attempting to upgrade Windows 8.1 to Windows 10 (9926).

In both of our cases the error was triggered by a mismatch of our original OS with the intended OS we were trying to upgrade to.  Specifically in my case I was starting with the evaluation version of Windows 8.1 from the TechNet Evaluation Center, so the SKU of my Windows 8.1 machine was “EnterpriseEval” while the Windows 10 SKU was “Enterprise“.  This mismatch triggered the error.

While I was troubleshooting the failure I started to document the process of setting this all up in my lab and I decided to share it for others who might be interested in giving this a try.

Read the rest of this entry

Released: MDT Lab Builder 1.2 – Now with Windows Server Virtual Router

I’ve updated my MDT Lab Builder with the addition of building a virtual router using Windows Server 2012 R2.  I referenced this article from Johan when setting it up.  You do not need any additional software, the build of the router will use the same Server 2012 R2 source used in building the other VMs.

The VM (RTR01) will not be joined to the lab domain.  I keep it in a workgroup so that it isn’t reliant on the existence of the lab domain and can be used with other projects.  The configuration of Routing and Remote Access will allow your lab machines to reach the Internet (as long as your external network has access to the Internet).  You can use this VM to explore routing using a Windows Server.  You could hang additional virtual switches off of it and configure  your own lab network with multiple subnets.  Experiment with using DHCP relay on the router.  Use Distribution Points in other LANs or even grab an evaluation copy of Nomad Branch from 1E and see how that works.

It’s a learning tool.  Give it a shot and see what you learn.

Download

Drawing1

Windows 10: In-Place Upgrade (Part 3 – MDT)

Next up, MDT 2013

Now that we’ve done this in SCCM porting it over to MDT should be much simpler seeing that we don’t have to worry about knocking the SCCM client over and then standing it up again.

Pre-Requisites

  • A working MDT server (does not necessarily have to be in a domain)
  • An existing Windows 7/8 client
  • Download the Windows 10 Technical Preview (I’ll be using build 9879)
  • Optionally, download the Zip file with the task sequence template from the SCCM Team blog

The task sequence template from the blog is for SCCM, but it’s handy to have as a reference.


When creating the task sequence in MDT most of what is being done by the PowerShell scripts in the download is not necessary.  The sequence and scripts from the SCCM Team blog are geared towards deploying with SCCM (of course).

For the sake of my test I re-created the sequence as close to identical to the SCCM one.

Win10_MDT_TS

I commented out the SCCM related portions of the various PowerShell scripts and when it was all said and done there really wasn’t much left.

Along these same lines Michael Niehaus did a demonstration during one of his TechEd Europe sessions (WIN-B338) where he used MDT to upgrade a Windows 7 machine to Windows 10.  It’s about 30 minutes into the presentation.  The task sequence used in his SCCM demo is the exact one that the SCCM Team made available on their blog.  He shows the MDT sequence details around the 39 minute mark.  Comparing the sequence he used in his demo with the one I re-created from the SCCM Team blog, I preferred his.

I don’t know why though it throws a warning at the end of the sequence.  I’m sure it’ll be something simple though.

MDT_Win10-Warning

 

I recommend his TechEd presentation.  There’s a lot of good stuff in it.  Some really cool stuff coming down the line for deploying Windows 10.