Installing and configuring your WDS Server

Summary

After yesterday’s post, it really fired me up to do a few more of the old projects, even though my old formatting and typing as well as the information being somewhat out of date I thought I would still go over it and publish it rather than it sitting on the deepest depths of the NAS in a folder labelled “OLD PROJECTS”. Whilst WDS is one of the longest documents I have ever written its still a fascinating piece of under used and unloved technology that has matured over time and is great for deploying Windows Servers and Desktops.

Whilst my Formatting and knowledge have improved over the years my patience for myself getting things wrong has not. In this blog post I am going to show you how to install and configure the WDS server. For the initial scripting of builds I think that deserves a post on its own due its complexity, however I will show you how to install and configure as well as produce a generic boot and install non scripted within this post.

Again as this is an old project I will be adding a “Review: –“ in red that will give updated information as well as any other quirky information and/or mickey take I see fit.

Installation and configuration.

There are very few steps to actually setup WDS on the servers most of the work needs to be done to the network infrastructure (again nothing major). Below are the outline steps to successfully install and configure WDS from the design and planning stage.

Pre-requisites

For the WDS server you will need the following pre-requisites for a successful deployment.

OS Level

  • Windows 2003 or 2008 Server (Server 2012/2012R2 and soon to be Server 2016 are now available)
  • Has to be x64 operating system if you will be dealing with x64 images (Since 2008R2 all server versions are x64)
  • If windows 2003 server then you will need SP2 (Actually this is a minimum and I would always say the Server requires updating to the current patch level)
  • Must have a DHCP controller of some sort (UNIX/Windows or H/w based)
  • Must have the DHCP pointers set that are specific to WDS
  • Must be a member of Domain.

Infrastructure

  • Must have a beefy Server (I.E. must meet or beat (Think I meant exceed) the Recommended Settings for the respective server OS)
  • Must have a separate Hard Disk (not on the root drive) that is formatted to NTFS
  • Must have sufficient storage for the images that you wish to store plus 20% to be able to reduce the risk of failures due to space.
  • Will need WAIK 2.1 and BDD 2007 or above.
  • For stability of on physical WDS servers you should have teamed network cards to provide load balancing and/or failover
  • Multicast DHCP environment will be required for multicast deployments
  • For Security and ease of management Active Directory policy will need to be tightened and at least two new security groups created.

As we will not in this instance be using old RIS images we can run Windows deployment services in its native mode.

You will also require as part of the deployment of Windows Deployment Services, a copy of Windows Vista x64 and/or Windows Vista x86 for the extraction of the boot.wim which you will use to create the PXE boot and capture images later in this document (although this should have already been deployed and ready by then).

Configuration of DHCP

This section covers the DHCP bit so that when you PXE boot the clients can see the server. We are going to assume that it is using a Windows DHCP and that it resides on the same box. This is so that the diagrams show some correctly and so that you can adapt this to your own needs. There will be a section on the end to briefly go over some pit falls that you may come across. Part of this will be included in the planning as you will need to know whether you are going to be using the multicast scope or a standard scope.

Review: – for some reason I had put this section at the very end of the configuration section of the original project documentation. Funny thing is this is a pre-requisite to actually getting it up and running, without the DHCP server settings you can have all the configurations in the world but it still won’t boot from the WDS unless the network knows its available.

Setting the DHCP up

To set up the DHCP server you will need to firstly install the service by

  • Go to the control panel (doing this manually is better)
  • Go to the add/remove programs
  • Go to the windows components and wait for this to load.
  • Enable the DHCP and click next
  • At this point it will go through the setup
  • Fill in the information with the correct information
  • Reboot when required
  • Check for any updates and reboot as required
  • Open up the DHCP manager

Start DHCP

  • Bind the DHCP server to the network card you wish to have the service running on.

BINDING

  • Go to the Server options and add a service, the first service that you will need to add is the option “060” and leave it set to ‘PXE CLIENT’ this is very important that you leave it set to default.

DHCP Server Options

  • You will now need to add “066” the boot server host name service,
  • For option 066 you need to add the FQDN (fully Qualified Domain Name) of the Windows Deployment Server.

DHCP Server Options 2

  • The last option that you will need to add is option “067” boot file name
  • For option 067 you need to add the string “\boot\boot.sdi” this has to be without the quotes and point to the .SDI otherwise it will not pick up the architecture of the client machine.

DHCP Server Options 3

Once complete you should have a Server options page that looks like this

DHCP for WDS

Review: – There you go a pretty straight forward setting if you are using a Windows based DHCP, even better if the DHCP server is on the same server as the WDS server, which is my advice to get the best from the server if you consolidate a fair amount of secondary services onto the single box, the best would be to use virtual server and separate everything out but that depends on your internal processes and procedures as well as your own preferences.

Installing WDS

The installation of Windows Deployment Service is as easy as installing Service Pack 2……… Well nearly. The simplified actual steps that you would have to take are as follows.

For windows 2003 server you would

  • Download and install Service pack 2 (if not already installed)
  • Go to the control panel
  • Add remove programs
    1
  • Windows components
    2
  • Select and follow the WDS installer
  • Reboot
  • Check for updates and reboot.

