Hydration Kit for Windows Server 2022, SQL Server 2019 and ConfigMgr Current Branch

This kit builds a complete ConfigMgr Current Branch 2203 infrastructure running on Windows Server 2022 and SQL Server 2019. This kit is tested on both Hyper-V and VMware virtual platforms, but should work fine on other virtualization platforms like Virtual Box, KVM etc.

Download from GitHub: https://github.com/DeploymentResearch/HydrationKitWS2022

Hydration Kit Video: Check out the free mini course at the ViaMonstra Online Academy covering the Hydration Kit setup (and many other tips and tricks related for creating a lab for ConfigMgr, MDT and Intune): Building the Perfect Lab for ConfigMgr, MDT, and Intune.

Sample screenshot from the free mini course on ViaMonstra Online Academy.

Credits: Special thanks to Sven Aelterman for creating the script for configuring SQL Server Reporting Services, and for graciously allowing me to include it in the hydration kit.

Notes

Customizations: This hydration kit install all servers in the corp.viamonstra.com domain, on the 192.168.1.0/24 network. If you rather use your own domain, different IP addresses etc. check out the Next Step – Customizing the Hydration Kit section in the end of this post for instructions on how to customize this kit. That being said, I recommend getting to know the kit using the default names if you can.

Internal network and Internet Access: Since one of the virtual machines (DC01) is also a DHCP Server, its highly recommended to deploy the virtual machines on an internal virtual network, and then use the NAT feature in either Hyper-V or VMware to give the virtual machines Internet access. For super-easy Internet access on Hyper-V, while still having the VMs on an isolated network, read this shiny post from Ami Arwidmark (@AArwidmark):

Advanced networking: For more complex networks (multiple sites, bandwidth throttling etc.), you may want to use a virtual router. More info here:

Hydration Kit Archive: Are you looking for the previous hydration kits for Windows Server 2016 or Windows Server 2019? Look no further, they are right here:

Hydration Kit for Windows Server 2022 and ConfigMgr Current Branch

So, again, this Kit builds a complete ConfigMgr Current Branch 2203, with Windows Server 2019 and SQL Server 2019 infrastructure, and some supporting servers. Once the build is complete, I recommend that you use the native ConfigMgr servicing option to update to latest release or Hotfix if available.

Servers

This kit allows you to automatically deploy the below list of servers. The server you really need to build first is DC01, since that's the domain controller, and the CM01 server will join the domain. Turns out joining a domain is tricky without a domain controller 🙂

Main servers

  • DC01. Windows Server 2022, DC, DHCP and DNS
  • CM01. Windows Server 2022, SQL Server 2019, and ConfigMgr Current Branch

Optional supporting servers 

  • MDT01. Windows Server 2022, SQL Server 2019 Express, and MDT 8456
  • FS01. Windows Server 2022, File Server
  • DP01. Windows Server 2022, additional ConfigMgr DP

Setup Overview

Shorthand, to build the virtual machines there are five main steps you need to do:

  1. Download the necessary software
  2. Install the Hydration Kit
  3. Copy the downloaded software to the Hydration Kit
  4. Create the bootable Hydration Kit ISO
  5. Create and Deploy the virtual machines

Note: Detailed instructions are further down this page… See the Step-by-Step Guides section.

The Deployment Wizard displaying the available task sequences.
The CM01 task sequence, building a complete ConfigMgr site server with SQL Server.

Step-by-Step Guides 

Step 1 – Download the software

On the Windows machine (client or server) that you use to manage Hyper-V or VMware, create a folder for all the software needed, for example C:\Setup.

Then, for the main servers (DC01 and CM01), you need to download the following software:

Note: To download the ConfigMgr prerequisites, you run the SMSSETUP\BIN\X64\setupdl.exe application from the ConfigMgr installation files and simply provide a folder for the download.

Running setupdl.exe to download ConfigMgr pre-requisites.

Windows ADK for Windows 11and the ADK WinPE Addon for Windows 11 21H2: https://docs.microsoft.com/en-us/windows-hardware/get-started/adk-install
Note #1: Make sure to get the 21H2 version of the Windows ADK for Windows 11 (10.1.22000.1). The new 22H2 version (10.1.22621.1, released in May 2022) is not yet supported by MDT.
Note #2: To download the complete standalone Windows ADK for Windows 11 setup, run adksetup.exe /layout "C:\Setup\Windows ADK 11" for the core ADK, and then adkwinpesetup.exe /layout "C:\Setup\Windows ADK 11 WinPE Addon" for the WinPE Addon.

