问题
I have my LocalConfigurationManager set up as follows:
[DSCLocalConfigurationManager()]
Configuration LCMConfig
{
Node localhost
{
Settings
{
RebootNodeIfNeeded = $true
ActionAfterReboot = 'ContinueConfiguration'
AllowModuleOverwrite = $true
DebugMode = 'All'
}
}
}
LCMConfig
Set-DscLocalConfigurationManager -Path .\LCMConfig -Verbose -Force
Then I kick off a DSC Configuration via
Start-DscConfiguration -Path .\RDS -Verbose -Wait
This configuration sets up an RemoteApp server which involves a whole bunch of steps and several reboots. One of those reboots is happening in a loop over and over again. When the reboot happens, I can get into the system long enough to run a quick command or two before DSC restarts the system again. How can I tell what specific Resource in the Configuration that DSC is getting hung up on.
If I run
Remove-DSCConfiguration -Stage Pending,Current,Previous
the reboots stop...but then I seem to lose all information on where the problem is happening.
I can capture the output of Get-DSCConfiguration, but I can't make sense enough of the output to tell where the reboot loop is happening.
How can I further debug this?
回答1:
There are many ways to troubleshoot this issue:
Set
RebootNodeIfNeeded
to true andActionAfterReboot
toStopConfiguration
. This way when the machine is up after reboot DSC won't automatically apply the configuration. Then you can, from powershell console, run:Start-DscConfiguration -UseExisting -wait -verbose
to capture the verbose messages. The last resource that gets executed is the one that requested the reboot.Run
Get-DscConfigurationStatus
cmdlet to get the status of the last configuration run. This cmdlet will fail if something else is already running in DSC. It will give you list of resources that are in desired state and not in desired state. It will also give JobId for the operation. Search for%windir%\system32\Configuration\ConfigurationStatus\{JobId}*.json
. This json file contains the verbose messages for the configuration run. This will run only with WMF 5.0 RTM.Get xDSCDiagnostics module and use the info from this blog to troubleshoot. https://blogs.msdn.microsoft.com/powershell/2014/02/11/dsc-diagnostics-module-analyze-dsc-logs-instantly-now/
来源:https://stackoverflow.com/questions/36535306/dsc-configuration-keeps-restarting