For Windows 2008 Server you would

  • Go to Control Panel
    3
  • Go to Programs and Features
    4
  • Go to turn features on and off
    6
  • Turn on and follow the prompts for WDS
    7
  • Reboot and check updates (reboot as required)

Review: – Fair to say its a pretty simple install for Server 2008 to Server 2016 its just an additional feature, unfortunately the Download is no longer available nor should it be used now for server 2003 due to the Server 2003 and Windows XP operating systems being end of life.

Configuring WDS

In this section we will cover the configuration steps that are required to successfully configure Windows Deployment Server for first use. I will assume in the detailed notes there is;

  • A windows DHCP host
  • The DHCP host is on the same box as the WDS server

This is merely so that the slides show correctly and I will be providing the steps for the use of a non Windows DHCP host and when the DHCP host are not on the same box and not windows based. Plus there is more than just the network to configure in this section.

 Initial Steps

After you have chosen your particular OS level and patched it accordingly  and set the options that you require, such as whether you will be using a windows DHCP or not and the configuration of whether the DHCP will be on the same box as the Windows Deployment Server or not. You will notice a couple of new Icon appear in the Administrative Tools menu on the ‘Start Menu’, these are the WDS server and WDS native mode applications. As we are only concerned with the configuration of the WDS server and have no legacy RIS deployments to worry about we can focus just on the WDS server.

But before we can actually sit and play with our newly installed application we have to install a few little extras. Firstly you will need to download and burn to DVD the latest Windows Automated Installation Kit (Waik) which is at time of writing at version 2.1 (this supports Server 2008 and Vista deployments). You will be using this to edit any images in the future. As it comes as part of an .ISO image you will either have to burn to a DVD (as its just over 1Gb in size) or mount the image using the XP virtual CD driver (available from the MS downloads page free of charge).

You will also need to download and install the Business Deployment Desktop (currently version 2007) this enables you to quickly edit and create the unattended setups as well as deploy the applications to any ‘flat images’ that you create. The download is in a .exe format and approximately 8Mb in size.

With these two applications now installed there should be two more sub menus on the ‘Start Menu’ for you to ignore for the time being.

We can now start to build the images to capture and deploy images to our Windows Deployment Server. Have your Windows Vista XP x86 and x64 Disks ready as we will be requiring them for this section.

Boot image Creation

Before we can do anything with the WDS we have to create the boot image for the PXE to boot from. Despite what Microsoft says, you have to use the boot.wim found on the Vista DVD’s as they provide the most stable images available according to MSDN sources, hence why we will be using one of each of the Vista boot.wims (one for the x86 and one for the x64 machines). This is also the image that we will use for deploying the images.

  • Open the WDS manager.
    BIC1
  • Insert the Vista x86 DVD and cancel any auto run from the DVD
  • On the left hand pane of the WDS MSC snap-in,  select boot images
  • From boot images on the right pane right click and select add boot image
    Bic2
  • This will bring up a dialogue box click on the browse button and browse to the ‘\sources’ folder on the DVD drive that you inserted earlier
    Bic3
  • Select the boot.wim file and click next
  • In the next window it will ask for a name, now you need to make this something useful for all, for instance I have called mine WIN x86 Deploy and WIN x64 Deploy (this will make things easier later)
    BIC4
  • Select next and give the same name for the image name (as this is what will show up when you PXE boot) and give it a reasonable description.
  • Once all the files have finished copying click the finish button, this should then put this image in the right hand pane of the WDS boot images console.
    BIC5
  • Repeat the steps for the x64 edition of Vista to this point.

Capture image Creation

Now that we have our boot images loaded on the server, we need a way of being able to capture images from the master machines (or the one that sys admin built to perfection), and turn them into images on the WDS server for later editing or deployment, its also a good way of getting quick flat images onto the WDS server ready for deployment if you are using WSUS or some other application deployment method. To build a capture image you will need to.

CIC1

 

  • On the left hand pane select the boot images, this will show you the images that you created when you did the boot images
  • Right click the x86 version of the boot image in the right hand pane and chose create boot image.
  • On the next page for the image name make this the capture image instead of the boot image for the image name
  • For the description rename this to something useful and descriptive to other users, for the file name call it capture (don’t worry it will automatically get the .wim extension). And place it in the \boot\x86\images folder of the reminst mount
    CIC2
  • After clicking next it will start extracting the files from the source image.
  • To complete click finish
    CIC3
  • At this point you will get a bit panicked by the fact that this image has not been displayed in the boot images pane. DON’T WORRY THIS IS NORMAL.
  • To add the capture image you will need to right click on the right hand pane and select add boot image
    CIC4
  • Select the add image file and browse to the boot\x86\images\capture.wim file
  • Make sure this follows the same naming convention as the boot.wim and has the correct architecture type listed in the description and image name somewhere.
    CIC5
  • Make sure everything is ok and you happy with it and then click next then finish
    CIC6
  • Now do the same for the x64 image swapping the folder image location to the boot\x64\images folder.