Windows ADK 11 setup files.
The Windows ADK 11 WinPE Addon files

Optional Servers

The FS01 and DP01 optional servers don't need any extra software, but for the MDT01 server, you also need to download the following software:

Using the SQL2019-SSEI-Expr.exe web installer to download media.
Selecting the Express Core version

Step 2 – Install the Hydration Kit

Installing the Hydration Kit requires that you first install Windows ADK and the Windows ADK WinPE Addon. The kit has been tested with both Windows ADK 10 and Windows ADK 11 21H2, but to get full support for Windows 11, I recommend using the Windows ADK 11 21H2 version since it supports all currently supported operating systems.

Note: Again, please do not use Windows ADK for Windows 11 22H2. It's not supported by MDT 8456.

Installing Hydration Kit Prerequisites

1. On the Windows machine that you use to manage Hyper-V or VMware, install Windows ADK 11 21H2 (adksetup.exe) selecting only the following components:

  • Deployment Tools
  • Imaging and Configuration Designer (ICD)
  • Configuration Designer
  • User State Migration Tool (USMT)
Running the Windows ADK 11 Setup.

Note: The last three are not used by the hydration kit, but are still quite useful to have, so I usually install them too.     

2. Install Windows ADK 11 WinPE Addon (adkwinpesetup.exe) with the default settings.

Running the Windows ADK 11 WinPE Addon Setup.

3. Install MDT 8456 (MicrosoftDeploymentToolkit_x64.msi) with the default settings.   

Running the MDT 8456 Setup.

4. Install the MDT 8456 HotFix.

Note: Due to a code change in Windows 10 2004 or later (including Windows 11 and Windows Server 2022), and Windows ADK 10 2004 and later, you need to download some updated files for MDT 8456. You can download these files here: https://download.microsoft.com/download/3/0/6/306AC1B2-59BE-43B8-8C65-E141EF287A5E/KB4564442/MDT_KB4564442.exe

4a. Download the MDT 8456 HotFix(MDT_KB4564442.exe), and extract it to a folder. I extracted it to C:\Setup\MDT 8456 HotFix.

4b. Copy the x86 version of the new Microsoft.BDD.Utility.dll from C:\Setup\MDT 8456 HotFix\x86 to C:\Program Files\Microsoft Deployment Toolkit\Templates\Distribution\Tools\x86. Replace the existing file.

4c. Copy the x64 version of the new Microsoft.BDD.Utility.dll from C:\Setup\MDT 8456 HotFix\x64 to C:\Program Files\Microsoft Deployment Toolkit\Templates\Distribution\Tools\x64. Replace the existing file.

Installing the Hydration Kit

1. Extract the content from the Hydration Kit download to a folder, for example C:\Setup\HydrationKit.

The folder you used should now have a sub-folder named Source, two PowerShell scripts, a readme file and a license file.

The extracted hydration kit files.  

2. In an elevated PowerShell command prompt, navigate to the C:\Setup\HydrationKit folder, and create the hydration deployment share by running the following command:  

.\New-HydrationKitSetup.ps1 -Path C:\CMLab -ShareName CMLab

Running the New-HydrationKitSetup.ps1 script.

3. Open the Deployment Workbench, and look around. You should see applications, operating systems, and task sequences etc.

Opening the Hydration Kit deployment share in Deployment Workbench.

Step 3 – Copy the downloaded software to the Hydration Kit

Next step is to start copying the various installation files to the correct folder.

1. Copy your Windows Server 2022 reference image (have to be named REFWS2022-001.wim, case sensitive), to the following folder: C:\CMLab\DS\Operating SystemsWS2022

Note #1: The WIM image should only have a single index with the Windows Server 2022 with Desktop Experience edition. Please use the script mentioned earlier to extract the correct index from a Windows Server 2022 ISO file.

Note #2: If your VMs does not have Internet access during the Hydration Kit build, make sure to also copy the microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab file to the following folder: C:\CMLab\DS\Operating Systems\WS2022\sources\sxs. Failing to do so will prevent .NET Framework 3.5 from being installed if the VM does not have Internet access.

The Windows Server 2022 Standard image copied.
.NET Framework 3.5 copied

2. Copy the BGInfo file (bginfo.exe) to the following folder: C:\CMLab\DS\Applications\Install – BGInfo\Source

BGInfo copied.

3. Copy the Windows ADK 11 setup files (1.6 GB) to the following folder:
C:\CMLab\DS\Applications\Install – Windows ADK 11\Source

The Windows ADK 11 setup files copied.

