The current version (as of 5/11/2016) of the Dell Server Deployment Pack (DSDP) is 3.0 will install into ConfigMgr 1511 and 1602, and might let you import and create driver packages. But, as of right now (5/11/2016), we still cannot import the Dell ToolKit (DTK) to allow the rest of the Dell scripts to work and to create boot images. The current version of DTK is 5.3.
This is because ConfigMgr 1511+ requires ADK 10; and DTK is not yet compatible with ADK10.
From what I have been told, around the release time of Windows 2016 we should have OpenManage 8.4, which will include DTK 5.4 which will support ADK 10.
This is my attempt to post things that I have encountered, found little or incomplete information for, and hope to be able to help others with. Topics will be Information Technology centric with most dealing with Microsoft System Center. The concept of a jumpbag is to contain all the things you need to survive most situations.
Showing posts with label dtk. Show all posts
Showing posts with label dtk. Show all posts
Wednesday, May 11, 2016
Monday, June 15, 2015
Dell ToolKit 5.1 with DSDP Set RAID envout issue
If you are using the Dell Server Deployment Pack with the Dell ToolKit (DTK) 5.1, you may see an error when trying to use the Set RAID function in an OSD task sequence.
Look in the SMSTS.log and find the section where raidcfg.exe is being called. Near the end you may see errors saying "File is not writeable!" or "Could not find the raid output file you specified (envout.txt). Please check the path."
This turned out to be a permissions problem in DTK 5.1.0.1518 and possibly back in DTK 4.4 also. This issue has been resolved and a new version of DTK 5.1.0.1658 A01 was released today (6/15/2015). http://www.dell.com/support/home/us/en/04/Drivers/DriversDetails?driverId=2JC3P
1. Download the latest version of DTK at the link above. Then in ConfigMgr, go to Software Library\Application Management\Packages and right click on Dell PowerEdge Deployment. Select Dell PowerEdge Server Deployment -> Launch Deployment Toolkit Configuration Wizard.
When the wizard opens, point the zip location to the DTK zip you just downloaded. If you already had the previous version of DTK 5.1 installed, the bottom part of the wizard will look the same on both sides. They will both show Version 5.1. Don't worry, it will update.
On the next screen you can select your previous boot image that you were using or let it create a new one from the Windows ADK. Let this run to completion and you will have a new boot image with all the necessary drivers to boot the last couple of generations of Dell servers.
2. Next, you will need to update the 3 PowerEdge packages. PowerEdge Custom Reboot Script, Deployment Toolkit Integration, and Startup Network Setting. If you had already distributed them to your distribution point, just right click on them and select Update Distribution Points and then make sure the Content Status at the bottom turns green and has the current date and time. This may take a couple minutes depending on your environment.
3. Once all 3 of those are updated, do one last check. Look at the PackageID of the PowerEdge Deployment Toolkit Integration package. Go to the path of where your distribution share packages are (Drive:\SMSPKGDrive$\) and find the folder with that PackageID and open it. Find the Version.txt file and open that. It should tell you Build 1658 which confirms that you have updated DTK and distributed it successfully.
4. And the last thing that needs to be done is to make sure your new boot image is the one that your task sequence uses and the target machine boots to. I have instructions on how to do all of that in the following post. Look down where it says "1. Boot Image". http://bradsjumpbag.blogspot.com/2015/04/how-to-import-server-driver-packages.html
Now you should be able to run your OSD task sequence and have the Set RAID step work correctly.
Look in the SMSTS.log and find the section where raidcfg.exe is being called. Near the end you may see errors saying "File is not writeable!" or "Could not find the raid output file you specified (envout.txt). Please check the path."
This turned out to be a permissions problem in DTK 5.1.0.1518 and possibly back in DTK 4.4 also. This issue has been resolved and a new version of DTK 5.1.0.1658 A01 was released today (6/15/2015). http://www.dell.com/support/home/us/en/04/Drivers/DriversDetails?driverId=2JC3P
1. Download the latest version of DTK at the link above. Then in ConfigMgr, go to Software Library\Application Management\Packages and right click on Dell PowerEdge Deployment. Select Dell PowerEdge Server Deployment -> Launch Deployment Toolkit Configuration Wizard.
When the wizard opens, point the zip location to the DTK zip you just downloaded. If you already had the previous version of DTK 5.1 installed, the bottom part of the wizard will look the same on both sides. They will both show Version 5.1. Don't worry, it will update.
On the next screen you can select your previous boot image that you were using or let it create a new one from the Windows ADK. Let this run to completion and you will have a new boot image with all the necessary drivers to boot the last couple of generations of Dell servers.
2. Next, you will need to update the 3 PowerEdge packages. PowerEdge Custom Reboot Script, Deployment Toolkit Integration, and Startup Network Setting. If you had already distributed them to your distribution point, just right click on them and select Update Distribution Points and then make sure the Content Status at the bottom turns green and has the current date and time. This may take a couple minutes depending on your environment.
3. Once all 3 of those are updated, do one last check. Look at the PackageID of the PowerEdge Deployment Toolkit Integration package. Go to the path of where your distribution share packages are (Drive:\SMSPKGDrive$\) and find the folder with that PackageID and open it. Find the Version.txt file and open that. It should tell you Build 1658 which confirms that you have updated DTK and distributed it successfully.
4. And the last thing that needs to be done is to make sure your new boot image is the one that your task sequence uses and the target machine boots to. I have instructions on how to do all of that in the following post. Look down where it says "1. Boot Image". http://bradsjumpbag.blogspot.com/2015/04/how-to-import-server-driver-packages.html
Now you should be able to run your OSD task sequence and have the Set RAID step work correctly.
Friday, June 5, 2015
Set RAID Config not working with Dell Server Deployment Pack
Dell Server Deployment Pack 3.0 with Dell Toolkit 5.1 will have problems running the set RAIDcfg command. We found that there was a security permissions change starting in DTK 5.1 for sure; and possibly as far back as DTK 4.4 because I had the same error there as well.
The permissions change created a situation where the envout.txt file could not be created by the script in the downloaded package folder. The default location is "X:\Windows\Temp\SMSTSLog\PackageID\Tools\AMD64".
You would see an error in the SMSTS.log saying "File is not writable!" in the "Output from command execution" block immediately after the "Starting execution of ArrayBuilder script" block. Then in the "StdOut output from the command:" block you will see "EXITCODE=204", which means the same thing "File is not writable". Then just a little further down you will see something like this:
##########################################
##########################################
###
### CRITICAL ERROR
###
##########################################
##########################################
ERROR CODE: 1
DESCRIPTION: Could not find the raid output file you specified (envout.txt). Please check the path.
SEVERITY: 3
##########################################
##########################################
###
### CRITICAL ERROR
###
##########################################
##########################################
As a work-around, you could create a new script to make an empty envout.txt in the AMD64 folder. Attach that script to your task sequence to run before the Set RAID step.
The resolution to this will be in a new version of DTK that will hopefully be out in the next week or two (from June 5, 2015).
And please remember that anytime you update DTK in ConfigMgr, you will need to re-distribute the Application Management\Packages\Dell PowerEdge Deployment\PowerEdge Deployment Toolkit Integration package in ConfigMgr.
The permissions change created a situation where the envout.txt file could not be created by the script in the downloaded package folder. The default location is "X:\Windows\Temp\SMSTSLog\PackageID\Tools\AMD64".
You would see an error in the SMSTS.log saying "File is not writable!" in the "Output from command execution" block immediately after the "Starting execution of ArrayBuilder script" block. Then in the "StdOut output from the command:" block you will see "EXITCODE=204", which means the same thing "File is not writable". Then just a little further down you will see something like this:
##########################################
##########################################
###
### CRITICAL ERROR
###
##########################################
##########################################
ERROR CODE: 1
DESCRIPTION: Could not find the raid output file you specified (envout.txt). Please check the path.
SEVERITY: 3
##########################################
##########################################
###
### CRITICAL ERROR
###
##########################################
##########################################
As a work-around, you could create a new script to make an empty envout.txt in the AMD64 folder. Attach that script to your task sequence to run before the Set RAID step.
The resolution to this will be in a new version of DTK that will hopefully be out in the next week or two (from June 5, 2015).
And please remember that anytime you update DTK in ConfigMgr, you will need to re-distribute the Application Management\Packages\Dell PowerEdge Deployment\PowerEdge Deployment Toolkit Integration package in ConfigMgr.
Labels:
#iwork4dell,
Dell,
dsdp,
dtk,
envout,
exitcode=204,
Raid
Wednesday, August 20, 2014
How to Get ConfigMgr to Configure RAID Array on Dell PERC during OSD
Depending on which PERC you have (I was using a PowerEdge R720 with a PERC H710P), the DSDP and DTK may not inject the most appropriate driver for the "Set RAID Config" step to actually configure the controller during OSD.
*************
Edit 8/26/2014: This has been found to possibly be an issue with up-level ConfigMgr and down-level OS. Below is the work-around for an issue described here: http://bradsjumpbag.blogspot.com/2014/08/failed-to-insert-osd-binaries-into-wim.html
*************
Here are the steps needed to get this working until the correct driver is injected automatically. As of this post, the DTK and DSDP are only injecting the percsas3 driver and not the percsas2 driver.
A high level overview of this process: Get the boot image and inject the needed drivers using dism, re-import the boot image into ConfigMgr and make it usable again.
1. Right click on the boot image you are using in ConfigMgr and go to Properties. On the Data Source tab you can see the Image Path. Go to that location where the image is stored. It should be similar to "\\SCCMServer\SMS_Site\OSD\Lib\BootImages\Dell\PowerEdge\x64\bootxxxx.wim".
Copy that wim file and paste it in the following step.
2. You will need a server running the same version of Dism as the version of the boot wim. For example, if the boot wim is OS Version 6.3.9600.16384, you will need to copy the wim from #1 above to a server running Server 2012 R2 (you can see the OS Version column in Boot Images in ConfigMgr). Paste that wim file to that server. I just put mine in the root of C:\.
3. From a workstation without a PERC, go to www.dell.com/support. You can either enter your service tag or click on "Servers, Storage & Networking"/PowerEdge/Model. Then click on Drivers & Downloads. Select your operating system in the dropdown. Scroll down to and expand SAS RAID. Find and download the Windows driver. For this example I am using the "Microsoft Windows 2012 R2 64 bit driver for Dell PERC H310/H170/H710P/H810/SPERC8 Controllers" located here:
http://www.dell.com/support/home/us/en/19/Drivers/DriversDetails?driverId=0P5XV&fileId=3389791240&osCode=W12R2&productCode=poweredge-r720&languageCode=EN&categoryId=SF
4. This is being done on a workstation without a PERC so that you can extract the drivers without having it actually install. Double click on the executable you just downloaded and click the Install button, but nothing else. The install will fail but do not close it yet. While the failed notice is still on the screen, browse to c:\users\YourLoggedInUser\Appdata\Local\Temp and find the folder that was just created based on time. It will be a GUID. Open that folder and you will find another folder with the drivers. Copy that folder out and put it on your server where the wim was copied to. I put mine in a folder called c:\perc.
So to this point we now have copied our bootxxxx.wim to C:\ on a server running the same OS version as the boot image; copied the needed drivers to C:\perc on the same server.
Next we will mount that image, inject the drivers, and commit the changes.
5. From an elevated PowerShell command windows, make another folder on this server called C:\Mount. Then run the following commands.
This will mount that wim into the C:\Mount folder for editing.
"dism /Mount-wim /WimFile:C:\bootxxxx.wim /Index:1 /MountDir:C:\Mount"
replace bootxxxx.wim with the actual name of your file. WinPE boot images usually only have 1 index so Index should always be 1.
Inject the drivers from C:\perc.
"dism /Image:C:\Mount /Add-Driver /Driver:C:\perc /Recurse"
Make sure all drivers were injected successfully.
Commit changes and unmount the image.
"dism /Unmount-wim /MountDir:C:\Mount /Commit"
If you have any File Explorer windows open to the C:\Mount folder, the commit may fail. Close windows and try again.
6. Now the bootxxxx.wim file should show a modified date and time along with a slightly larger size than before. Move this bootxxxx.wim to your sources folder, or other UNC accessible share path on your ConfigMgr server.
7. In ConfigMgr, right click on the Boot Images node and select "Dell PowerEdge Server Deployment\Create Dell Server Boot Image". Mark the radial button for "Use a custom boot image" and enter the path to that new bootxxxx.wim. The Boot Image should only show the first Index. Press Next and give a name, version, and any comments for the new boot image we are creating. Continue through the wizard and after a little processing time you should have a new boot image listed in ConfigMgr.
8. Open the properties of this new boot image. On the Customization tab, make sure "Enable command support" is checked. On the Data Source tab, mark "Deploy this boot image from the PXE-enabled distribution point". On the Data Access tab, mark "Copy the content in this package to a package share on distribution points". Press Ok.
9. Right click on the new boot image and Distribute Content. Distribute to any and all DPs that you will be used for OSD. refresh and check the status to make sure it succeeds. You can also look at the Image ID on that boot image and then on each DP look in the SMSPKGDrive$ folder for that Image ID and make sure the bootxxxx.wim is there.
10. Go to your Task Sequences. Right click on the TS you want to use and go to Properties, not Edit. On the Advanced tab you can update the box for "Use a boot image" to this new image. Press Ok.
11. Now go boot your server that you are trying to deploy to. I like to go into the controller (CTRL+R) when possible and clear the config. Then reboot to PXE and now the "Set RAID config" step should be able to access your PERC and try to configure it.
Press F8 during the task sequence so that you can stop it from rebooting just in case it doesn't work. From here you open cmtrace and check out the SMSTS.log or run diskpart and type "list disk". If "list disk" shows the drives now, it is working. If not, open X:\Windows\Temp\Smsts\SMSTS.log to find the next error.
*************
Edit 8/26/2014: This has been found to possibly be an issue with up-level ConfigMgr and down-level OS. Below is the work-around for an issue described here: http://bradsjumpbag.blogspot.com/2014/08/failed-to-insert-osd-binaries-into-wim.html
*************
Here are the steps needed to get this working until the correct driver is injected automatically. As of this post, the DTK and DSDP are only injecting the percsas3 driver and not the percsas2 driver.
A high level overview of this process: Get the boot image and inject the needed drivers using dism, re-import the boot image into ConfigMgr and make it usable again.
1. Right click on the boot image you are using in ConfigMgr and go to Properties. On the Data Source tab you can see the Image Path. Go to that location where the image is stored. It should be similar to "\\SCCMServer\SMS_Site\OSD\Lib\BootImages\Dell\PowerEdge\x64\bootxxxx.wim".
Copy that wim file and paste it in the following step.
2. You will need a server running the same version of Dism as the version of the boot wim. For example, if the boot wim is OS Version 6.3.9600.16384, you will need to copy the wim from #1 above to a server running Server 2012 R2 (you can see the OS Version column in Boot Images in ConfigMgr). Paste that wim file to that server. I just put mine in the root of C:\.
3. From a workstation without a PERC, go to www.dell.com/support. You can either enter your service tag or click on "Servers, Storage & Networking"/PowerEdge/Model. Then click on Drivers & Downloads. Select your operating system in the dropdown. Scroll down to and expand SAS RAID. Find and download the Windows driver. For this example I am using the "Microsoft Windows 2012 R2 64 bit driver for Dell PERC H310/H170/H710P/H810/SPERC8 Controllers" located here:
http://www.dell.com/support/home/us/en/19/Drivers/DriversDetails?driverId=0P5XV&fileId=3389791240&osCode=W12R2&productCode=poweredge-r720&languageCode=EN&categoryId=SF
4. This is being done on a workstation without a PERC so that you can extract the drivers without having it actually install. Double click on the executable you just downloaded and click the Install button, but nothing else. The install will fail but do not close it yet. While the failed notice is still on the screen, browse to c:\users\YourLoggedInUser\Appdata\Local\Temp and find the folder that was just created based on time. It will be a GUID. Open that folder and you will find another folder with the drivers. Copy that folder out and put it on your server where the wim was copied to. I put mine in a folder called c:\perc.
So to this point we now have copied our bootxxxx.wim to C:\ on a server running the same OS version as the boot image; copied the needed drivers to C:\perc on the same server.
Next we will mount that image, inject the drivers, and commit the changes.
5. From an elevated PowerShell command windows, make another folder on this server called C:\Mount. Then run the following commands.
This will mount that wim into the C:\Mount folder for editing.
"dism /Mount-wim /WimFile:C:\bootxxxx.wim /Index:1 /MountDir:C:\Mount"
replace bootxxxx.wim with the actual name of your file. WinPE boot images usually only have 1 index so Index should always be 1.
Inject the drivers from C:\perc.
"dism /Image:C:\Mount /Add-Driver /Driver:C:\perc /Recurse"
Make sure all drivers were injected successfully.
Commit changes and unmount the image.
"dism /Unmount-wim /MountDir:C:\Mount /Commit"
If you have any File Explorer windows open to the C:\Mount folder, the commit may fail. Close windows and try again.
6. Now the bootxxxx.wim file should show a modified date and time along with a slightly larger size than before. Move this bootxxxx.wim to your sources folder, or other UNC accessible share path on your ConfigMgr server.
7. In ConfigMgr, right click on the Boot Images node and select "Dell PowerEdge Server Deployment\Create Dell Server Boot Image". Mark the radial button for "Use a custom boot image" and enter the path to that new bootxxxx.wim. The Boot Image should only show the first Index. Press Next and give a name, version, and any comments for the new boot image we are creating. Continue through the wizard and after a little processing time you should have a new boot image listed in ConfigMgr.
8. Open the properties of this new boot image. On the Customization tab, make sure "Enable command support" is checked. On the Data Source tab, mark "Deploy this boot image from the PXE-enabled distribution point". On the Data Access tab, mark "Copy the content in this package to a package share on distribution points". Press Ok.
9. Right click on the new boot image and Distribute Content. Distribute to any and all DPs that you will be used for OSD. refresh and check the status to make sure it succeeds. You can also look at the Image ID on that boot image and then on each DP look in the SMSPKGDrive$ folder for that Image ID and make sure the bootxxxx.wim is there.
10. Go to your Task Sequences. Right click on the TS you want to use and go to Properties, not Edit. On the Advanced tab you can update the box for "Use a boot image" to this new image. Press Ok.
11. Now go boot your server that you are trying to deploy to. I like to go into the controller (CTRL+R) when possible and clear the config. Then reboot to PXE and now the "Set RAID config" step should be able to access your PERC and try to configure it.
Press F8 during the task sequence so that you can stop it from rebooting just in case it doesn't work. From here you open cmtrace and check out the SMSTS.log or run diskpart and type "list disk". If "list disk" shows the drives now, it is working. If not, open X:\Windows\Temp\Smsts\SMSTS.log to find the next error.
Subscribe to:
Posts (Atom)