Once this has been completed you should have a boot images console that looks something similar to this.

CIC7

Properties Configuration

Now that we have our images and our DHCP sorted, before we can go ahead and capture or deploy our first image we need to finish the configuration of the Windows Deployment Server. We will start with the boot tab on the properties and move around the seven tabs in order. Again we will assume that the DHCP resides on the same box as the Windows Deployment Server and that the Domain Controller is separate. The first thing we need to do is bring up the properties pages, we do this by right clicking on the server name in the WDS console on the left hand pane and selecting properties.

Boot Tab

The boot tab has six optional settings but it is always best to set them especially if you are deploying images in a mixed environment of x86 and x64 bit machines. It basically gets the information from the PXE client to tell the WDS server which boot image is the better architecture to load. The options that you will need to set for better response are.

  • In the default boot program for the x86 architecture you need to choose the ‘boot\x86\pxeboot.com
  • In the IA64 architecture you need to chose the ‘boot\IA64\bootmgfw.efi’ this is a special case one that is specific to the itanium architecture.
  • In the x64 boot program option you will need to choose the ‘boot\x64\pxeboot.com’

For the second area on this tab (the default boot image) you will need to point the to the correct images.

  • For the X86 image you will need to point this to the ‘boot\x86\images\boot.wim’ (or the name of the boot image file that you specified when building your boot and capture images).
  • For the IA64 images you need to point this to this to the ‘boot\IA64\images\boot.wim’ (if you have one set up).
  • For the x64 image you will need to point to ‘Boot\x64\images\boot.wim’

If everything has been successful so far your boot tab should look something like this, don’t worry if one or more options are not yet filled in as this is normally ok and will not affect the running of the server.

Boot tab

Client Tab

The client tab is where you can specify specific generic unattended .XML scripts if your server only has one type of OS running on the domain. So if you were only going to be running say windows 2008 servers with x86, IA64 and x64 bit architectures then you would set the options, as we are going to be running in a mixed environment in the future, it is better to add the unattended file directly to the image or image container, although I will briefly cover the basics of this tab. One things that is IMPORTANT TO NOTE on this page is not to place a tick in the box that says ‘create account in the domain after running WDS client’ otherwise you will get all sorts of weird and wonderful names in the Active Directory for the computer names as part of the pre build (you can set this option during the Unattended.xml script). So a brief outline of the setting would be,

  • For the x86 architecture you would need to point the string to ‘wdsclientunattended\x86\unattended.xml’
  • For the IA64 architecture you would need to point the string to ‘wdsclientunattended\IA64\unattended.xml’
  • For the x64 architecture you would need to point the string to
  • ‘wdsclientunattended\x64\unattended.xml’

You would need to create the x84, IA64 and the x64 folders yourself as well as build the .xml scripts using the BDD 2007 (or equivalent) for each of the architectures.

Client tab

DHCP Tab

This tab is one of the most confusing to read and the one that catches most people out because the way Microsoft decided to word this blurb in the top of the tab, in basic terms it means that if you are using a DHCP server that is on the same box then you should put a tick in the first box and if that DHCP server has the option of booting from PXE then you should also put the tick in the second box. So if you have been following this document so far your DHCP tab should look something like this.

DHCP tab

Advanced tab

The advanced tab mainly deals with the DNS and Active directory controllers as the authorisation of the DHCP that you have.

In the top section for quicker resolution of the Domain controller it is better to specify it here especially if you are going across subnets etc.

You will also need to enter the location of the Global catalogue file, this is also useful for multi domains and multi subnets for quicker resolutions of the AD structure.

For the bottom section of this tab you will need to authorise the Windows Deployment Server in the DHCP so that it can be picked up, and be booted from.
Advanced tab

Directory Services Tab

The directory services tab is where you can set the naming convention for your deployments, you can then re-set them using ‘placeholders’ in the untattended.xml this is just a temporary measure so that there is a hostname to deploy to as your images are generalised and your machines are under normal circumstances (unless it’s a rebuild) bare metal builds.

For a list of the syntax’s you can click on the little help button which will give you a complete list of the syntax’s that you can use, for the sake of this manual we will use the syntax %61Username%#

The bottom half of this is again just really for the deployment of the images and can be changed during the unattended portion of the install either by setting this to a default domain (if required) or using a placeholder in a multi domain setting. If you where just using the single domain then you could use this to set the domain.

For this document we are going to use the setting of using the same as the user deploying the images as this would be the most sensible in most scenarios as a rule of thumb anyway.

DS tab

PXE Response Settings Tab

This is probably one of the more important of the settings tabs out of the seven as this tells the Windows Deployment Server which clients get answered and how they get answered.

Brief outlines of the settings are below

  • Do not respond to any client computer
    This is the setting least likely to be used unless you have chosen not to PXE boot which is pretty secure, and can be set during periods of inactivity to protect against people using it when they are not supposed to.
  • Respond to Known clients only
    This is a secure option but takes away a lot of the autonomy of the system management. This will only respond to the client who have there MAC address’s set as known in the DHCP and in the Windows Deployment Server settings.
  • Respond to all (known and unknown) client computers.
    In its normal settings this is the most insecure settings although it is one of the best ways to automate using this setting. As it will respond to all clients who request PXE. Although you can set it to ask for the administrators permission before deploying an image. This is a good balance of autonomy and security as you have a response but it will not do anything if it is unknown without the administrator authorising the transaction

