Showing posts with label OSD. Show all posts
Showing posts with label OSD. Show all posts

Tuesday, 25 October 2016

SCCM 2012 R2 error generated as Client Push tries to install SCCM Client onto a Hyper-V Cluster Object

SCCM 2012 R2 error "Client Configuration Manager failed to complete the ConfigMgr installation on client "HVCLUST01". In the past 168 hours, CCM has made 175 unsuccessful attempts. The operating system reported error 53: The network path was not found. This was failing because SCCM was trying to push the client to a Failover Cluster object for a Hyper-V Cluster. This is just a computer account that represents the logical cluster in Active Directory. However it was being discovered as a new computer during an SCCM discovery. 

The error was not causing any negative problems it was just causing red flags to be logged, which nobody likes.


The fix was to put the Hyper-V Cluster objects host name into the excludes servers list in the Registry of the SCCM server for that particular site. Browse to Local Machine\Software\Microsoft\SMS\Components\SMS_Discovery_Data_Manager and open the Registry key "ExcludeServers"



Monday, 24 October 2016

SCCM 2012 R2 "Configuration Manager did not find a site to manage this client." on Windows 8.1 client

After troubleshooting some problems with deployment of the SCCM Client to Windows 7, 8.1 and 10 devices, the manual installation worked however when your try to connect the client to a site it fails with "Configuration Manager did not find a site to manage this client." In this environment the SCCM infrastructure had been rebuilt twice previously, as this was a test setup to simulate a real deployment of SCCM 2012 R2.


The problem was caused by two things, the first is that I had not get the default Site for the Boundary Group the problematic client was in. To check or resolve this click Administration/Hierarchy Configuration/Boundary Groups. Right click on the Boundary Group and select Properties. 


Click the Reference tab, click the option Use this boundary group for site assignment, select the correct site from the drop down. Then click the Add button and select the corresponding site server.


This only corrected some of the problems, newly built clients that had not had any visibility of the old installation of SCCM were fine, they could resolve the Site Code without problem. However old clients that were previously managed by the old SCCM installation still failed. This was because the old installation of SCCM was configured to deploy the client via GPO's. In the GPO's the Site Code had been statically configured, this is a setting that is tattooed onto the client machines Registry. Even after the GPO was removed from the computer the SMS Site Code is still in the registry, in my example this Site Code no longer exists, hence it causes the problem. To resolve this open the Registry on the problematic installation and browse to Local Machine\Software\Microsoft\SMS\Mobile Client

Inside this folder there was an entry "GPRequestedSiteAssignmentCode", in this instance this was set to the old Site Code. I deleted the entire entry and it resolved the problem.


Sunday, 27 July 2014

Integrating ConfigMgr 2012 R2 and the Microsoft Deployment Toolkit (MDT)

On your Configuration Manager 2012 R2 server install the Microsoft Deployment Toolkit (MDT) 2013. Once MDT installed you will notice a new icon Configure ConfigMgr Integration.

 
Ensure Install MDT extensions for Configuration Manager is selected. Click Next.
Click Finish.
 
Now if you return to ConfigMgr and browse to Software Library expand Operating Systems and right click on Task Sequences the option to click Create MDT Task Sequence will now have appeared.
 
If you have been looking for a tutorial on how to integrate these products your requirements probably could benefit from the added OSD capabilities.

Wednesday, 23 July 2014

SCCM 2012 R2 "The Create Task Sequence Media Wizard Completed with Errors -2147212243" Refer to CreateTSMedia.log File

You are trying to create a Stand-Alone SCCM 2012 R2 USB Boot drive from one of your Task Sequences. It get all the way to the end and fails with The Create Task Sequence Media Wizard Completed with Errors -2147212243" Refer to CreateTSMedia.log File

 
It turns out in this instance that the Operating System image that was attempting to be compiled into a Stand-Alone USB Drive was approximately 10GB's in size. Having done some research on the Internet it appears to be a known issue for OS images greater than 4.75GB's to fail with The Create Task Sequence Media Wizard Completed with Errors -2147212243" Refer to CreateTSMedia.log File.
I opened up the CreateTSMedia.log file using the CMTrace utility, the log can be found at C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole\AdminUILog.
From the log file there is a number of error relating to the formatting of the USB Drive. The USB Drive was brand new out of the packet, 32GB in size and was formatted in NTFS. I decided to manually format the USB Drive and try again, same result.
 