4. Copy the Windows ADK 11 WinPE Addon setup files (3 GB) to the following folder:
C:\CMLab\DS\Applications\Install – WinPE Addon for Windows ADK 11\Source

Windows ADK 11 WinPE Addon setup files copied.

5. Copy the SQL Server 2019 Standard x64 setup files (the content of the ISO, not the actual ISO) to the following folder:
C:\CMLab\DS\Applications\Install – SQL Server 2019\Source

SQL Server 2019 Standard x64 setup files copied.

6. In the C:\CMLab\DS\Applications\Install – SQL Server 2019\Source folder, create a subfolder named Updates, and copy the latest SQL Server 2019 CU setup file to it (CU 14 when I wrote this guide).

The SQL Server 2019 CU copied to Updates folder.

7. Copy the SQL Server Management Studio setup file to the following folder:
C:\CMLab\DS\Applications\Install – SQL Server Management Studio

The SQL Server Management Studio setup file copied.

8. Copy the SQL Server 2019 Reporting Services setup file to the following folder:
C:\CMLab\DS\Applications\Install – SQL Server 2019 Reporting Services\Source

SQL Server Reporting Services setup files copied.

9. Copy the ConfigMgr 2203 setup files (extract the download) to the following folder:
C:\CMLab\DS\Applications\Install – ConfigMgr\Source

ConfigMgr setup files copied.

10. Copy the ConfigMgr 2013 PreReqs setup files to the following folder:
C:\CMLab\DS\Applications\Install – ConfigMgr\PreReqs

ConfigMgr Pre-requisite files copied, showing a subset of the files.

11. Copy the MDT 8456 setup file (MicrosoftDeploymentToolkit_x64.msi) to the following folder:
C:\CMLab\DS\Applications\Install – MDT

MDT 8456 copied.

Optional – Populate the hydration deployment share with files for MDT01

Note: These steps are only needed if you want to deploy the optional MDT01 virtual machine. If you don't need this VM, simply skip to the next section: "Create the Hydration Kit ISO (MDT offline media item)"

1. Copy the SQL Server 2019 Express setup file (SQLEXPR_x64_ENU.exe) to the following folder:
C:\CMLab\DS\Applications\Install – SQL Server 2019 Express\Source

SQL Server 2019 Express setup file copied.

Step 4 – Create the bootable Hydration Kit ISO (MDT offline media item)

1. Using Deployment Workbench (available on the Start screen), expand Deployment Shares, and expand Hydration ConfigMgr.   

2. Expand the Advanced Configuration node, and then select the Media node.   

3. In the right pane, right-click the MEDIA001 item, and select Update Media Content.

Note: The media update will take a while to run, a perfect time for a coffee break.

Creating the bootable Hydration Kit ISO file.

After the media update you will have a big ISO (HydrationCMWS2022.iso) in the C:\CMLab\ISO folder. The HydrationCMWS2022.iso should be about 14-16 GB in size (size will vary a bit depending on your Windows Server 2022 image and software added).

The Hydration Kit ISO file.

Step 5 – Create and Deploy the virtual machines

First, all accounts, including Administrator, have a password of P@ssw0rd. Secondly, you either create your VM manually, and connect them to the Hydration Kit ISO. Or you can automate that process to with a bit of PowerShell.

Creating the Virtual Machines via PowerShell

If you want a PowerShell script that creates these VMs for Hyper-V, use New-LabVMsForHyperV.ps1 script from the C:\Setup\HydrationKit folder. The syntax for the scripts is as follows:

.\New-LabVMsForHyperV.ps1 -VMLocation C:\VMs -VMNetwork Internal -ISO C:\CMLab\ISO\HydrationCMWS2022.iso

Running the New-LabVMsForHyperV.ps1 script.

Note: If using Hyper-V, do Not configure the virtual machines for dynamic memory. If you do, the installation will take a very long time. Dynamic memory can be enabled when installation (hydration) is completed.

Virtual Machines created via the New-LabVMsForHyperV.ps1 script.

Deploying DC01

Using Hyper-V Manager or VMware Workstation/Sphere, create a virtual machine with the following settings:

  • Name: DC01
  • CPU: 2 vCPU
  • Hard drive: 100 GB (dynamic disk)
  • Memory: 2 GB (static memory)
  • Network: Your lab network
  • Image file (ISO): C:\CMLab\ISO\HydrationCMWS2022.iso
  1. Start the DC01 virtual machine. After booting from HydrationCMWS2022.iso , and after WinPE has loaded, select the DC01 task sequence.   
  2. Wait until the setup is complete and you see the Hydration Complete message in the final summary.   
  3. Leave DC01 running while deploying the CM01 virtual machine.