For this test we will use the respond to all with the administrator to authorise setting enabled. With this all set you should have a page that look like this.

PXE tab

General Tab

This tab is pretty self explanatory as it shows you the basic information about the windows Deployment Server.

 

General tab

Network Settings Tab

This tab is for the Multicast settings of the Windows Deployment Server.  It is split into three sections. To be able to use the Multicast options in 2008 Server you will have to

  • Set the multicast IP Address to match your DHCP server, this is because there is sometimes a problem when connecting to the DHCP server and the image cast TFTP client not assigning images from the Multicast DHCP.
  • Set a multicast UDP port range, this should be kept standard and the ports added to the firewall rules
  • Set the network profile, for this to work correctly and not interfere with other network traffic it is best to set this to 10% of the overall bandwidth capability of the network e.g. if the network is a 1Gb link then set the Network Profile to be 100Mbps

Network tab

Finalising the Configuration

In this section we will go through the final checks and a look around the other parts of the Windows Deployment Server to familiarise yourself with in case something does go wrong in the future. We will go down the list on the left hand side in order that they appear.

Install images

You will see at this point that this is empty. You will need to create some install groups in this section for the entire process to work correctly. You do that by doing the following.

  • Right click and select new install group
  • Give it a name that will make sense

FIC 1

As you can see from the diagram I have 4 such groups 2 for the servers and 2 for the clients of both x86 and x64 variants you could if you wish break this down even further by OS level and architecture but I find this works just fine.

You will also see when you right click that you can add install images from other sources. Where you have created them and transferred them separately for whatever reason. To do this you can follow this procedure,

  • Right click on the image group that you would like to install the image into
    FIC 2
  • On the next page navigate to the location of the file and click next
    FIC 3
  • This will bring up the image page and description, un-tick the box at the bottom so that you don’t use the same image name and then click next
    Fic 4
  • On this page give it a name following your own naming conventions so that it can be easily identified and also give it a description detailing where it came from and then click next
    Fic 5
  • On this page it will give you a summary click next
    FIC 6
  • It will now begin the process of collecting the files
    Fic 7
  • Click finish when done.

As security is important with Windows Deployment Services, as we would not want anyone to install servers or desktops at will we can set who as access to see the images and who has the access to create new ones in he group. This should have been planned during the planning stages of the deployment of WDS. To set the permissions you can do the following,

  • Right click on the image group that you wish to set the security for and select security
    FIC 8
  • This will bring up another dialogue box.
  • From here choose the security groups (RATHER THAN PERSONS) that require the desired level of access
    FIC 9
  • Click on the apply button
  • Do this for all of the image groups

Boot images

We have covered quite a bit of this tab earlier in this document but there are a few other things in here that can be done as well as a few do’s and don’ts.

You can add custom boot images, to the Windows Deployment Server such as those found on the Windows Automated Installation Kit DVD or the Business Deployment Kit, as these can have some useful features for testing or where you would require some exotic drivers not normally available or practical to inject into your normal boot images. Winlite images are the WAIK standard and enable you to xcopy and imagex back images of the custom deployments that you have created. To add the custom images you add them in the same way as you would normally, this will put the procedures here for quick reference.

  • Copy the .wim to the correct image location e.g. for x86 images \boot\x86\images\%image%.wim (call the image something useful)
  • Go to the WDS console and right click the boot images and select add boot image
  • This will bring up the add boot image dialogue
  • Select the boot.wim file and click next
  • In the next window it will ask for a name, now you need to make this something useful for all, for instance I have called mine WIN x86 Deploy and WIN x64 Deploy (this will make things easier later)
  • Select next and give the same name for the image name (as this is what will show up when you PXE boot) and give it a reasonable description.
  • Once all the files have finished copying click the finish button, this should then put this image in the right hand pane of the WDS boot images console.

Once you have added a few boot images you will notice when you PXE boot your clients the boot menu will start to get a little confusing. One of the things that you can do in this boot tab to cut down on the confusion is to disable some of the boot images. To do this you can follow this procedure,

  • Locate the boot image that you would like to disable
  • Right click on the boot image
  • Select disable
  • This will then put a little circle with a red downwards arrow on it to show that the image is disabled

The most interesting of the options is the replace boot image, as this allows you to replace the image on the server without changing any of the details. This is particularly of use if you wish to build custom boot images for a particular purpose and update them on a regular basis. To replace a boot image you will need to follow these procedures.

  • Put the new boot image in the correct folder for the architecture of the image you are going to replace (and give it a suitable name)
  • Right click on the boot image that you would like to replace
  • This will bring up the normal dialogue to import boot/capture images
  • Navigate to the new image and click on next
  • It will then go through as if it was a new image insertion
  • Click on finish and your new image will be ready for use

