In Part 8 of my Windows 8 deployment series I will show you how the MDT Database allows you to nearly reach a Zero Touch Installation through the use of automatic naming.
With the MDT database, we can dynamically alter our customsettings.ini file for individual clients. For example, you can specify SkipBitlocker=Yes as your default value. By using the MDT database, set SkipBitlocker=No for any of your laptops.
Installing the database
MDT requires the use of a SQL database, SQL Server 2012, for examle. If you do not have a SQL server in your environment, you can use SQL Server Express. In this guide, we will install SQL Server Express 2012 on our machine hosting the MDT Deployment Share.
After you launched SQL Server setup, select New SQL Server stand-along installation.
SQL Server Installation Center
Proceed through the installation and select the default Feature Selections.
SQL Server Feature Selection
Continue through Instance Configuration and Disk Space Requirements windows by accepting the default values. On the Server Configuration window, change SQL Server Browser Startup Type from Disabled to Automatic.
SQL Server Browser is needed for Windows PE
Continue through the remaining windows by accepting the default values and allow the installation to finish. This process can take a little while. Once the installation has finished, ensure that all SQL components installed. On my first try, a component failed and I didn’t catch it until later.
The SQL Server Completion Summary
We have a few last things to configure on our SQL server. Launch SQL Server Configuration Manager and expand the SQL Server Network Configuration node. Under Protocols for SQLExpress, enable Named Pipes.
Named Pipes allow for Windows PE to connect to a SQL Server
On your SQL server, you will need to create an inbound firewall exception for %ProgramFiles%\Microsoft SQL Server\90\Shared\sqlbrowser.exe and for %ProgramFiles%\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\Binn\sqlservr.exe
Firewall exception for the SQL Browser executable
After this configuration is complete, restart the SQL server once.
Connecting SQL to MDT
Within the Deployment Workbench, navigate to Database which can be found under Advanced Configuration. Right click on Database and select New Database.
Enter in your SQL Server name and SQLEXPRESS as the Instance name. Be sure Named Pipes is selected as the Network Library.
Connecting to the MDT Database
Create a new database and name it.
For simplicity, I named my database MDT.
On the SQL Share window, name your SQL Share. I prefer the default suggestion of DeploymentShare$
Proceed through the rest of the wizard and ensure that the connection is successful. This is shown on the Connection Confirmation window.
MDT is now successfully connected to our database.
In part 5 of this series, we configured our CustomSettings.ini. In our detailed example, we specified our Database rules. If you did not use that detailed example, you will need to do one final step. Within in the Deployment Workbench, right click on Database and select Configure Database Rules.
As a best practice, only query what is needed within your environment.
Because we are interested in computer-specific settings, we will uncheck all other options. On querying what your environment requires will save you time during the imaging process. Continue through the wizard.
Review the values
Once connected, we can now get really granular with our deployments and even automate the naming portion of our imaging process. In our previous post, we eliminated all imaging prompts except for the name prompt. The default name is automatically generated and looks like this:
Let’s create a computer account in MDT for this machine and give it a name of TestPC-01. In the Deployment Workbench, expand the Database node. Right click on Computers and select New.
The New Computer Prompt within MDT
For the description, enter the computer name. Although this is optional, it is much easier to maintain your Database when the description matches the computer name. For the identification value, we will enter the MAC address. It must be in the format of AA:BB:CC:DD:EE:FF (all letters must be capitalized).
The Identity Tab is now filled out correctly.
Select the Details tab and scroll down to the Identification section. For OSDComputerName, enter your computer name and press OK.
After booting back up our machine again, check out the computer name:
Check the computer name
Pretty awesome! If you wanted to do this on a wide scale, you can easily grab your MAC addresses from DHCP or your serial numbers from Active Directory. Because most MDT tasks can be scripted with PowerShell, you can also import computers on a mass scale from a CSV file.
If you have any questions or problems setting this up (or if you think this is pretty neat), please let us know! In our final post, we will cover troubleshooting MDT.