Sdílet prostřednictvím


Řešení potíží se službou Azure Automation State Configuration

Tento článek obsahuje informace o řešení potíží a řešení problémů, ke kterým dochází při kompilaci nebo nasazení 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, který se plánuje vyřešit.

Rozlišení

K odstranění konfigurace použijte rutinu Remove-AzAutomationDscConfiguration .

Scénář: Nepodařilo se zaregistrovat agenta DSC

Problém

Při rutině 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 htt
ps://<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.Re
   gisterDscAgentCommand
    + PSComputerName        : <computerName>

Příčina

Tato chyba je obvykle způsobena bránou firewall, počítačem za proxy serverem nebo jinými chybami sítě.

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:

Rozlišení

Pomocí následujícího postupu znovu zaregistrujte uzel DSC, který selhává.

Krok 1: Zrušení registrace uzlu

  1. Na webu Azure Portal přejděte do účtů> Home>Automation (váš účet Automation) >State Configuration (DSC).
  2. Vyberte Uzly a vyberte uzel, u které dochází k potížím.
  3. Pokud chcete zrušit registraci uzlu, vyberte Zrušit registraci uzlu.

Krok 2: Odinstalace rozšíření DSC z uzlu

  1. Na webu Azure Portal přejděte na rozšíření> domácího virtuálního počítače> (selhání uzlu). >
  2. Vyberte Microsoft.Powershell.DSC, rozšíření PowerShell DSC.
  3. 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

  1. Na webu Azure Portal přejděte do účtů> Home>Automation (váš účet Automation) >State Configuration (DSC).
  2. Vyberte Uzly.
  3. Vyberte Přidat.
  4. Vyberte uzel, který selhává.
  5. Vyberte Připojení 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

Upgradovali jste verzi rozhraní WMF (Windows Management Framework) a máte poškozenou službu 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

V konfiguraci jste použili přihlašovací údaje, ale pro každou konfiguraci uzlu jste nezadali správné ConfigurationData nastavení PSDscAllowPlainTextPassword na hodnotu True.

Rozlišení

Nezapomeňte předat správné nastavení ConfigurationDataPSDscAllowPlainTextPassword true pro každou konfiguraci uzlu uvedenou v konfiguraci. 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 uzel přiřazujete s názvem, který přesně odpovídá názvu ve službě.
  • Můžete se rozhodnout, že nezahrnete název konfigurace uzlu, což má za následek povolení uzlu, ale nepřiřazování konfigurace 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 samostatném předplatném, které používá účet Automation.

Rozlišení

Považovat uzel mezi předplatnými za to, jako by byl definovaný pro samostatný cloud nebo místní. Zaregistrujte uzel pomocí jedné z těchto možností pro povolení počítačů:

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ůstává ve stavu čekání na vyřízení.

Rozlišení

Alternativním řešením je použít jinou testovací konfiguraci a znovu použít původní konfiguraci.

Další kroky

Pokud se tady váš problém nezobrazuje nebo nemůžete problém vyřešit, zkuste získat další podporu jedním z následujících kanálů:

  • Získejte odpovědi od odborníků na Azure prostřednictvím fór Azure.
  • Připojení s @AzureSupport, oficiální účet Microsoft Azure pro zlepšení zkušeností zákazníků. 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.