Legacy images

In this sub menu of the Windows deployment console is where all the old Remote Install files will be located if you where previously using RIS as your deployment method it will also mean that you have your Windows Deployment Server running in either mixed mode or Legacy mode to be using this tab. By default if this is a new install then you will be running in Native mode and will not actually be able to do anything with this section. As of yet this mode is disabled in the test machine and so will not be covered in this section. As the document and testing phase comes to a close there will be plans to put the Windows Deployment Server in mixed mode to be able to produce scripted Linux and Unix builds as well as overcome some of the disadvantages of using WDS .WIM legacy images. This will be covered in the advanced sections of this document. But basic outlines of what can be achieved in this section are as follows

  • You can add your previous RIPRep’d images from RIS
  • You can add SYSPRep’d images from RIS
  • You can add old Scripted builds of server and pro versions of 2000
  • You have the ability of creating boot scripts and add 3rd party boot managers to be able to install Linux and Unix kick-start scripts
  • Plus opens up another useful tool for deploying your standardised infrastructure

There may be a requirement to install the Windows Deployment server into mixed mode during the testing phase to overcome the image limitations when dealing with legacy images of Windows 2003 and Windows XP. Especially for custom builds or for when you are building a benchmark machine, and want straight access to the install media. Although slower it provides a more flexible approach to the deployment methods available to the administrators of the University.

Pending Devices

This forms part of the security of the infrastructure surrounding Windows Deployment Server. As if you have asked the PXE boot to respond to all clients and then await the authorisation of the administrator. This was part of the settings earlier, with these set you can either authorise the transaction or reject a transaction if the system is not one known to the administrator, it will work for both the native .wim and the RIS installs. There are two ways of authorising a transaction detailed below.

Plain authorisation

  • Click on the ‘Pending Devices’ menu on the left hand side of the console
  • This should now show in the right hand pane all the devices that are awaiting the authorisation of the administrator
  • Find the one that you require either by request number or GUID (the request number is given on the client when booting from PXE)
  • Right click on that device
  • Click on authorise
  • This will then reboot the client and you will have to reboot into the PXE menu.
  • Now you should be able to deploy or capture your image

Authorise and Name

  • Click on the ‘Pending Devices’ menu on the left hand side of the console
  • This should now show in the right hand pane all the devices that are awaiting the authorisation of the administrator
  • Find the one that you require either by request number or GUID (the request number is given on the client when booting from PXE)
  • Right click on that device
  • Click on ‘Authorise and Name’
  • This will bring up a dialogue box for you to enter the computers name
  • After entering the name click finish
  • This will then reboot the client and you will have to reboot into the PXE menu.
  • It will now show the name both on the client screens and on the Server WDS console as well as the DHCP server.
  • Now you should be able to deploy or capture your image

BIC 10

Capturing and Deploying

Images

Now that we have fully configured and had a look around to make sure everything is ok and to the standard that we require, we are ready to capture our images as well as deploy them.

Up to yet we have not added any installation images and so we should do this now, one of the limitations of adding installation images is that if you wish to add one from CD it has to be from the ‘Longhorn’ code base as these where created using the new .WIM images.

Unfortunately this leaves us with two basic options for anything other than vista and those are

  • Revert back to RIS or run WDS in ‘mixed’ mode.
  • Capture a standard image (not changeable)

Using the RIS deployment method will be discussed later in this document when we come to LinuxPXE booting, for now we will concentrate on the capturing of images that we have built.

Capturing an Image

