Aaron’s Review
During the testing of the first task sequence intended for use with new computers / bare metal, there are a few items that Aaron noticed. Aaron has identified several opportunities to correct problems, and has made note of the main appearance for the problem and detailed corrective actions he will take to address the issues with the next round of testing.
Lessons Learned
Computer Naming
Problems Discovered
Corrective Actions
Software Updates
Problems Discovered
Corrective Actions
No Checks for Pre-Existing Operating System
Problems Discovered
Corrective Actions
Deployed Systems are not localized
Problems Discovered
Corrective Actions
Some Hardware Devices in Systems Non-Functional
Problems Discovered
Corrective Actions
Computer Naming
Aaron needs new devices deployed on the FourthCoffee enterprise network to conform to certain naming standards.
Problems Discovered
Computers ended with a random Computer name such asMININT-QLIEOAL and have been joined to the domain in Computers Container in FourthCoffee’s Active Directory.
Figure 1: FourthCoffee Active Directory Depicting MININT Computers
If Computers which are not known to the Configuration Manager infrastructure are installed they will end up with a random generated computer name.
Figure 2: Randomly Generated Computer Name
If the task sequence is interrupted for any reason in the Windows PE phase, an “Unknown” record for the computer is created and the computer appears in the All Systems collection.
Figure 3: Unknown Computer Object In Configuration Manager
Corrective Actions
Aaron plans to use an empty variable named OSDComputername to prompt for a Computername. Aaron will set the variable on the All Unknown Computers collection, so that all new computers / bare metal systems that run the task sequence first prompt for a value for the variable. This ensures that all new systems get a computer name that matches the FourthCoffee computer naming standards.
Figure 4: Prompting for Variable Value
While this article refers to Configuration Manager 2007, Aaron found that the technique is till valie in Configuration Manager 2012. How to use a collection variable to prompt for a computer name during an OS Deployment Task Sequence in System Center Configuration Manager
Software Updates
All systems deployed by Configuration Manager at FourthCoffee must have the latest software updates installed.
Problems Discovered
Even though Aaron *DID* specify Install all software updates when he created the new computers task sequence, no updates were being installed on new devices.
Corrective Actions
Aaron started by reviewing Software Updates in Configuration Manager. Aaron must deploy a software updates package containing all anticipated updates to the All Unknown Computers collection. Unknown devices installing an operating system will only see the software updates deployment targeted to the All Unknown Computers collection. If there is no software updates deployment, then the Install Updates task sequence step conducts no action on devices during the task sequence.
No Checks for Pre-Existing Operating System
The “new computer” task sequence Aaron created could be used on existing Configuration Manager clients. If the task sequence accidently runs on an existing client no user data is captured AND the computer hard drives are formatted, user data loss will occur. This is unacceptable for FourthCoffee.
Problems Discovered
The new computer / bare metal task sequence does not check to determine if the task sequence is being started from an existing Configuration Manager client. If run from an existing Configuration Manager client, there is likely to be user data present. FourthCoffee needs to be able to preserve user data if it is present on systems where operating system deployment will occur.
Corrective Actions
For a task sequence that will be used ONLY on new computer hardware, where no existing user data is found, a new group can be inserted into the beginning task sequence that will contain all other groups and steps. Place a check on the options of the group to determine if it is running Windows PE before allowing any task sequence steps to execute. This will prevent the task sequence from starting if run from an existing Configuration Manager client.
Figure 5: Check to For Bare Metal in Task Sequence
In addition to this check, Aaron will also ensure this “New Computer” task sequence will also be deployed and available to Only media and PXE:
Figure 6: Setting Deployment Availability Option
For those devices which already have an operating system, and user data, Aaron will plan to use Check Readiness and User State Migration Tool. During his research Aaron discovers an article how to migrate user data from Windows XP to Windows 8.1.
Deployed Systems are not localized
FourthCoffee has users in several regions around the world, each with their own localization requirements.
Problems Discovered
After the first testing with the “New Computer”, none of the new operating systems contain proper localization.
Corrective Actions
At FourthCoffee, localization and group policy work together to shape the end-user experience. Aaron has added the Dynamic Variables task sequence step to the “New Computer” task sequence in order to control in which Active Directory domain Organizational Unit (OU) the computer will be placed, based on its current physical location. This approach and combination of features will allow Aaron to specify the domain OU automatically when a new computer account is added to the FourthCoffee domain. If the task sequence variable OSDDomainOUName contains a value, it is used to add the computer account to the domain. Populating OSDDomainOUName with a value prior to the Apply steps in the task sequence (such as Apply Operating System, Apply Windows Settings, or Apply Network Settings) will allow the variable to be used as Aaron intends.
Figure 7: Set Dynamic Variables Using Computer Location to Set Variable Value
Aaron discovers something else useful about the Set Dynamic Variables task sequence step as well: it populates some read-only variables which could be useful.
_SMSTSMake / Microsoft Corporation_SMSTSModel / Surface Pro 2
_SMSTSMacAddresses / 00:15:5D:00:00:00
_SMSTSIPAddresses / 192.168.4.13,fe80::1954:9063:985:db59
_SMSTSSerialNumber / 2746-6653-7669-7221-8220-9580-02
_SMSTSAssetTag / 2746-6653-7669-7221-8220-9580-02
_SMSTSUUID / 9DF445B7-3C25-4848-82B5-2D9019280710
Figure 8: Read-Only Variables Populated with Set Dynamic Variables Step
Some Hardware Devices in Systems Non-Functional
Apply Device Drivers did not install all devices on Aaron’s test clients. Tests using Apply Driver Package instead had a higher success rate.
Problems Discovered
After the new computer task sequence completes, some hardware devices attached to the system are non-functional.
Figure 9: Device Manager Showing Device Drivers Missing
Corrective Actions
Usage of Apply Driver Package instead of Apply Device Drivers and filter them based on Make and Model. These attributes are populated by the Set Dynamic Variables task sequence step Aaron is already using.
Other devices such as video adapters will be installed as Applications or Packages.
Figure 10: Apply Driver Package in Task Sequence
Figure 11: Condition to Satisfy to Apply Driver Package