It transpires that to work around this issue you must use the Command Prompt to manually create an ISO containing all the SCCM components. The ISO file can be larger than 4.75GB's therefore it does not suffer the same issues as the automated wizard.
The following command can be used at an Administrative Command Prompt to generate an ISO file of an entire Task Sequence's components.
cd C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole\bin\i386
 
CreateMedia.exe /K:Full  /P:”sccm_dp_fqdn” /S:”sccm_site_code” /C: /D:”sccm_mgmt_fdqn” /L:”Configuration Manager 2012” /A:”sccm_taskseqID” /Z:”False” /T:”CD” /M:”10240” /F:”C:\New\NewSCCM.iso
 
Change each of the variables in the command above to match the environment.
sccm_dp_fqdn
Configuration Manager Distribution Point FQDN
sccm_site_code
Site Code for the SCCM Site
sccm_mgmt_fqdn
Configuration Manager Management Point FQDN
sccm_taskseqID
The Task Sequence ID
/M:value
Sets the maximum size of the ISO (mine is 10GB’s)
/F:”File Path”
Output path for the ISO file
 
 
To keep an eye on how the ISO being created the CreateTSMedia.log can be used to monitor the progress. It will end with the statement CreateMedia.exe: Success if the ISO has been created successfully.
 
Now instead of using diskpart you can use the Windows 7 USB/DVD Download Tool to create a bootable USB Drive from the ISO file. It will usually fail at 99% reporting it is unable to copy files, in most cases the USB Drive still works correctly.
 
 

Tuesday, 15 July 2014

WDS/MDT Integration (DHCP Option 60,66,67): "PXE-E55: ProxyDHCP Service did not reply to request on port 4011" Client Fails to PXE Boot


You have deployed Windows Deployment Services (WDS) and the Microsoft Deployment Toolkit (MDT) to a new Virtual Machine on your Corporate subnet. You have configured WDS to use the MDT Boot Images to allow for PXE Booting over the Network.
When you try and PXE Boot from a client it timesout and fails with PXE-E55: ProxyDHCP Service did not reply to request on port 4011. I did some investigation around the WDS installation and the Boot Images although it seemed to keep coming back to the DHCP configuration in place.

 
I checked the DHCP Options for the Subnet in which I was working to ensure Option 66 Boot Server Host Name and Option 67 Bootfile Name were configured correctly. Everthing was as expected Option 66 was pointing to the IPv4 Address of the new MDT/WDS Server and 67 was pointing to \Boot\x64\wdsbdp.com (resides in RemoteInstall on the local disk). again as expected.
 
 
After some further research it turns out the Option 60 Class ID can cause issues when PXE Booting. In this instance it was a production environment with some stale configurations. Option 60 was configured with the string "PXEClient". This apparently is telling the DHCP Clients that the target of Option 66 is a PXE Client and not a PXE Server. I edited Option 60 and cleared the field and restarted the DHCP Server.
 
I also restarted WDS and then attemtped to PXE Boot again, it started to work. The gotcha here is that when I tried to remove Option 60 ClassID completely from the Scope Options I did not correct the issue. Therefore Option 60 had to be present with no string in the field.
 

Thursday, 10 July 2014

SCCM 2012 R2 PXE Boot: The details below show the information relating to the PXE boot request for this computer. Please provide these details to your Windows Deployment Services Administrator so that this request can be approved. The Boot Configuration Data for your PC is missing or contains errors. File: \boot\bcd Error Code: 0xc000000f


SCCM 2012 R2 PXE Boot is failing, the target device gets an IP address from DHCP and appears to make a connection although it fails with the error The details below show the information relating to the PXE boot request for this computer. Please provide these details to your Windows Deployment Services Administrator so that this request can be approved.

 
I opened the SMSPXE.log file from the location below, this may vary in your environment.
 
 
The Configuration Manager Trace Log Tool which can be downloaded and installed from here http://www.microsoft.com/en-us/download/details.aspx?id=36213 is an excellent way to read log files.
 
After some research on the following errors I decided to remove the PXE services from the Distribution Point.
 
You will notice from Server Manager than WDS is present on the local server, the following process is going to uninstall WDS.
 
From the Configuration Manager Console click on Administration and Distribution Points, and right click on the local distribution point that is causing issues in the site you are in, and select Properties.
 
 
From the Properties page, click on the PXE tab, and untick the box Enable PXE support for clients. The following warning will be displayed PXE and Multicast are no longer enabled on this distribution point. Do you want Configuration Manager to remove Windows Deployment Services from this distribution point? in this instance click Yes.
 