Deploying CM01

Once the domain controller (DC01) is up and running, you can deploy the CM01 virtual machine. Don't forget to leave DC01 running while deploying CM01 since it is joining the domain during deployment. Use the following settings for the CM01 virtual machine:

  • Name: CM01
  • CPU: 4 vCPU
  • Hard drive: 300 GB (dynamic disk)
  • Memory: 16 GB (static memory)
  • Network: Your lab network
  • Image file (ISO): C:\CMLab\ISO\HydrationCMWS2022.iso

Post configuration of CM01

After deploying CM01, make sure the machine has access to Internet. Again either via Configure NAT in Hyper-V or VMware, or by setting up a virtual router.

Then, in the Administration workspace, in the Updates and Servicing node. Click Check for Updates, and then install the latest updates available. Don't forget to do a final reboot after applying the updates, there is usually a pending reboot caused by the upgrade process.

Deploying MDT01 (Optional)

Once the domain controller (DC01) is up and running, you can deploy the optional MDT01 virtual machine. Don't forget to leave DC01 running while deploying MDT01 since it is joining the domain during deployment. Use the following settings for the MDT01 virtual machine:

  • Name: MDT01
  • CPU: 2 vCPU
  • Hard drive: 300 GB (dynamic disk)
  • Memory: 4 GB (static memory)
  • Network: Your lab network
  • Image file (ISO): C:\CMLab\ISO\HydrationCMWS2022.iso

Deploying DP01 (Optional)

Once the domain controller (DC01) is up and running, you can deploy the optional DP01 virtual machine. Don't forget to leave DC01 running while deploying DP01 since it is joining the domain during deployment. Use the following settings for the MDT01 virtual machine:

  • Name: DP01
  • CPU: 2 vCPU
  • Hard drive: 300 GB (dynamic disk)
  • Memory: 4 GB (static memory)
  • Network: Your lab network
  • Image file (ISO): C:\CMLab\ISO\HydrationCMWS2022.iso

Deploying FS01 (Optional)

Once the domain controller (DC01) is up and running, you can deploy the optional FS01 virtual machine. Don't forget to leave DC01 running while deploying FS01 since it is joining the domain during deployment. Use the following settings for the MDT01 virtual machine:

  • Name: FS01
  • CPU: 2 vCPU
  • Hard drive: 300 GB (dynamic disk)
  • Memory: 4 GB (static memory)
  • Network: Your lab network
  • Image file (ISO): C:\CMLab\ISO\HydrationCMWS2022.iso

Next Steps – Customizing the Hydration Kit:

Below is a quick walk through of items to change if you need to customize the kit.  For a broader scope, please see the post Customizing the ViaMonstra Hydration Kit.

If you need to change server names, IP addresses, domain names, installation, passwords, etc. in the environment, the main configuration is stored in the various INI files in the C:\CMLab\ISO\Content\Deploy\Control folder.

Note: Again, by default, all accounts, including Administrator, have a password of P@ssw0rd.

The configuration files for the Hydration Kit.

For the ConfigMgr (CM01) VM you need to update the following files:

  • C:\CMLab\DS\Applications\Install – ConfigMgr\ConfigMgrUnattend.ini
  • C:\CMLab\ISO\Content\Deploy\Control\CustomSettings_CM01.ini

If you need to change the various service accounts, you need to modify the Configure-CreateADStructure.wsf script in the C:\CMLab\DS\Applications\Configure – Create AD Structure
folder.

Written by Johan Arwidmark

About the author

Johan Arwidmark

5 5 votes
Article Rating
Subscribe
Notify of
guest
33 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments
Radu Bogdan
Radu Bogdan
4 months ago

Hello,

I've noticed the the CM01 doesn't join the domain, I've already tried several times and no luck. Did anyone had the same issue, am I missing something here ? Thank you.

Stout
Stout
4 months ago

Curious if you've thought about what it would take to create something similar to this in Azure using spot instances so at least the cost stays low. I would be super interested in something like that! 🙂 As always, love the Hydration kits, thanks Johan!

Yannick
Yannick
5 months ago

My VMs do not have access to the internet, so I followed the advice to copy microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab to C:\CMLab\DS\Operating Systems\WS2022\sources\sxs. However, .NET Framework 3.5 does not install and so the installation of ConfigMgr fails since it is missing. Manual installation via the Server Manager results in a freeze of the VM. So I checked the Task Sequence in MDT for the ConfigMgr Prerequisites and found that the checkbox for .NET 3.5 was not checked. However, deploying the updated ISO did not fix the issue either.

