Azure Otomasyonu Durum Yapılandırması sorunlarını giderme

Bu makalede, Azure Otomasyonu Durum Yapılandırması'nda yapılandırmaları derlerken veya dağıtırken ortaya çıkan sorunları giderme ve çözme hakkında bilgi sağlanır. Durum Yapılandırması özelliği hakkında genel bilgi için bkz. Azure Otomasyonu Durum Yapılandırmasına genel bakış.

Sorunu tanılama

Yapılandırma için bir derleme veya dağıtım hatası aldığınızda, sorunu tanılamanıza yardımcı olacak birkaç adım aşağıda verilmiştır.

1. Yapılandırmanızın yerel makinede başarıyla derlendiğinden emin olun

Azure Otomasyonu Durum Yapılandırması, PowerShell İstenen Durum Yapılandırması (DSC) üzerine kurulmuştur. DSC dili ve söz dizimi belgelerini PowerShell DSC Belgeleri'nde bulabilirsiniz.

Yerel makinenizde bir DSC yapılandırması derleyerek aşağıdakiler gibi yaygın hataları keşfedebilir ve çözebilirsiniz:

  • Eksik modüller.
  • Söz dizimi hataları.
  • Mantıksal hatalar.

2. Düğümünüzde DSC günlüklerini görüntüleme

Yapılandırmanız başarıyla derlendiyse ancak düğüme uygulandığında başarısız olursa, DSC günlüklerinde ayrıntılı bilgileri bulabilirsiniz. Bu günlüklerin nerede bulunacağı hakkında bilgi için bkz . DSC Olay Günlükleri nerededir?

xDscDiagnostics modülü, DSC günlüklerindeki ayrıntılı bilgileri ayrıştırmanıza yardımcı olabilir. Desteğe başvurursanız, sorununuzu tanılamak için bu günlüklere ihtiyaç duyarlar.

Modülü yerel makinenize yüklemek xDscDiagnostics için Kararlı sürümü yükleme modülünün yönergelerini izleyebilirsiniz.

Modülü Azure makinenize yüklemek xDscDiagnostics için Invoke-AzVMRunCommand komutunu kullanın. Komutunu Çalıştır ile Windows VM'nizde PowerShell betiklerini çalıştırma bölümünde yer alan adımları izleyerek Azure portalında Çalıştır komut seçeneğini de kullanabilirsiniz.

xDscDiagnostics kullanma hakkında bilgi için bkz. DSC günlüklerini analiz etmek için xDscDiagnostics kullanma. Ayrıca bkz. xDscDiagnostics Cmdlet'leri.

3. Düğümlerin ve Otomasyon çalışma alanının gerekli modüllere sahip olduğundan emin olun

DSC, düğümde yüklü modüllere bağlıdır. Azure Otomasyonu Durum Yapılandırması'nı kullandığınızda Modülleri İçeri Aktar'daki adımları izleyerek gerekli modülleri Otomasyon hesabınıza aktarın. Yapılandırmalar, modüllerin belirli sürümlerine de bağımlı olabilir. Daha fazla bilgi için bkz . Modül sorunlarını giderme.

Senaryo: Özel karakterler içeren bir yapılandırma portaldan silinemez

Sorun

Portaldan bir DSC yapılandırmasını silmeye çalıştığınızda aşağıdaki hatayı görürsünüz:

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.

Neden

Bu hata, çözülmesi planlanan geçici bir sorundur.

Çözünürlük

Yapılandırmayı silmek için Remove-AzAutomationDscConfiguration cmdlet'ini kullanın.

Senaryo: DSC Aracısı kaydedilemedi

Sorun

Set-DscLocalConfigurationManager veya başka bir DSC cmdlet'i olduğunda şu hatayı alırsınız:

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>

Neden

Bu hata normalde bir güvenlik duvarından, makinenin bir ara sunucunun arkasında olmasından veya diğer ağ hatalarının neden olur.

Çözünürlük

Makinenizin DSC için uygun uç noktalara erişimi olduğunu doğrulayın ve yeniden deneyin. Gereken bağlantı noktalarının ve adreslerin listesi için bkz . Ağ planlaması.

Senaryo: Durum raporları Yetkisiz yanıt kodunu döndürür

Sorun

Azure Otomasyonu Durum Yapılandırması ile bir düğüm kaydettiğinizde aşağıdaki hata iletilerinden birini alırsınız:

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.

Neden

Olası nedenler şunlardır:

  • Hatalı veya süresi dolmuş bir sertifika. Bkz. Düğümü yeniden kaydetme.

  • *.azure-automation.net erişimine izin vermeyen bir ara sunucu yapılandırması. Daha fazla bilgi için bkz . Özel ağların yapılandırması.

  • Azure Otomasyonu yerel kimlik doğrulamayı devre dışı bırakdığınızda. Bkz. Yerel kimlik doğrulamayı devre dışı bırakma. Bunu düzeltmek için bkz . Yerel kimlik doğrulamasını yeniden etkinleştirme.

  • İstemci bilgisayar süresi, gerçek saatten çok dakika yanlıştır. (Zaman kullanımını denetlemek için: w32tm /stripchart /computer:time.windows.com /samples:6).