Capturing an image is one of the simplest of ways to capture an install image this is to do it from the windows boot CD (the standard one) but this only works with the ‘Longhorn’ code base and not the ‘whistler’ (XP and 2003) code base, so this means that there are two further options available to use without resorting to the RIS install method. The first one is to build your image on a test machine with all the applications and updates that you require as well as any ‘special’ settings such as partitioning. You will then boot from PXE and capture the image as a  .WIM in this way you are effectively going to build that server time and time again in the same manner, this  in combination with the unattended scripts you have almost zero administration tasks to complete. To successfully capture an image you will need to do the following,

  • Build the machine to the agreed specification
  • Update to the latest service pack and any other updates
  • Tune the c:\ drive and services to agreed levels
  • Do a disk cleanup to remove the temp files and other things that are not required in a deployment image.
  • Make your customisations e.g. move the page file, homepages and other modifications.
    CDI 1
  • Run a defrag (this won’t take long for servers (DONT DO THIS ONE SSD”s)) this will improve the speed of the build
  • Reboot the machine
  • After it has rebooted then run the sysprep utility that is on the Windows XP/2003 disk and run it through a reseal with the ‘do not reset grace period’ option enabled and allow to shut down
    CDI 2
  • Once the machine has shut down start the machine and go immediately to the PXE boot options.
    CDI 3
  • Choose the correct capture image for your architecture and OS
  • This will then boot the windows PE OS for the architecture that you chose and will look a bit like when you boot Vista or 2008 Server
  • On the first page setup your keyboard and locale information and click next
  • This will then bring up the welcome screen, click next
    CDI 4
  • This will then ask you for the image name, give it a name that fits in with your agreed naming conventions (e.g. for windows 2003 Ent 32bit you could use Win 2k3 ENT x86)
  • You will also be asked for a description, here is where you place all the information about the build, a good rule of thumb is the OS level and patch level of the image (date for the last update will do), applications installed (a list will be ok), and any other modifications. Try and make it as brief as possible but with as much information as possible. Once both pieces of information are entered you will be allowed to click next
    CDI 5
  • On this new screen it will be asking for location of a file name you can put the image anywhere including on the C:\ drive call it the image name of what you are going to call it on the Windows Deployment Server
    CDI 6
  • Now put a tick in the upload to WDS server box
  • Enter the name of the of the Windows Deployment Server that you wish to upload to, you have to use the DNS name and not the IP address here
  • After a time the logon box will appear enter the information to be able to log on using the format DOMAIN\USERNAME and then enter the relevant password
    CDI 7
  • This will then see the drop down list with the image groups from the server, select the relevant image location for your image
    CDI 8
  • Click on finish this will then start the image capture to the local drive
  • After it has captured the image locally it will automatically upload to the Windows Deployment Server and then give you the completed dialogue box
    CDI 9
  • Click finish and the box will reboot (at this point you can shut down the imaged computer as we will not be requiring it for now)
  • Go back to the Windows Deployment Server
  • Check to see if the image has been added in the correct place (sometimes it does not appear at all)
    CDI 10
  • If the image does not appear go through the standard procedures to add an install image (if you skipped this bit I have reproduced it here)
  • Right click on the image group that the image should be in and select ‘add install image’
  • Now go to the local folder of where the image was stored and click on the image file you want to add
  • Use the default name that you used to create the image from the PXE boot menu and all the default options as this has already been done by yourself
  • It will then look as if it is converting like when installing from CD but it takes less than 20 seconds to complete.
  • Click on finish and the image should now appear in the correct image group.

Deploying an Image

Ok so now that we have configured the Windows deployment Server and setup the booting of the Windows PE. We have also covered adding of install images to the server via DVD and windows 2003 methods. During this section we will go over the steps of what Windows Deployment Server is all about and that is the Deployment of images to bare metal devices. The deployment of the server images are very fast (sub 10 minutes) but the post configuration can take a little more time depending on whether we have used scripts or not. The unattended scripts building will be discussed later in this document but I will cover both methods of deployment in this section. I have split this section down into four parts to take into consideration  the two main OS deployments (XP/2003 and Vista/2008).

Deploying Windows XP/2003 without Script

Deploying XP in this way is the most frustrating of them all, you are required to setup the server by hand almost, the only benefit is that there are already the applications and the custom tweaks built into this method. You also have to remember the limitation of imaging in this fashion as Windows Deployment server does not allow you to change the partition sizes and all the partitions that where created on the original machine must be re-created by hand. You will also need the activation keys and such like as part of this method as these will not be included, as you had to sysprep the image before uploading it to the server. Once this has done you will also need to go through a mini-setup screen and answer all the questions about the new server you have just deployed. To build your server in this way you will need to follow these procedures.

  • Boot to PXE as per the norm
  • When the PXE boot screen appears chose the deployment option for the architecture that you wish to deploy
    DI 1
  • This will then bring up the standard Windows PE loading screen (again just like installing any of the Longhorn code based systems from the DVD)
  • It should then show you the locale settings screen, set your language and click next
    DI 2
  • This will then ask you to log on with the domain account settings, log on using ‘domain\user’ and then enter your password before clicking next
    DI 3
  • This will bring you to the ‘Welcome Screen’ at this point you can either waste 5 minutes reading it or just click next
    DI 4
  • This will then bring up a list of the images that you have and their architecture, DO NOT SELECT an x64 image if you have booted using the x86 Windows PE image
  • This will then bring up the partition information of the bare metal computer, you then have to create all the partitions manually to the specification of the original image.
    DI 5
  • Once done click next
  • This will then initiate the session build, that can take up to 3 minutes to complete
    DI 6
  • This will then bring up the new Windows installation page and start copying the image across and expanding the image, as well as installing the features of the custom build.
    DI 7
  • Once done click next
  • This will reboot the PC/Server
  • Once the server has rebooted then you will be presented with the ‘mini-setup’ welcome screen click next
    DI 8
  • This will show the License agreement, click on the ‘I Accept this agreement’ button, then click next
  • Hopefully this next page should show the correct locale information if not you can click the customise button to correct it and then click next
  • This will bring up the name and organisation screen, enter the information accordingly then click next
  • This will then ask you for the product key, enter the correct product key for the OS that you are building click next
  • This will bring up the ‘Licensing modes’ screen choose the correct mode and then click next
  • The next page asks for the computer name and the Administrator password (for the local account), enter this accordingly and then click next
  • This will bring up the date and time settings, hopefully this should have been picked up by the Windows PE environment and passed over, so you will need to check and then click next
  • This will then go configuring the network progress bar and then open the ‘Networking Settings’ dialogue
  • At this point you can either leave it in typical mode, to configure later or configure this now, we know that the settings so we can go through this now, click on the custom settings radial button then click next
  • This page will bring up the network adaptors settings page,
  • Make sure you are configuring the right one (it tells you at the top of the dialogue page)
  • Set the adapter up with all the information that has come as part of the build spec then click next
  • This will then ask you if you would like to add the computer to a specific domain or workgroup
  • Set the domain information as per the build spec for the server that you are building, click next
  • This will then finalise the installation (as it would for windows 2003) with all the start menu data and removal of temp data,
  • It will then hopefully bring up a dialogue that says that you where successful in building the machine, click finish
  • This will now reboot the machine
  • After the reboot you will see the logon prompt, where you can log in and make any specific changes that are required (software wise), as well as create the further partitions and finalise for production.