What am I missing? Thank you for helping in advance.

Best regards
Yannick

Jessie
Jessie
5 months ago

I fixed the issue. in $edition it needs to be "Windows Server 2022 Standard Evaluation (Desktop Experience)" you have "Windows Server 2022 Standard (Desktop Experience)"

Jessie
Jessie
5 months ago

A Windows Server 2022 Standard WIM image (single index, fully updated). The easiest way to get one is to download an already updated Windows Server 2022 ISO file, and then run this PowerShell script:

I go to the Microsoft eval site, and I download the ISO for Server 2022, rename the iso and when I run this script i get the following error:

WARNING: WIM Edition: Windows Server 2019 Standard (Desktop Experience) does not exist in WIM: D:\sources\install.wim, aborting…

What am I missing?

Nidhish
Nidhish
6 months ago

Pls share the hydration kit for MECM CB 2203 on Windows Server 2022

Henri
Henri
7 months ago

SQL Server 2019 Cumulative Update link points to 2017 CU, not 2019. Correct link is Download SQL Server® 2019 for Microsoft® Windows Latest Cumulative Update from Official Microsoft Download Center

Tim Lay
7 months ago

I have updated the following files

ConfigurationFile.ini – line 147 with SQLSYSADMINACCOUNTS="TIMBO\Administrator" "BUILTIN\Administrators"

Install-HYDSQLServer2019.ps1 – line 133 with $OriginalSQLSYSADMINACCOUNTS = "SQLSYSADMINACCOUNTS="TIMBO\Administrator"BUILTIN\Administrators""

Note that CU15 (SQLServer2019-KB5008996-x64.exe) is in the Updates folder

But there seems to be an error displayed as indicated in attachment
Any help, much appriechated
Regards
Tim

Donut Stack
Donut Stack
8 months ago

Thank you for yet another amazing Hydration kit Johan. This one initially appeared to be rather straight forward until I hit the following problem. CM Client on my W10 client will not retrieve policy unless an additional internet connected network is attached to the W10 client. I don't intend to connect this lab to the internet unless I have to. Hydrated with default network and naming scheme, configured an "IP Range" based boundary and assigned to a boundary group with site assignment. Enabled PXE boot. Deployed an W10 client via CM Client install task sequence. W10 client is assigned to… Read more »

Syed
Syed
9 months ago

What's your Server Hardware Model?

Christian Saeuberlich
9 months ago

Step 4: copy ADK WinPE Addon. No source folder will be created with your script.

Christian Saeuberlich
9 months ago

your download URL for SQL CU14 linked to SQL CU 2017.

Adrian moss
Adrian moss
9 months ago

Hi having put a lab together i am finding i can pxe boot f12 and get the task seq menu on selecting and it running the pre check i am having reports that the boot dosk is not on the dp on checking i find it is but it still fsils at this point any ideas.

Meik
Meik
9 months ago

Great work Johan,
thanks for IT.
But the Applications.xml is not the right one.Apps are missing. PS Code Exists but the TS fire´s Error.
Thanks again

Simon
Simon
9 months ago

Hello, I have taken all the steps related to changing ip/account/domain/passwords… during the installation everything goes well, but only 1 sctipt is not executed. The DC server creates the new domain with the given password but the accounts are not created in the OU/AD. What could possibly go wrong? I double checked the script. My next step is just leave everything default and install it.

Daniel Barras
Daniel Barras
10 months ago

Question for you, Johan. Was there a change to BitLocker in Server 2022? I can use MDT to store my BitLocker keys in Windows 10, Windows 11, Server 2019, but not Server 2022. All the other keys get stored, and BitLocker is activated on the other 3 operating sytems, but not 2022. I have to go in and Activate it, then either "print" the key or store it elsewhere. My Rules contains:

BDEInstall=TPM
BDEInstallSuppress=NO
BDEWaitForEncryption=TRUE
BDEDriveSize=3000
BDEDriveLetter=S:
BDERecoveryKey=AD
BDEKeyLocation=\\<SERVERNAME>\Deploy$\RecoveryKeys
BDEAllowAlphaNumericPin=YES

I've enabled "Wait for BitLocker to complete…" in the Enable BitLocker portion of the Task Sequence.

Last edited 10 months ago by Daniel Barras
CarlT
CarlT
10 months ago

Hi Johan,
This is a very thorough and detailed procedure, You're the man !
Keep up the good work.

Jason
10 months ago

Fantastic. I look forward to joining you for the Q1 2022 lab environment discussion!


>