Çözünürlük

Başarısız olan DSC düğümünü yeniden kaydetmek için aşağıdaki adımları kullanın.

1. Adım: Düğümün kaydını kaldırma

  1. Azure portalında Ev>Otomasyonu Hesapları> (Otomasyon hesabınız) Durum yapılandırması (DSC) >bölümüne gidin.
  2. Düğümler'i seçin ve sorun yaşayan düğümü seçin.
  3. Düğümün kaydını kaldırmak için Kaydı Sil'i seçin.

2. Adım: DSC uzantısını düğümden kaldırma

  1. Azure portalında Giriş>Sanal Makinesi> (başarısız düğüm) >Uzantıları'na gidin.
  2. PowerShell DSC uzantısı olan Microsoft.Powershell.DSC'yi seçin.
  3. Uzantıyı kaldırmak için Kaldır'ı seçin.

3. Adım: Düğümden tüm hatalı veya süresi dolmuş sertifikaları kaldırma

Yükseltilmiş bir PowerShell isteminden başarısız olan düğümde şu komutları çalıştırın:

$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)
    }
}

4. Adım: Başarısız düğümü yeniden kaydetme

  1. Azure portalında Ev>Otomasyonu Hesapları> (Otomasyon hesabınız) Durum yapılandırması (DSC) >bölümüne gidin.
  2. Düğümler'i seçin.
  3. Ekle'yi seçin.
  4. Başarısız olan düğümü seçin.
  5. Bağlan'ı seçin ve istediğiniz seçenekleri belirleyin.

Senaryo: Düğüm "Bulunamadı" hatasıyla başarısız durumda

Sorun

DüğümDe Başarısız durumu olan bir rapor var ve şu hatayı içeriyor:

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.

Neden

Bu hata genellikle düğüm ABC gibi bir düğüm yapılandırması (MOF dosyası) adı yerine ABC gibi bir yapılandırma adına atandığında oluşur. WebServer.

Çözünürlük

  • Düğümü yapılandırma adıyla değil düğüm yapılandırma adıyla atadığınızdan emin olun.

  • Azure portalını veya PowerShell cmdlet'ini kullanarak düğüm yapılandırmasını bir düğüme atayabilirsiniz.

    • Azure portalında Ev>Otomasyonu Hesapları> (Otomasyon hesabınız) Durum yapılandırması (DSC) >bölümüne gidin. Ardından bir düğüm seçin ve Düğüm yapılandırması ata'yı seçin.
    • Set-AzAutomationDscNode cmdlet'ini kullanın.

Senaryo: Bir yapılandırma derlendiğinde düğüm yapılandırması (MOF dosyaları) üretilmemiş

Sorun

DSC derleme işiniz şu hatayla askıya alınıyor:

Compilation completed successfully, but no node configuration **.mof** files were generated.

Neden

DSC yapılandırmasında anahtar sözcüğü izleyen Node ifade olarak değerlendirildiğinde $nullhiçbir düğüm yapılandırması üretilmemiştir.

Çözünürlük

Sorunu çözmek için aşağıdaki çözümlerden birini kullanın:

  • Yapılandırma tanımında anahtar sözcüğün yanındaki ifadenin Node Null olarak değerlendirilmediğinden emin olun.
  • Yapılandırmayı derlerken ConfigurationData geçiriyorsanız yapılandırmanın yapılandırma verilerinden beklediği değerleri geçtiğinizden emin olun.

Senaryo: DSC düğüm raporu Devam Ediyor durumunda takılıyor

Sorun

DSC aracısının çıkışları:

No instance found with given property values

Neden

Windows Management Framework (WMF) sürümünüzü yükselttiniz ve Windows Yönetim Araçları'nın (WMI) bozulmasına neden oldunuz.

Çözünürlük

DSC ile ilgili bilinen sorunlar ve sınırlamalar başlığındaki yönergeleri izleyin.

Senaryo: DSC yapılandırmasında kimlik bilgisi kullanılamıyor

Sorun

DSC derleme işiniz şu hatayla askıya alındı:

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.

Neden

Yapılandırmada bir kimlik bilgisi kullandınız ancak her düğüm yapılandırması için true olarak ayarlanmasını PSDscAllowPlainTextPassword sağlamadınızConfigurationData.

Çözünürlük

Yapılandırmada bahsedilen her düğüm yapılandırması için true olarak ayarlamak PSDscAllowPlainTextPassword üzere doğru ConfigurationData değerini geçirmeyi unutmayın. Bkz. Azure Otomasyonu Durum Yapılandırmasında DSC yapılandırmalarını derleme.

Senaryo: Bir makineyi DSC uzantısından etkinleştirirken "Uzantı işlenirken hata oluştu" hatası

Sorun

Bir makineyi DSC uzantısını kullanarak etkinleştirdiğinizde, şu hatayı içeren bir hata oluşur:

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. .\".

Neden

