Řešení potíží se službou Azure Automation State Configuration
Poznámka:
Azure Automation State Configuration bude vyřazena 30. září 2027. Do tohoto data přejděte na Azure Machine Configuration . Další informace najdete v blogovém příspěvku. Služba Azure Machine Configuration kombinuje funkce rozšíření DSC, Azure Automation State Configuration a nejčastěji požadované funkce od zpětné vazby zákazníků. Konfigurace počítače Azure také zahrnuje podporu hybridních počítačů prostřednictvím serverů s podporou Arc.
Upozornění
Azure Automation DSC pro Linux se 30. září 2023 vyřadil z 30. Další informace najdete v oznámení.
Tento článek obsahuje informace o řešení potíží a řešení problémů, ke kterým dochází při kompilaci nebo nasazování konfigurací ve službě Azure Automation State Configuration. Obecné informace o funkci State Configuration najdete v přehledu služby Azure Automation State Configuration.
Diagnostika problému
Pokud se při konfiguraci zobrazí chyba kompilace nebo nasazení, tady je několik kroků, které vám pomůžou problém diagnostikovat.
1. Ujistěte se, že se konfigurace úspěšně zkompiluje na místním počítači.
Azure Automation State Configuration je založená na konfiguraci požadovaného stavu PowerShellu (DSC). Dokumentaci k jazyku DSC a syntaxi najdete v dokumentaci k PowerShellu DSC.
Kompilací konfigurace DSC na místním počítači můžete zjišťovat a řešit běžné chyby, například:
- Chybějící moduly
- Chyby syntaxe.
- Chyby logiky
2. Zobrazení protokolů DSC na vašem uzlu
Pokud se konfigurace úspěšně zkompiluje, ale při použití na uzel selže, najdete podrobné informace v protokolech DSC. Informace o tom, kde tyto protokoly najít, najdete v tématu Kde jsou protokoly událostí DSC.
Modul xDscDiagnostics vám může pomoct při analýze podrobných informací z protokolů DSC. Pokud se obrátíte na podporu, vyžadují tyto protokoly k diagnostice vašeho problému.
Modul xDscDiagnostics
můžete nainstalovat na místní počítač podle pokynů v části Instalace stabilního modulu verze.
Pokud chcete modul nainstalovat xDscDiagnostics
na počítač Azure, použijte Invoke-AzVMRunCommand. Pomocí postupu v powershellových skriptech na virtuálním počítači s Windows pomocí příkazu Spustit můžete také použít možnost Spustit příkaz na webu Azure Portal.
Informace o použití xDscDiagnostics naleznete v tématu Použití xDscDiagnostics k analýze protokolů DSC. Viz také rutiny xDscDiagnostics.
3. Ujistěte se, že uzly a pracovní prostor Automation mají požadované moduly.
DSC závisí na modulech nainstalovaných na uzlu. Pokud používáte Azure Automation State Configuration, naimportujte všechny požadované moduly do svého účtu Automation podle kroků v části Import Modules. Konfigurace můžou mít také závislost na konkrétních verzích modulů. Další informace najdete v tématu Řešení potíží s moduly.
Scénář: Konfiguraci se speciálními znaky nejde odstranit z portálu
Problém
Při pokusu o odstranění konfigurace DSC z portálu se zobrazí následující chyba:
An error occurred while deleting the DSC configuration '<name>'. Error-details: The argument
configurationName with the value <name> is not valid. Valid configuration names can contain only
letters, numbers, and underscores. The name must start with a letter. The length of the name must be
between 1 and 64 characters.
Příčina
Tato chyba je dočasný problém. Zkuste to později.
Rozlišení
K odstranění konfigurace použijte rutinu Remove-AzAutomationDscConfiguration .
Scénář: Nepodařilo se zaregistrovat agenta DSC
Problém
Při použití rutiny Set-DscLocalConfigurationManager nebo jiné rutiny DSC se zobrazí chyba.
Registration of the Dsc Agent with the server
https://<location>-agentservice-prod-1.azure-automation.net/accounts/00000000-0000-0000-0000-000000000000
failed. The underlying error is: Failed to register Dsc Agent with AgentId
00000000-0000-0000-0000-000000000000 with the server
https://<location>-agentservice-prod-1.azure-automation.net/accounts/00000000-0000-0000-0000-000000000000/Nodes(AgentId='00000000-0000-0000-0000-000000000000').
+ CategoryInfo : InvalidResult: (root/Microsoft/...gurationManager:String) [], CimException
+ FullyQualifiedErrorId : RegisterDscAgentCommandFailed,Microsoft.PowerShell.DesiredStateConfiguration.Commands.RegisterDscAgentCommand
+ PSComputerName : <computerName>
Příčina
Problém se sítí může způsobit tuto chybu. Zkontrolujte nastavení brány firewall nebo jestli je počítač za proxy serverem.
Rozlišení
Ověřte, že váš počítač má přístup ke správným koncovým bodům pro DSC, a zkuste to znovu. Seznam potřebných portů a adres najdete v tématu Plánování sítě.
Scénář: Zprávy o stavu vrací kód odpovědi Neautorizováno
Problém
Při registraci uzlu ve službě Azure Automation State Configuration se zobrazí jedna z následujících chybových zpráv:
The attempt to send status report to the server https://{your Automation account
URL}/accounts/xxxxxxxxxxxxxxxxxxxxxx/Nodes(AgentId='xxxxxxxxxxxxxxxxxxxxxxxxx')/SendReport returned
unexpected response code Unauthorized.
VM has reported a failure when processing extension 'Microsoft.Powershell.DSC / Registration of the
Dsc Agent with the server failed.
Příčina
Možné příčiny:
Certifikát, jehož platnost vypršela nebo je chybná. Viz Opětovné registrace uzlu.
Konfigurace proxy serveru, která neumožňuje přístup k
*.azure-automation.net
serveru . Další informace naleznete v tématu Konfigurace privátních sítí.Když zakážete místní ověřování ve službě Azure Automation. Viz Zakázání místního ověřování. Pokud ho chcete opravit, přečtěte si téma Opětovné povolení místního ověřování.
Doba klientského počítače je od skutečného času nepřesná. Pomocí následujícího příkazu zkontrolujte čas:
w32tm /stripchart /computer:time.windows.com /samples:6
.
Rozlišení
Pomocí následujícího postupu znovu zaregistrujte uzel DSC, který selhává.
Krok 1: Zrušení registrace uzlu
- Na webu Azure Portal přejděte do účtů> Home>Automation (váš účet Automation) >State Configuration (DSC).
- Vyberte Uzly a vyberte uzel, u které dochází k potížím.
- Pokud chcete zrušit registraci uzlu, vyberte Zrušit registraci uzlu.
Krok 2: Odinstalace rozšíření DSC z uzlu
- Na webu Azure Portal přejděte na rozšíření> domácího virtuálního počítače> (selhání uzlu). >
- Vyberte Microsoft.Powershell.DSC, rozšíření PowerShell DSC.
- Výběrem možnosti Odinstalovat rozšíření odinstalujte.
Krok 3: Odebrání všech chybných nebo prošlých certifikátů z uzlu
Na uzlu, který selhává, z příkazového řádku PowerShellu se zvýšenými oprávněními spusťte tyto příkazy:
$certs = @()
$certs += dir cert:\localmachine\my | ?{$_.FriendlyName -like "DSC"}
$certs += dir cert:\localmachine\my | ?{$_.FriendlyName -like "DSC-OaaS Client Authentication"}
$certs += dir cert:\localmachine\CA | ?{$_.subject -like "CN=AzureDSCExtension*"}
"";"== DSC Certificates found: " + $certs.Count
$certs | FL ThumbPrint,FriendlyName,Subject
If (($certs.Count) -gt 0)
{
ForEach ($Cert in $certs)
{
RD -LiteralPath ($Cert.Pspath)
}
}
Krok 4: Opětovné registrace neúspěšného uzlu
- Na webu Azure Portal přejděte do účtů> Home>Automation (váš účet Automation) >State Configuration (DSC).
- Vyberte Uzly.
- Vyberte Přidat.
- Vyberte uzel, který selhává.
- Vyberte Připojit a vyberte požadované možnosti.
Scénář: Uzel je ve stavu selhání s chybou Nenalezeno
Problém
Uzel má sestavu se stavem Selhání a obsahuje chybu:
The attempt to get the action from server
https://<url>//accounts/<account-id>/Nodes(AgentId=<agent-id>)/GetDscAction failed because a valid
configuration <guid> cannot be found.
Příčina
K této chybě obvykle dochází, když je uzel přiřazen k názvu konfigurace, například ABC, místo názvu konfigurace uzlu (soubor MOF), například ABC. WebServer.
Rozlišení
- Ujistěte se, že uzel přiřazujete s názvem konfigurace uzlu, a ne s názvem konfigurace.
- Konfiguraci uzlu můžete přiřadit k uzlu pomocí webu Azure Portal nebo pomocí rutiny PowerShellu.
- Na webu Azure Portal přejděte do účtů> Home>Automation (váš účet Automation) >State Configuration (DSC). Pak vyberte uzel a vyberte Přiřadit konfiguraci uzlu.
- Použijte rutinu Set-AzAutomationDscNode .
Scénář: Při kompilaci konfigurace se nevygenerovaly žádné konfigurace uzlů (soubory MOF).
Problém
Úloha kompilace DSC se pozastaví s chybou:
Compilation completed successfully, but no node configuration **.mof** files were generated.
Příčina
Když se výraz následující za Node
klíčovým slovem v konfiguraci DSC vyhodnotí jako $null
, nevygenerují se žádné konfigurace uzlů.
Rozlišení
K vyřešení problému použijte jedno z následujících řešení:
- Ujistěte se, že výraz vedle klíčového
Node
slova v definici konfigurace nevyhodnocuje hodnotu Null. - Pokud předáváte ConfigurationData při kompilaci konfigurace, ujistěte se, že předáváte hodnoty, které konfigurace očekává z konfiguračních dat.
Scénář: Sestava uzlu DSC se zasekne ve stavu Probíhá
Problém
Výstup agenta DSC:
No instance found with given property values
Příčina
K tomuto problému může dojít v případě, že je v uzlu poškozená služba WMI (Windows Management Instrumentation).
Rozlišení
Postupujte podle pokynů v známých problémech a omezeních DSC.
Scénář: Nejde použít přihlašovací údaje v konfiguraci DSC
Problém
Úloha kompilace DSC se pozastavila s chybou:
System.InvalidOperationException error processing property 'Credential' of type <some resource
name>: Converting and storing an encrypted password as plaintext is allowed only if
PSDscAllowPlainTextPassword is set to true.
Příčina
K tomuto problému může dojít při použití přihlašovacích údajů v konfiguraci, ale nezadali jste správné ConfigurationData
nastavení PSDscAllowPlainTextPassword
na hodnotu True pro každou konfiguraci uzlu.
Rozlišení
Nezapomeňte předat správné ConfigurationData
nastavení , nastavení PSDscAllowPlainTextPassword
true pro každou konfiguraci uzlu. Viz Kompilace konfigurací DSC ve službě Azure Automation State Configuration.
Scénář: Chyba "Rozšíření zpracování selhání" při povolování počítače z rozšíření DSC
Problém
Když povolíte počítač pomocí rozšíření DSC, dojde k chybě, která obsahuje chybu:
VM has reported a failure when processing extension 'Microsoft.Powershell.DSC'. Error message: \"DSC
COnfiguration 'RegistrationMetaConfigV2' completed with error(s). Following are the first few:
Registration of the Dsc Agent with the server <url> failed. The underlying error is: The attempt to
register Dsc Agent with Agent Id <ID> with the server <url> return unexpected response code
BadRequest. .\".
Příčina
K této chybě obvykle dochází, když je uzlu přiřazen název konfigurace uzlu, který ve službě neexistuje.
Rozlišení
Ujistěte se, že název uzlu, který přesně odpovídá názvu ve službě, nebo nezahrnujte název konfigurace uzlu. Tím se uzel povolí, ale nepřiřazuje konfiguraci uzlu.
Scénář: Při registraci uzlu pomocí PowerShellu došlo k chybě jedné nebo více chyb
Problém
Při registraci uzlu pomocí Register-AzAutomationDSCNode nebo Register-AzureRMAutomationDSCNode se zobrazí následující chyba:
One or more errors occurred.
Příčina
K této chybě dochází při pokusu o registraci uzlu v předplatném, které se liší od uzlu používaného účtem Automation.
Rozlišení
Považovat uzel mezi předplatnými za uzel definovaný pro samostatný cloud nebo místní. Zaregistrujte uzel pomocí jedné z těchto možností pro povolení počítačů:
- Windows: Fyzické nebo virtuální počítače s Windows místně nebo v jiném cloudu než Azure/AWS.
- Linux: Fyzické nebo virtuální počítače s Linuxem v místním prostředí nebo v jiném cloudu než v Azure.
Scénář: Chybová zpráva Zřizování selhalo
Problém
Při registraci uzlu se zobrazí chyba:
Provisioning has failed
Příčina
Tato zpráva se zobrazí, když dojde k problému s připojením mezi uzlem a Azure.
Rozlišení
Zjistěte, jestli je váš uzel ve virtuální privátní síti (VPN) nebo má jiné problémy s připojením k Azure. Viz Řešení potíží s nasazením funkcí.
Scénář: Selhání s obecnou chybou při použití konfigurace v Linuxu
Problém
Když použijete konfiguraci v Linuxu, dojde k chybě, která obsahuje chybu:
This event indicates that failure happens when LCM is processing the configuration. ErrorId is 1.
ErrorDetail is The SendConfigurationApply function did not succeed.. ResourceId is [resource]name
and SourceInfo is ::nnn::n::resource. ErrorMessage is A general error occurred, not covered by a
more specific error code..
Příčina
Pokud je umístění /tmp nastaveno na noexec
, aktuální verze DSC se nepodaří použít konfigurace.
Rozlišení
noexec
Odeberte možnost z umístění /tmp.
Scénář: Názvy konfigurací uzlů, které se překrývají, můžou vést k chybné verzi
Problém
Když použijete jeden konfigurační skript k vygenerování více konfigurací uzlů a některé názvy konfigurace uzlů jsou podmnožinami jiných názvů, může služba kompilace nakonec přiřadit nesprávnou konfiguraci. K tomuto problému dochází pouze v případě, že použijete jeden skript ke generování konfigurací s konfiguračními daty na uzel a pouze v případě, že se název překrývá na začátku řetězce. Příkladem je jeden konfigurační skript, který slouží ke generování konfigurací na základě dat uzlu předávaných jako hashtable pomocí rutin a data uzlu zahrnují servery s názvem server a 1server.
Příčina
Jedná se o známý problém se službou kompilace.
Rozlišení
Nejlepším alternativním řešením je místní kompilace nebo v kanálu CI/CD a nahrání konfiguračních souborů MOF uzlů přímo do služby. Pokud je kompilace ve službě požadavkem, dalším nejlepším alternativním řešením je rozdělit úlohy kompilace tak, aby se názvy nepřekrývaly.
Scénář: Chyba vypršení časového limitu brány při nahrávání konfigurace DSC
Problém
Při nahrávání konfigurace DSC se GatewayTimeout
zobrazí chyba.
Příčina
Konfigurace DSC, které kompilace trvá dlouho, můžou způsobit tuto chybu.
Rozlišení
Konfigurace DSC můžete urychlit explicitním zahrnutím parametru ModuleName
pro všechna volání Import-DSCResource .
Scénář: Chyba při připojování počítače
Problém
Při připojování počítače se agent has a problem
zobrazí chyba.
Příčina
Jedná se o známý problém. Stejnou konfiguraci nemůžete znovu přiřadit, protože uzel zůstane ve stavu čekání na vyřízení.
Rozlišení
Pokud chcete tento problém obejít, použijte jinou testovací konfiguraci a zkuste původní konfiguraci zopakovat.
Další kroky
Pokud se tady váš problém nezobrazuje nebo nemůžete problém vyřešit, zkuste některý z následujících kanálů podpory:
- Získejte odpovědi od odborníků na Azure prostřednictvím fór Azure.
- Spojte se s @AzureSupport, oficiálním účtem Microsoft Azure pro zlepšení uživatelského prostředí. Podpora Azure propojuje komunitu Azure s odpověďmi, podporou a odborníky.
- Vytvořte podpora Azure incident. Přejděte na web podpora Azure a vyberte Získat podporu.