Allow a few minutes and check back in Server Manager you will notice WDS is no longer installed.


In this deployment of SCCM the boot images were generally untidy so I decided to remove them all by right clicking on them individually and selecting Delete.

 
Accept the warning message about removing the boot images.
 
Now the Boot Images pane shows No Items found.

The next stage is to rename (or delete but as this is a production system I prefer to rename) the RemoteInstall folder that can be found on the SCCM installation partition.


Navigate back to the Properties of the Distribution Point and renable PXE support for clients by ticking the box, SCCM will display the following warning about configuring UDP ports for your DHCP scope options. None of this has been changed so we can click Yes.
 
 
Ensure Allow this distribution point to respond to incoming PXE requests, Enable unknown computer support and Require a password when computer use PXE are all ticked. Remember to set a password that will be displayed after a client does the inital PXE boot.
This particular SCCM server has multiple Network Adapters, therefore I elected to click Respond to PXE requests on specific network interfaces, this is done by specifying the MAC Address of the interface you want clients to PXE to.
 
The getmac command can be used from Command Prompt to display all the physical addresses available to the server.
 

The next stage is now to import the boot images into the SCCM again, distribute the content, reconnect them with Task Sequences and attempt to PXE boot again. On completion of doing this the client sucessfully PXE booted. The initial error The details below show the information relating to the PXE boot request for this computer. Please provide these details to your Windows Deployment Services Administrator so that this request can be approved was resolved.
Now it appears there is corruption in the boot images themselves, after the client is PXE booted using F12, it displays the following error The Boot Configuration Data for your PC is missing or contains errors. File: \boot\bcd Error Code: 0xc000000f and the device reboots itself.
 
 
The first task was to delete all of the old Boot Images again from SCCM, to clear out any legacy issues. The second is to regenerate the images from scratch.
To regenerate the images open an Administrative - Deployment and Imaging Tools Environment from the SCCM server, this is installed as part of the ADK - Deployment Tools. Use the following commands to generate each of the new boot images, please note that both the architectures are required for this to work.
Copype.cmd amd64 C:\WinPE\x64
Copype.cmd x86 C:\WinPE\x86
 
These commands generates a WIM file in C:\WinPE\%architecture%\media\sources, these WIM files must be imported into SCCM. As SCCM only supports UNC paths for images imports share the C:\WinPE folder, giving Full Control Share Permissions and Read & execute, List folder contents and Read to the Authenticated Users principal on the NTFS/Security tab.
Open the Configuration Manager console and navigate to Software Library and then Boot Images. Click the Add Boot Image icon from the ribbon.
 
In the Path field, enter the full UNC path to the newly generated WIM file. This must be done twice, once for both x86 and x64. The Boot Image field should be set to 1 - Microsoft Windows PE (x64) click Next.
 
Name the image accordingly.

 
The repeat this process for both architectures and they should appear in the list of boot images.
 
When PXE was disabled and renamed at the beginning of this guide, the RemoteInstall folder was recreated. This was why the original RemoteInstall folder was renamed at the beginning. You will notice it is emtpy at present.
 
If this folder remains empty you will receive the following error The specified file was not found. TFTP Error - File Note Found this is because the DHCP server on the network is configured to point to this directory.
 
If you check the configuration of the DHCP server, under Scope Options you will see Option 67 Bootfile Name is configured as SMSBoot\x64\wdsnbp.com and are we know this folder is empty. Please note this can be changed to SMSBoot\x86\wdsnbp.com if required. Although the x86 folder must be populated also.
 
In SCCM 2012 you can populate these folders by right clicking and selecting Properties from the Boot Image repository. Click on the Data Source tab, and tick the Deploy this boot image from the PXE-enabled distribution point.


Ensure you do this for both x86 and x64, and click the Update Distribution Points from the ribbon.

 
This will populate the RemoteInstall\SMSBoot folder for the particular architecture.
 
Check back and you will notice the folder has been populated with the required files, notice wdsnbp.com is present which is the exact file DHCP option 67 is configured to point to.
 
Because all of the original boot images have since been deleted, but the orignal Task Sequences have not we now need to go back and retrospectively reconnect each Task Sequence with a valid boot image.
From the Configuration Manager console, browse to Software Library\Task Sequences and right click on a valid Task Sequence and select Properties.
 
From the Properties page click Advanced and ensure Use a boot image: is ticked. The Browse button can be used to browse the available boot images. Select the correct architecture and click OK.
 
 
Click OK and Distribution Content once again.
Attempt to PXE boot, and now it works!