Bu hata genellikle düğüme hizmette mevcut olmayan bir düğüm yapılandırma adı atandığında oluşur.

Çözünürlük

  • Düğüme hizmetteki adla tam olarak eşleşen bir ad atadığınızdan emin olun.
  • Düğüm yapılandırma adını eklememeyi seçebilirsiniz; bu da düğümün etkinleştirilmesine neden olur ancak düğüm yapılandırması atamaz.

Senaryo: PowerShell kullanarak bir düğümü kaydederken "Bir veya daha fazla hata oluştu" hatası

Sorun

Register-AzAutomationDSCNode veya Register-AzureRMAutomationDSCNode kullanarak bir düğümü kaydettiğinizde, aşağıdaki hatayı alırsınız:

One or more errors occurred.

Neden

Bu hata, Bir düğümü Otomasyon hesabı tarafından kullanılandan ayrı bir aboneliğe kaydetmeye çalıştığınızda oluşur.

Çözünürlük

Abonelikler arası düğüme ayrı bir bulut veya şirket içi için tanımlanmış gibi davranın. Makineleri etkinleştirmek için şu seçeneklerden birini kullanarak düğümü kaydedin:

Senaryo: "Sağlama başarısız oldu" hata iletisi

Sorun

Bir düğümü kaydettiğinizde şu hatayı görürsünüz:

Provisioning has failed

Neden

Bu ileti, düğüm ile Azure arasında bağlantıyla ilgili bir sorun olduğunda oluşur.

Çözünürlük

Düğümünüzün bir sanal özel ağda mı (VPN) yoksa Azure'a bağlanırken başka sorunlarla mı karşılaştığını belirleyin. Bkz . Özellik dağıtım sorunlarını giderme.

Senaryo: Linux'ta yapılandırma uygulanırken genel bir hatayla hata oluştu

Sorun

Linux'ta bir yapılandırma uyguladığınızda, şu hatayı içeren bir hata oluşur:

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..

Neden

/tmp konumu olarak noexecayarlanırsa, DSC'nin geçerli sürümü yapılandırmaları uygulayamaz.

Çözünürlük

noexec/tmp konumundan seçeneğini kaldırın.

Senaryo: Örtüşen düğüm yapılandırma adları hatalı sürüme neden olabilir

Sorun

Birden çok düğüm yapılandırması oluşturmak için tek bir yapılandırma betiği kullandığınızda ve bazı düğüm yapılandırma adları diğer adların alt kümeleri olduğunda, derleme hizmeti yanlış yapılandırmayı atayabilir. Bu sorun yalnızca düğüm başına yapılandırma verilerine sahip yapılandırmalar oluşturmak için tek bir betik kullandığınızda ve yalnızca dizenin başında ad çakışması oluştuğunda oluşur. Örnek olarak, cmdlet'ler kullanılarak karma tablo olarak geçirilen düğüm verilerini temel alan yapılandırmalar oluşturmak için kullanılan tek bir yapılandırma betiği ve düğüm verileri sunucu ve 1server adlı sunucuları içerir.

Neden

Bu, derleme hizmetiyle ilgili bilinen bir sorundur.

Çözünürlük

En iyi geçici çözüm yerel olarak veya CI/CD işlem hattında derlemek ve düğüm yapılandırması MOF dosyalarını doğrudan hizmete yüklemektir. Hizmetteki derleme bir gereksinimse, bir sonraki en iyi geçici çözüm, adlarda çakışma olmayacak şekilde derleme işlerini bölmektir.

Senaryo: DSC yapılandırması karşıya yüklemesinde ağ geçidi zaman aşımı hatası

Sorun

DSC yapılandırmasını karşıya yüklediğinizde bir GatewayTimeout hata alırsınız.

Neden

Derlemesi uzun süren DSC yapılandırmaları bu hataya neden olabilir.

Çözünürlük

Herhangi bir Import-DSCResource çağrısı için parametresini ModuleName açıkça ekleyerek DSC yapılandırmalarınızın daha hızlı ayrıştırmasını sağlayabilirsiniz.

Senaryo: Makine ekleme sırasında hata oluştu

Sorun

Bir makine eklerken bir agent has a problem hata alırsınız.

Neden

Bu bilinen bir sorundur. Düğüm bekleme durumunda kaldığı için aynı yapılandırmayı yeniden atayamazsınız.

Çözünürlük

Geçici çözüm, farklı test yapılandırması uygulamak ve özgün yapılandırmayı yeniden uygulamaktır.

Sonraki adımlar

Sorununuzu burada görmüyorsanız veya sorununuzu çözemiyorsanız ek destek için aşağıdaki kanallardan birini deneyin:

  • Azure Forumları aracılığıyla Azure uzmanlarından yanıt alın.
  • müşteri deneyimini geliştirmek için resmi Microsoft Azure hesabı olan @AzureSupport ile Bağlan. Azure Desteği, Azure topluluğunun yanıtlara, desteğe ve uzmanlara bağlanmasını sağlar.
  • bir Azure desteği olayı dosyala. Azure desteği sitesine gidin ve Destek Al'ı seçin.