As you can see deploying in this manner is still a very time consuming process although it is quicker than doing it via CD/DVD image, due to the initial copying stage with the network you are only limited by the disk write speed and the network whereas with CD/DVD media you are limited to the speed of the DVD drive (currently 20x DVD drives are available) giving you a theoretical maximum of 6Mbs a second over the maximum of copper network which stands at about 1GBs, although the actual write speed will depend on the type and setup of the disks, but a theoretical maximum of 20Megs a second sustained write is a good rule of thumb.

Deploying Windows Longhorn without a script

If you found the deployment of Windows 2003 and XP without a script difficult then you will be happy to know that it is much simpler doing it using the longhorn codebases. For one you do not have to know the original partition information sizes just how many there where and where they were on the original build machine. You will still have to be fairly hands on with the rest of the building of the machines but it’s not as intense as Windows 2003. To successfully build a Vista or Server 2008 machine without a script you will need to follow these procedures.

  • Boot to PXE as per the norm
  • When the PXE boot screen appears chose the deployment option for the architecture that you wish to deploy
  • This will then bring up the standard Windows PE loading screen (again just like installing any of the Longhorn code based systems from the DVD)
  • It should then show you the locale settings screen, set your language and click next
  • This will then ask you to log on with the domain account settings, log on using ‘domain\user’ and then enter your password before clicking next
  • This will bring you to the ‘Welcome Screen’ at this point you can either waste 5 minutes reading it or just click next
  • This will then bring up a list of the images that you have and there architecture, DO NOT SELECT an x64 image if you have booted using the x86 Windows PE image
  • This will then bring up the partition information of the bare metal computer, you then have to create all the partitions manually to the specification of the original image.
  • Once done click next
  • This will then go through the copying and expanding files, routine and then reboot,
  • This will then bring up the standard Windows Vista setup screens
  • On the fist page it will ask you for your locale setting’s, select the correct settings for your computer, then click Next
  • On the next page it will show the Standard vista Licence agreement page, you have to accept the licence agreement and then click next,
  • The next page will ask you to set up a local username and password, set up a username, but at this point do not set a password as this account will be deleted when joined to the domain
  • It will then bring up the windows protection dialogue you will need to choose the recommended settings, then click next
  • The next page is the windows date and time zone information page, choose the one that best suits its location as well as checking that the date and time are correct, then click next
  • This will then bring up the computers location with three options, as this computer will be connected to a domain, you will need to select ‘work’ as the location and then click next,
  • This will then bring up the ‘Thank You’ screen with the Start button.
  • This will then after a short while check the computers performance as if you had installed from CD
  • It will then reboot the PC
  • This will then allow you to connect to the domain automatically without any further configuration for the domain
  • You will after logging in enter the windows Serial and activate your copy of Vista and then reboot,
  • After you have logged into the domain for the second time. you will need to remove the local user you created as well as configure the computer to your specific needs

As you can see this is still a laborious task to undertake without the unattended scripts and does not offer much in the way of advantages over doing an install from DVD/CD, but this is a good way of keeping the disk images safe and out of the way, also the speed is vastly increased during the copying process. As with the XP/2003 install you will have to babysit the install from start to finish and so should really only be used as an image creation tool rather than a deployment method. As you can then create the specific image before sysprep’ing the box and then uploading the image you have just created to the Windows Deployment Server. In the next two sections we will cover how to install with scripts, both using XP/2003 and Vista/2008 deployments.

Deploying Windows XP/2003 with a Script

Deploying Windows 2003 using scripts are an administrator must, as they save time and deploy a duplicated standardised image across the enterprise. To deploy ‘Whistler’ code based systems with a script is easier although at this moment is not a totally hands off approach due to naming conventions and such like. To successfully deploy Windows XP/2003 you will need to

  • Boot to PXE as per the norm
  • When the PXE boot screen appears chose the deployment option for the architecture that you wish to deploy
  • This will then bring up the standard Windows PE loading screen (again just like installing any of the Longhorn code based systems from the DVD)
  • It should then show you the locale settings screen, set your language and click next
  • This will then ask you to log on with the domain account settings, log on using ‘domain\user’ and then enter your password before clicking next
  • This will bring you to the ‘Welcome Screen’ at this point you can either waste 5 minutes reading it or just click next
  • This will then bring up a list of the images that you have and there architecture, DO NOT SELECT an x64 image if you have booted using the x86 Windows PE image
  • Chose the correct image that you are required to build
  • This will then go through the copying and expanding files, routine and then reboot
  • After the reboot it will show the setup screen as there are a maximum of three pieces of information that are required.
  • If you have not already, name the system using the ‘autherise and name’ system of WDS then you will be asked for the system name. Enter this information and click next.
  • The next page asks for the computer name and the Administrator password (for the local account), enter this accordingly and then click next
  • This will bring up the date and time settings, hopefully this should have been picked up by the Windows PE environment and passed over, so you will need to check and then click next
  • This will then go configuring the network progress bar and then open the ‘Networking Settings’ dialogue
  • At this point you can either leave it in typical mode, to configure later or configure this now, we know that the settings so we can go through this now, click on the custom settings radial button then click next
  • This page will bring up the network adaptors settings page,
  • Make sure you are configuring the right one (it tells you at the top of the dialogue page)
  • Set the adapter up with all the information that has come as part of the build spec then click next
  • This will then ask you if you would like to add the computer to a specific domain or workgroup
  • Set the domain information as per the build spec for the server that you are building, click next
  • This will then finalise the installation (as it would for windows 2003) with all the start menu data and removal of temp data,
  • The PC/Server will now reboot and log in automatically as the Administrator and do the post install tasks as per the script and then reboot.
  • The last piece to do is a quick maintainance check to prepare for the application assignment/installations.
  • Do a final reboot to change the boot order to the correct settings (if changed)

As you can see there are only three steps left although this can be scripted away further by using naming conventions and domain location awareness scripts (overly complication to an already complicated system). You can get round the naming and domain settings using pre-naming when autherising for deployment in WDS.

Deploying Windows Longhorn with a script

As with the deployment of XP based systems deploying Longhorn based systems is basically the same but with a little quicker response times. To success fully deploy Longhorn with a script you will need to

  • Boot to PXE as per the norm
  • When the PXE boot screen appears chose the deployment option for the architecture that you wish to deploy
  • This will then bring up the standard Windows PE loading screen (again just like installing any of the Longhorn code based systems from the DVD)
  • It should then show you the locale settings screen, set your language and click next
  • This will then ask you to log on with the domain account settings, log on using ‘domain\user’ and then enter your password before clicking next
  • This will bring you to the ‘Welcome Screen’ at this point you can either waste 5 minutes reading it or just click next
  • This will then bring up a list of the images that you have and there architecture, DO NOT SELECT an x64 image if you have booted using the x86 Windows PE image
  • Chose the correct image that you are required to build
  • This will then go through the copying and expanding files, routine and then reboot
  • After the reboot it will show the setup screen as there are a maximum of three pieces of information that are required.
  • If you have not already name the system using the ‘authorise and name’ system of WDS then you will be asked for the system name. Enter this information and click next.
  • The next page asks for the computer name and the Administrator password (for the local account), enter this accordingly and then click next
  • This will bring up the date and time settings, hopefully this should have been picked up by the Windows PE environment and passed over, so you will need to check and then click next
  • This will then go configuring the network progress bar and then open the ‘Networking Settings’ dialogue
  • At this point you can either leave it in typical mode, to configure later or configure this now, we know that the settings so we can go through this now, click on the custom settings radial button then click next
  • This page will bring up the network adaptors settings page,
  • Make sure you are configuring the right one (it tells you at the top of the dialogue page)
  • Set the adapter up with all the information that has come as part of the build spec then click next
  • This will then ask you if you would like to add the computer to a specific domain or workgroup
  • Set the domain information as per the build spec for the server that you are building, click next
  • This will then bring up the computers location with three options, as this computer will be connected to a domain, you will need to select ‘work’ as the location and then click next,
  • This will then finalise the installation (as it would for windows 2003) with all the start menu data and removal of temp data,
  • The PC/Server will now reboot and log in automatically as the Administrator and do the post install tasks as per the script and then reboot.
  • The last piece to do is a quick maintenance check to prepare for the application assignment/installations.
  • Do a final reboot to change the boot order to the correct settings (if changed)

As you can see from the images the process is the same but you have to set the new awareness screen unless the networking has been pre-allocated in the Windows Deployment Server.

Conclusion

Hopefully you are still awake and with me its been a long slog to get to this point, in the next post I am going to go over the scripting of install’s for Windows based servers, this is where it gets a little more interesting although it will be another long post (sorry about that) but if you stick with me you will find that once you have gone through the three posts you will be able to build and deploy your machines in a uniform manner overtime, only you can now build 10 machines at the same time whilst you go grab a coffee or hide in the machine room (my favourite place to hide). following on the windows build scripts I will go into more detail about how you can go about scripting application installs to add them to your build image or basically run them from a bat file or integrate them into SCCM or other application deployment system, as well as being able to install the applications without interrupting the user (unless its an upgrade don’t do silent updates for upgrades).

Further to this I can see I was on the right track 7 years ago when I wrote this and although it does need upgrading and updating the core information as learning tool is in this document and should give you a good foundation in WDS.