Azure VM Görüntü Oluşturucu sorunlarını giderme

Şunlar için geçerlidir: ✔️ Linux VM'leri ✔️ Esnek ölçek kümeleri

Azure VM Görüntü Oluşturucusu'nu kullanırken karşılaşabileceğiniz yaygın sorunları gidermek ve çözmek için bu makaleyi kullanın.

Önkoşullar

Derleme oluştururken aşağıdakileri yapın:

  • VM Görüntü Oluşturucu hizmeti, WinRM veya Secure Shell (SSH) kullanarak derleme VM'sine iletişim kurar. Derlemenin bir parçası olarak bu ayarları devre dışı bırakma*.
  • VM Görüntü Oluşturucusu, derlemelerin bir parçası olarak hazırlama kaynak grubunda kaynaklar oluşturur. Azure İlkesi VM Görüntü Oluşturucusu'nun gerekli kaynakları oluşturmasını veya kullanmasını engellemediğinden emin olun.
  • Azure İlkesi'nin azure uzantıları gibi istenmeyen özellikleri derleme VM'sine yüklemediğini doğrulayın.
  • VM Görüntü Oluşturucusu'nun görüntüleri okumak/yazmak ve depolama hesabına bağlanmak için doğru izinlere sahip olduğundan emin olun. Daha fazla bilgi için Azure CLI veya Azure PowerShell için izin belgelerini gözden geçirin.
  • Betikler veya satır içi komutlar hatalarla (sıfır olmayan çıkış kodları) başarısız olursa VM Görüntü Oluşturucusu derlemeyi başarısız yapar. Özel betikleri test ettiğinizden ve bunların hatasız (çıkış kodu 0) veya kullanıcı girişi gerektirdiğinden emin olun. Daha fazla bilgi için bkz . VM Görüntü Oluşturucusu ve PowerShell kullanarak Azure Sanal Masaüstü görüntüsü oluşturma.
  • Aboneliğinizin yeterli Azure Container Instances kotası olduğundan emin olun.
    • Her görüntü derlemesi, hazırlama kaynak grubunda en fazla bir geçici Azure Container Instance kaynağı (dört standart çekirdekten oluşan) dağıtabilir. Bu kaynaklar Yalıtılmış görüntü derlemeleri için gereklidir.

VM Görüntü Oluşturucusu hataları iki alanda oluşabilir:

  • Görüntü şablonu gönderme sırasında
  • Görüntü oluşturma sırasında

Dekont

CIS tarafından yönetilen Azure markette CIS sağlamlaştırılmış görüntüler (Linux veya Windows), yapılandırmaları nedeniyle Azure Image Builder hizmetinde derleme hatalarına neden olabilir. Örneğin:

  • CIS Sağlamlaştırılmış Windows görüntüleri, AIB derlemesi için bir önkoşul olan WinRM bağlantısını kesintiye uğratabilir.
  • CIS Linux görüntüleri izin sorunları nedeniyle chmod +x başarısız olabilir.

Görüntü şablonu gönderme hatalarını giderme

Görüntü şablonu gönderme hataları yalnızca gönderim sırasında döndürülür. Görüntü şablonu gönderme hataları için hata günlüğü yok. Gönderme sırasında bir hata varsa, şablonun durumunu denetleyerek, özellikle ve ProvisioningErrorMessage/provisioningError'yi gözden geçirerek ProvisioningState hatayı döndürebilirsiniz.

az image builder show --name $imageTemplateName  --resource-group $imageResourceGroup
Get-AzImageBuilderTemplate -ImageTemplateName  <imageTemplateName> -ResourceGroupName <imageTemplateResourceGroup> | Select-Object ProvisioningState, ProvisioningErrorMessage

Dekont

PowerShell için VM Görüntü Oluşturucusu PowerShell modüllerini yüklemeniz gerekir.

Önemli

API sürüm 2021-10-01, gelecekteki her API sürümünün parçası olacak hata şemasında bir değişiklik sağlar. Azure VM Görüntü Oluşturucusu otomasyonlarınız varsa API 2021-10-01 veya sonraki bir sürüme geçiş yaptığınızda yeni hata çıkışına dikkat edin. En son API sürümüne geçtikten sonra önceki bir sürüme geri dönmemenizi öneririz çünkü önceki hata şemasını oluşturmak için otomasyonunuzu yeniden değiştirmeniz gerekir. Gelecek sürümlerde hata şemasını yeniden değiştirebileceğimizi tahmin etmeyeceğiz.

Sürüm 2020-02-14 ve öncesi için hata çıktısı

{
  "code": "ValidationFailed",
  "message": "Validation failed: 'ImageTemplate.properties.source': Field 'imageId' has a bad value: '/subscriptions/subscriptionID/resourceGroups/resourceGroupName/providers/Microsoft.Compute/images/imageName'. Please review  http://aka.ms/azvmimagebuildertmplref  for details on fields requirements in the Image Builder Template."
}

Sürüm 2021-10-01 ve üzeri için hata çıktısı

{
  "error": {
    "code": "ValidationFailed",
    "message": "Validation failed: 'ImageTemplate.properties.source': Field 'imageId' has a bad value: '/subscriptions/subscriptionID/resourceGroups/resourceGroupName/providers/Microsoft.Compute/images/imageName'. Please review  http://aka.ms/azvmimagebuildertmplref  for details on fields requirements in the Image Builder Template."
  }
}

Aşağıdaki bölümlerde yaygın görüntü şablonu gönderme hataları için sorun çözümleme kılavuzu verilmiştir.

Görüntü şablonlarının güncelleştirilmesi veya yükseltilme şu anda desteklenmiyor

Hata

'Conflict'. Details: Update/Upgrade of image templates is currently not supported

Neden

Şablon zaten var.

Çözüm

Bir görüntü yapılandırma şablonu gönderirseniz ve gönderim başarısız olursa, başarısız bir şablon yapıtı hala var olur. Başarısız şablonu silin.

Görüntü şablonlarında MSI'yi yeniden atama

Hata

The assigned managed identity cannot be used. Please remove the existing one and re-assign a new identity. For more troubleshooting steps go to https://aka.ms/azvmimagebuilderts.

Neden

Görüntü şablonuna atanan Yönetilen Hizmet Kimliklerinin (MSI) kullanılamadığı durumlar vardır:

Çözüm

Görüntü şablonundaki kimliği sıfırlamak için Azure CLI kullanın. Azure CLI'yi 2.45.0 veya sonraki bir sürüme güncelleştirdiğinizden emin olun.

Yönetilen kimliği hedef görüntü oluşturucu şablonundan kaldırma

az image builder identity remove -g <template resource group> -n <template name> --user-assigned <identity resource id>

Hedef görüntü oluşturucu şablonuna kimliği yeniden atama

az image builder identity assign -g <template rg> -n <template name> --user-assigned <identity resource id>

Kaynak işlemi "Başarısız" terminal sağlama durumuyla tamamlandı

Hata

Microsoft.VirtualMachineImages/imageTemplates 'helloImageTemplateforSIG01' failed with message '{
  "status": "Failed",
  "error": {
    "code": "ResourceDeploymentFailure",
    "message": "The resource operation completed with terminal provisioning state 'Failed'.",
    "details": [
      {
        "code": "InternalOperationError",
        "message": "Internal error occurred."

Neden

Çoğu durumda, eksik izinler nedeniyle kaynak dağıtım hatası oluşur. Bu hata, hazırlama kaynak grubuyla çakışmadan da kaynaklanabilir.

Çözüm

Senaryonuza bağlı olarak, VM Görüntü Oluşturucusu'nda aşağıdakiler için izinler gerekebilir:

  • Kaynak görüntü veya Azure İşlem Galerisi (eski adıyla Paylaşılan Görüntü Galerisi) kaynak grubu.
  • Dağıtım görüntüsü veya Azure İşlem Galerisi kaynağı.
  • Özelleştiricinin eriştiği File depolama hesabı, kapsayıcı veya blob.

Ayrıca, hazırlama kaynak grubu adının her görüntü şablonu için benzersiz olarak belirtildiğinden emin olun.

İzinleri yapılandırma hakkında daha fazla bilgi için bkz . Azure CLI kullanarak VM Görüntü Oluşturucusu izinlerini yapılandırma veya PowerShell kullanarak VM Görüntü Oluşturucusu izinlerini yapılandırma.

Yönetilen görüntü alma hatası

Hata

Build (Managed Image) step failed: Error getting Managed Image '/subscriptions/.../providers/Microsoft.Compute/images/mymanagedmg1': Error getting managed image (...): compute.
ImagesClient#Get: Failure responding to request: StatusCode=403 -- Original Error: autorest/azure: Service returned an error.
Status=403 Code="AuthorizationFailed" Message="The client '......' with object id '......' doesn't have authorization to perform action 'Microsoft.Compute/images/read' over scope

Neden

Eksik izinler.

Çözüm

Senaryonuza bağlı olarak, VM Görüntü Oluşturucusu'nda aşağıdakiler için izinler gerekebilir:

  • Kaynak görüntü veya Azure İşlem Galerisi kaynak grubu.
  • Dağıtım görüntüsü veya Azure İşlem Galerisi kaynağı.
  • Özelleştiricinin eriştiği File depolama hesabı, kapsayıcı veya blob.

İzinleri yapılandırma hakkında daha fazla bilgi için bkz . Azure CLI kullanarak VM Görüntü Oluşturucusu izinlerini yapılandırma veya PowerShell kullanarak VM Görüntü Oluşturucusu izinlerini yapılandırma.

Görüntü sürümü için derleme adımı başarısız oldu

Hata

Build (Shared Image Version) step failed for Image Version '/subscriptions/.../providers/Microsoft.Compute/galleries/.../images/... /versions/0.23768.4001': Error getting Image Version '/subscriptions/.../resourceGroups/<rgName>/providers/Microsoft.Compute/galleries/.../images/.../versions/0.23768.4001': Error getting image version '... :0.23768.4001': compute.GalleryImageVersionsClient#Get: Failure responding to request: StatusCode=404 -- Original Error: autorest/azure: Service returned an error.
Status=404 Code="ResourceNotFound" Message="The Resource 'Microsoft.Compute/galleries/.../images/.../versions/0.23768.4001' under resource group '<rgName>' was not found."

Neden

VM Görüntü Oluşturucusu kaynak görüntüyü bulamıyor.

Çözüm

Kaynak görüntünün doğru olduğundan ve VM Görüntü Oluşturucusu'nun konumunda bulunduğundan emin olun.

Dış dosyayı yerel bir dosyaya indirme

Hata

Downloading external file (<myFile>) to local file (xxxxx.0.customizer.fp) [attempt 1 of 10] failed: Error downloading '<myFile>' to 'xxxxx.0.customizer.fp'..

Neden

Dosya adı veya konumu yanlış veya konuma ulaşılamıyor.

Çözüm

Dosyaya ulaşılabilir olduğundan emin olun. Adın ve konumun doğru olduğunu doğrulayın.

Disk oluşturma yetkilendirme hatası

Azure Image Builder derlemesi aşağıdakine benzer bir yetkilendirme hatasıyla başarısız oluyor:

Hata

Attempting to deploy created Image template in Azure fails with an 'The client '6df325020-fe22-4e39-bd69-10873965ac04' with object id '6df325020-fe22-4e39-bd69-10873965ac04' does not have authorization to perform action 'Microsoft.Compute/disks/write' over scope '/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Compute/disks/proxyVmDiskWin_<timestamp>' or the scope is invalid. If access was recently granted, please refresh your credentials.'

Neden

Bu hata, Windows kaynak görüntüsüyle Azure Image Builder hizmetine önceden var olan bir kaynak grubu ve sanal ağ belirtmeye çalışırken oluşur.

Çözüm

Aşağıdaki CLI komutunu veya portal yönergelerini kullanarak Azure Görüntü Oluşturucusu'nun birinci taraf uygulamasına karşılık gelen hizmet sorumlusunun kaynak grubuna katkıda bulunan rolünü atamanız gerekir.

İlk olarak, aşağıdaki CLI komutunu kullanarak hizmet sorumlusunun Azure Görüntü Oluşturucusu'nun birinci taraf uygulamasıyla ilişkilendirildiğini doğrulayın:

az ad sp show --id {servicePrincipalName, or objectId}

Ardından, cli kullanarak bu çözümü uygulamak için aşağıdaki komutu kullanın:

az role assignment create -g {ResourceGroupName} --assignee {AibrpSpOid} --role Contributor

Bu çözümü portalda uygulamak için şu belgelerdeki yönergeleri izleyin: Azure portalını kullanarak Azure rolleri atama - Azure RBAC.

1. Adım: Gerekli kapsamı belirleme için: Gerekli kapsam kaynak grubunuzdur.

3. Adım: Uygun rolü seçin: Rol Katkıda Bulunan'dır.

4. Adım: Erişime ihtiyacı olan kişileri seçin: "Azure Sanal Makine Görüntü Oluşturucusu" üyesini seçin

Ardından, rolü atamak için 6. Adım: Rol ata'ya geçin.

Derleme hatalarını giderme

Görüntü derleme hataları için, hatasını dosyasından lastrunstatusalın ve ardından customization.log dosyasındaki ayrıntıları gözden geçirin.

az image builder show --name $imageTemplateName  --resource-group $imageResourceGroup
Get-AzImageBuilderTemplate -ImageTemplateName  <imageTemplateName> -ResourceGroupName <imageTemplateResourceGroup> | Select-Object LastRunStatus, LastRunStatusMessage

Özelleştirme günlüğü

Görüntü derlemesi çalışırken günlükler oluşturulur ve bir depolama hesabında depolanır. VM Görüntü Oluşturucusu, bir görüntü şablonu yapıtı oluşturduğunuzda geçici kaynak grubunda depolama hesabını oluşturur.

Depolama hesabı adı, IT_<ImageResourceGroupName TemplateName><<>GUID> desenini kullanır (örneğin, IT_aibmdi_helloImageTemplateLinux01).

Dosyayı kaynak grubunda görüntülemek için Hesap>Blobları'nı>packerlogs Depolama seçin, dizini seçin ve ardından customization.log dosyasını seçin.customization.log

Özelleştirme günlüğünü anlama

Günlük ayrıntılıdır. Azure İşlem Galerisi çoğaltması gibi görüntü dağıtımıyla ilgili sorunlar da dahil olmak üzere görüntü derlemesini kapsar. Bu hatalar, görüntü şablonu durumunun hata iletisinde gösterilir.

Dosya customization.log aşağıdaki aşamaları içerir:

  1. ARM şablonlarını kullanarak derleme VM'sini ve bağımlılıklarını IT_ hazırlama kaynak grubu aşamasına dağıtın. Bu aşama, VM Görüntü Oluşturucusu kaynak sağlayıcısı için birden çok POS içerir:

    Azure request method="POST" request="https://management.azure.com/subscriptions/<subID>/resourceGroups/IT_aibImageRG200_window2019VnetTemplate01_dec33089-1cc3-cccc-cccc-ccccccc/providers/Microsoft.Storage/storageAccounts
    ..
    PACKER OUT ==> azure-arm: Deploying deployment template ...
    ..
    
  2. Dağıtım aşamasının durumu. Bu aşama, her kaynak dağıtımının durumunu içerir:

    PACKER ERR 2020/04/30 23:28:50 packer: 2020/04/30 23:28:50 Azure request method="GET" request="https://management.azure.com/subscriptions/<subID>/resourcegroups/IT_aibImageRG200_window2019VnetTemplate01_dec33089-1cc3-4505-ae28-6661e43fac48/providers/Microsoft.Resources/deployments/pkrdp51lc0339jg/operationStatuses/08586133176207523519?[REDACTED]" body=""
    
  3. Derleme VM aşamasına Bağlan.

    Windows'da, VM Görüntü Oluşturucusu WinRM kullanarak bağlanır:

    PACKER ERR 2020/04/30 23:30:50 packer: 2020/04/30 23:30:50 Waiting for WinRM, up to timeout: 10m0s
    ..
    PACKER OUT     azure-arm: WinRM connected.
    

    Linux'ta VM Görüntü Oluşturucusu SSH kullanarak bağlanır:

    PACKER OUT ==> azure-arm: Waiting for SSH to become available...
    PACKER ERR 2019/12/10 17:20:51 packer: 2020/04/10 17:20:51 [INFO] Waiting for SSH, up to timeout: 20m0s
    PACKER OUT ==> azure-arm: Connected to SSH!
    
  4. Özelleştirme aşamasını çalıştırın. Özelleştirmeler çalıştırıldığında, customization.log dosyasını gözden geçirerek bunları tanımlayabilirsiniz. (telemetri) için arama.

    (telemetry) Starting provisioner windows-update
    (telemetry) ending windows-update
    (telemetry) Starting provisioner powershell
    (telemetry) ending powershell
    (telemetry) Starting provisioner file
    (telemetry) ending file
    (telemetry) Starting provisioner windows-restart
    (telemetry) ending windows-restart
    
    (telemetry) Finalizing. - This means the build hasfinished
    
  5. Sağlamayı kaldırma aşaması. VM Görüntü Oluşturucusu gizli bir özelleştirici ekler. Bu sağlama kaldırma adımı, VM'yi sağlamayı kaldırmaya hazırlamakla sorumludur. Windows'ta çalışır Sysprep (c:\DeprovisioningScript.ps1 kullanılarak). Linux'ta çalışır waagent-deprovision (/tmp/DeprovisioningScript.sh kullanılarak).

    Örneğin:

    PACKER ERR 2020/03/04 23:05:04 [INFO] (telemetry) Starting provisioner powershell
    PACKER ERR 2020/03/04 23:05:04 packer: 2020/03/04 23:05:04 Found command: if( TEST-PATH c:\DeprovisioningScript.ps1 ){cat c:\DeprovisioningScript.ps1} else {echo "Deprovisioning script [c:\DeprovisioningScript.ps1] could not be found. Image build may fail or the VM created from the Image may not boot. Please make sure the deprovisioning script is not accidentally deleted by a Customizer in the Template."}
    
  6. Temizleme aşaması. Derleme tamamlandıktan sonra VM Görüntü Oluşturucusu kaynakları silinir.

    PACKER ERR ==> azure-arm: Deleting individual resources ...
    ...
    PACKER ERR 2020/02/04 02:04:23 packer: 2020/02/04 02:04:23 Azure request method="DELETE" request="https://management.azure.com/subscriptions/<subId>/resourceGroups/IT_aibDevOpsImg_t_vvvvvvv_yyyyyy-de5f-4f7c-92f2-xxxxxxxx/providers/Microsoft.Network/networkInterfaces/pkrnijamvpo08eo?[REDACTED]" body=""
    ...
    PACKER ERR ==> azure-arm: The resource group was not created by Packer, not deleting ...
    

Betik veya satır içi özelleştirme sorunlarını gidermek için İpuçları

  • VM Görüntü Oluşturucusu'na sağlamadan önce kodu test edin.
  • Azure İlkesi ve Güvenlik Duvarı'nın uzak kaynaklara bağlanmaya izin verin.
  • veya echokullanarak Write-Host konsola açıklama çıktısı gönderin. Bunu yaptığınızda customization.log dosyasında arama yapmanıza olanak tanır.

Yaygın derleme hatalarını giderme

İlke ihlali nedeniyle şablon dağıtımı başarısız oldu

Hata

{
  "statusCode": "BadRequest",
  "serviceRequestId": null,
  "statusMessage": "{\"error\":{\"code\":\"InvalidTemplateDeployment\",\"message\":\"The template deployment failed because of policy violation. Please see details for more information.\",\"details\":[{\"code\":\"RequestDisallowedByPolicy\",\"target\":\"<target_name>\",\"message\":\"Resource '<resource_name>' was disallowed by policy. Policy identifiers: '[{\\\"policyAssignment\\\":{\\\"name\\\":\\\"[Initiative] KeyVault (Microsoft.KeyVault)\\\",\\\"id\\\":\\\"/providers/Microsoft.Management/managementGroups/<managementGroup_name>/providers/Microsoft.Authorization/policyAssignments/Microsoft.KeyVault\\\"},\\\"policyDefinition\\\":{\\\"name\\\":\\\"Azure Key Vault should disable public network access\\\",\\\"id\\\":\\\"/providers/Microsoft.Management/managementGroups/<managementGroup_name>/providers/Microsoft.Authorization/policyDefinitions/KeyVault.disablePublicNetworkAccess_deny_deny\\\"},\\\"policySetDefinition\\\":{\\\"name\\\":\\\"[Initiative] KeyVault (Microsoft.KeyVault)\\\",\\\"id\\\":\\\"/providers/Microsoft.Management/managementGroups/<managementGroup_name>/providers/Microsoft.Authorization/policySetDefinitions/Microsoft.KeyVault\\\"}}]'.\",\"additionalInfo\":[{\"type\":\"PolicyViolation\"}]}]}}",
  "eventCategory": "Administrative",
  "entity": "/subscriptions/<subscription_ID>/<resourcegroups>/<resourcegroupname>/providers/Microsoft.Resources/deployments/<deployment_name>",
  "message": "Microsoft.Resources/deployments/validate/action",
  "hierarchy": "<subscription_ID>/<resourcegroupname>/<policy_name>/<managementGroup_name>/<deployment_ID>"
}

Neden

Yukarıdaki ilke ihlali hatası, genel erişim devre dışı bırakılmış bir Azure Key Vault kullanmanın bir sonucudur. Şu anda Azure Image Builder bu yapılandırmayı desteklemez.

Çözüm

Azure Key Vault genel erişim etkin olarak oluşturulmalıdır.

Packer derleme komutu hatası

Hata

  "provisioningState": "Succeeded",
  "lastRunStatus": {
   "startTime": "2020-04-30T23:24:06.756985789Z",
   "endTime": "2020-04-30T23:39:14.268729811Z",
   "runState": "Failed",
   "message": "Failed while waiting for packerizer: Microservice has failed: Failed while processing request: Error when executing packerizer: Packer build command has failed: exit status 1. During the image build, a failure has occurred, please review the build log to identify which build/customization step failed. For more troubleshooting steps go to https://aka.ms/azvmimagebuilderts. Image Build log location: https://xxxxxxxxxx.blob.core.windows.net/packerlogs/xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx/customization.log. OperationId: xxxxxx-5a8c-4379-xxxx-8d85493bc791. Use this operationId to search packer logs."

Neden

Özelleştirme hatası.

Çözüm

Özelleştirici hatalarını bulmak için günlüğü gözden geçirin. (telemetri) için arama.

Örneğin:

(telemetry) Starting provisioner windows-update
(telemetry) ending windows-update
(telemetry) Starting provisioner powershell
(telemetry) ending powershell
(telemetry) Starting provisioner file
(telemetry) ending file
(telemetry) Starting provisioner windows-restart
(telemetry) ending windows-restart

(telemetry) Finalizing. - This means the build has finished

Zaman aşımı aşıldı

Hata

Deployment failed. Correlation ID: xxxxx-xxxx-xxxx-xxxx-xxxxxxxxx. Failed in building/customizing image: Failed while waiting for packerizer: Timeout waiting for microservice to complete: 'context deadline exceeded'

Neden

Derleme, derleme zaman aşımını aştı. Bu hata 'lastrunstatus' içinde görülür.

Çözüm

  1. customization.log dosyasını gözden geçirin. Çalıştırılacak son özelleştiriciyi belirleyin. Günlüğün en altından başlayarak (telemetri) araması yapın.

  2. Betik özelleştirmelerini denetleyin. Özelleştirmeler, seçenekler gibi quiet komutlar için kullanıcı etkileşimini gizlemiyor olabilir. Örneğin, apt-get install -y betik yürütmenin kullanıcı etkileşimini beklemesine neden olur.

  3. 20 MB'tan büyük yapıtları indirmek için özelleştiriciyi kullanıyorsanız File geçici çözümler bölümüne bakın.

  4. Betikteki betiğin beklemesine neden olabilecek hataları ve bağımlılıkları gözden geçirin.

  5. Özelleştirmelerin daha fazla zamana ihtiyacı olduğunu düşünüyorsanız buildTimeoutInMinutes değerini artırın. Varsayılan değer 4 saattir.

  6. Gigabayt (GB) dosya indirme gibi yoğun kaynak kullanımlı eylemleriniz varsa, temel alınan derleme VM boyutunu göz önünde bulundurun. Hizmet bir Standard_D1_v2 VM kullanır. VM'de 1 vCPU ve 3,5 GB bellek vardır. 50 GB indiriyorsanız büyük olasılıkla VM kaynaklarını tüketip VM Görüntü Oluşturucusu ile derleme VM arasında iletişim hatalarına neden olursunuz. VM_size ayarlayarak derlemeyi daha büyük bellekli bir VM ile yeniden deneyin.

Uzun dosya indirme süresi

Hata

[086cf9c4-0457-4e8f-bfd4-908cfe3fe43c] PACKER OUT
myBigFile.zip 826 B / 826000 B  1.00%
[086cf9c4-0457-4e8f-bfd4-908cfe3fe43c] PACKER OUT
myBigFile.zip 1652 B / 826000 B  2.00%
[086cf9c4-0457-4e8f-bfd4-908cfe3fe43c] PACKER OUT
..
hours later...
..
myBigFile.zip 826000 B / 826000 B  100.00%
[086cf9c4-0457-4e8f-bfd4-908cfe3fe43c] PACKER OUT

Neden

File özelleştirici büyük bir dosya indiriyor.

Çözüm

File özelleştirici yalnızca küçük (20 MB'tan az) dosya indirme işlemleri için uygundur. Daha büyük dosya indirmeleri için bir betik veya satır içi komut kullanın. Örneğin, Linux'ta veya curlkullanabilirsinizwget. Windows'da kullanabilirsiniz Invoke-WebRequest.

Oluşturucu, 1190 hata koduyla Windows-Restart'ı sürekli olarak çalıştıramıyor

Hata

[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] (telemetry) Starting provisioner windows-restart
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-plugin-azure plugin: 2023/06/13 08:28:58 [INFO] starting remote command: shutdown /r /f /t 10
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-plugin-azure plugin: 2023/06/13 08:28:58 [INFO] command 'shutdown /r /f /t 10' exited with code: 0
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER OUT ==> azure-arm: A system shutdown has already been scheduled.(1190)
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-plugin-azure plugin: 2023/06/13 08:28:58 [INFO] RPC endpoint: Communicator ended with: 0
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] 0 bytes written for 'stdout'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] 0 bytes written for 'stderr'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] RPC client: Communicator ended with: 0
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] RPC endpoint: Communicator ended with: 0
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-provisioner-windows-restart plugin: [INFO] 0 bytes written for 'stdout'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-provisioner-windows-restart plugin: [INFO] 0 bytes written for 'stderr'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-provisioner-windows-restart plugin: [INFO] RPC client: Communicator ended with: 0
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-provisioner-windows-restart plugin: Check if machine is rebooting...
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-plugin-azure plugin: 2023/06/13 08:28:58 [INFO] starting remote command: shutdown /r /f /t 60 /c "packer restart test"
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-plugin-azure plugin: 2023/06/13 08:28:58 [INFO] command 'shutdown /r /f /t 60 /c "packer restart test"' exited with code: 1190
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-plugin-azure plugin: 2023/06/13 08:28:58 [INFO] RPC endpoint: Communicator ended with: 1190
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] 52 bytes written for 'stderr'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] 0 bytes written for 'stdout'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] RPC client: Communicator ended with: 1190
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 [INFO] RPC endpoint: Communicator ended with: 1190
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-provisioner-windows-restart plugin: [INFO] 52 bytes written for 'stderr'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-provisioner-windows-restart plugin: [INFO] 0 bytes written for 'stdout'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-provisioner-windows-restart plugin: [INFO] RPC client: Communicator ended with: 1190
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:28:58 packer-provisioner-windows-restart plugin: Reboot already in progress, waiting...
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:29:08 packer-provisioner-windows-restart plugin: Check if machine is rebooting...
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:29:09 [INFO] 0 bytes written for 'stderr'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:29:09 packer-provisioner-windows-restart plugin: [INFO] 0 bytes written for 'stderr'
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:29:09 packer-provisioner-windows-restart plugin: Waiting for machine to reboot with timeout: 15m0s
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:29:09 packer-provisioner-windows-restart plugin: Waiting for machine to become available...
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER OUT ==> Some builds didn't complete successfully and had errors:
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:46:26 machine readable: azure-arm,error []string{"Timeout waiting for machine to restart."}
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER OUT --> azure-arm: Timeout waiting for machine to restart.
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR ==> Builds finished but no artifacts were created.
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER OUT
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER ERR 2023/06/13 08:46:26 [INFO] (telemetry) Finalizing.
[864c0337-b300-48ab-8e8e-7894bc695b7c] PACKER OUT ==> Builds finished but no artifacts were created.

Neden

Windows Update adımı, Windows Server 2016'ya dayalı görüntülerde erken bildirir.

Çözüm

15 dakikadan 30 dakikaya yükseltin restartTimeout .

Hata

Deployment failed. Correlation ID: XXXXXX-XXXX-XXXXXX-XXXX-XXXXXX. Failed in distributing 1 images out of total 1: {[Error 0] [Distribute 0] Error publishing MDI to Azure Compute Gallery:/subscriptions/<subId>/resourceGroups/xxxxxx/providers/Microsoft.Compute/galleries/xxxxx/images/xxxxxx, Location:eastus. Error: Error returned from SIG client while publishing MDI to Azure Compute Gallery for dstImageLocation: eastus, dstSubscription: <subId>, dstResourceGroupName: XXXXXX, dstGalleryName: XXXXXX, dstGalleryImageName: XXXXXX. Error: Error waiting on Azure Compute Gallery future for resource group: XXXXXX, gallery name: XXXXXX, gallery image name: XXXXXX.Error: Future#WaitForCompletion: context has been cancelled: StatusCode=200 -- Original Error: context deadline exceeded}

Neden

VM Görüntü Oluşturucusu, görüntünün Azure İşlem Galerisi'ne eklenmesi ve çoğaltılması için zaman aşımına uğradı. Resim galeriye eklenmişse, görüntü derlemesinin başarılı olduğunu varsayabilirsiniz. Ancak VM Görüntü Oluşturucusu çoğaltmayı tamamlamak için Azure İşlem Galerisi'ni beklediğinden genel işlem başarısız oldu. Derleme başarısız olsa da çoğaltma devam eder. RunOutput dağıtımını denetleyerek görüntü sürümünün özelliklerini alabilirsiniz.

$runOutputName=<distributionRunOutput>
az resource show \
    --ids "/subscriptions/$subscriptionID/resourcegroups/$imageResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/$imageTemplateName/runOutputs/$runOutputName"  \
    --api-version=2020-02-14

Çözüm

değerini buildTimeoutInMinutesartırın.

Düşük Windows kaynak bilgileri olayları

Hata

[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT     azure-arm: Waiting for operation to complete (system performance: 1% cpu; 37% memory)...
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT     azure-arm: Waiting for operation to complete (system performance: 51% cpu; 35% memory)...
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT     azure-arm: Waiting for operation to complete (system performance: 21% cpu; 37% memory)...
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT     azure-arm: Waiting for operation to complete (system performance: 21% cpu; 36% memory)...
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT     azure-arm: Waiting for operation to complete (system performance: 90% cpu; 32% memory)...
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT     azure-arm: Waiting for the Windows Modules Installer to exit...
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer: 2020/04/30 23:38:58 [INFO] command 'PowerShell -ExecutionPolicy Bypass -OutputFormat Text -File C:/Windows/Temp/packer-windows-update-elevated.ps1' exited with code: 101
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT ==> azure-arm: Restarting the machine...
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer: 2020/04/30 23:38:58 [INFO] RPC endpoint: Communicator ended with: 101
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 [INFO] 1672 bytes written for 'stdout'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 [INFO] 0 bytes written for 'stderr'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 [INFO] RPC client: Communicator ended with: 101
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 [INFO] RPC endpoint: Communicator ended with: 101
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT ==> azure-arm: Waiting for machine to become available...
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer-provisioner-windows-update: 2020/04/30 23:38:58 [INFO] 1672 bytes written for 'stdout'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer-provisioner-windows-update: 2020/04/30 23:38:58 [INFO] 0 bytes written for 'stderr'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer-provisioner-windows-update: 2020/04/30 23:38:58 [INFO] RPC client: Communicator ended with: 101
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer: 2020/04/30 23:38:58 [INFO] starting remote command: shutdown.exe -f -r -t 0 -c "packer restart"
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer: 2020/04/30 23:38:58 [INFO] command 'shutdown.exe -f -r -t 0 -c "packer restart"' exited with code: 0
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer: 2020/04/30 23:38:58 [INFO] RPC endpoint: Communicator ended with: 0
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 [INFO] 0 bytes written for 'stderr'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 [INFO] 0 bytes written for 'stdout'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT ==> azure-arm: A system shutdown is in progress.(1115)
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 [INFO] RPC client: Communicator ended with: 0
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 [INFO] RPC endpoint: Communicator ended with: 0
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer-provisioner-windows-update: 2020/04/30 23:38:58 [INFO] 0 bytes written for 'stdout'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer-provisioner-windows-update: 2020/04/30 23:38:58 [INFO] 0 bytes written for 'stderr'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:58 packer-provisioner-windows-update: 2020/04/30 23:38:58 [INFO] RPC client: Communicator ended with: 0
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 packer: 2020/04/30 23:38:59 [INFO] starting remote command: shutdown.exe -f -r -t 60 -c "packer restart test"
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 packer: 2020/04/30 23:38:59 [INFO] command 'shutdown.exe -f -r -t 60 -c "packer restart test"' exited with code: 1115
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 packer: 2020/04/30 23:38:59 [INFO] RPC endpoint: Communicator ended with: 1115
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 [INFO] 0 bytes written for 'stdout'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 [INFO] 40 bytes written for 'stderr'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 [INFO] RPC client: Communicator ended with: 1115
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 [INFO] RPC endpoint: Communicator ended with: 1115
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 packer-provisioner-windows-update: 2020/04/30 23:38:59 [INFO] 40 bytes written for 'stderr'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 packer-provisioner-windows-update: 2020/04/30 23:38:59 [INFO] 0 bytes written for 'stdout'
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 packer-provisioner-windows-update: 2020/04/30 23:38:59 [INFO] RPC client: Communicator ended with: 1115
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER ERR 2020/04/30 23:38:59 packer-provisioner-windows-update: 2020/04/30 23:38:59 Retryable error: Machine not yet available (exit status 1115)
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT Build 'azure-arm' errored: unexpected EOF
[45f485cf-5a8c-4379-9937-8d85493bc791] PACKER OUT

Neden

Kaynak tükenmesi. Bu sorun genellikle windows update varsayılan derleme VM boyutu D1_V2 ile çalışırken görülür.

Çözüm

Derleme VM boyutunu artırın.

Derleme tamamlandı ama yapıt oluşturulmadı

Uyarı

[<log_id>] PACKER 2023/09/14 19:01:18 ui: Build 'azure-arm' finished after 3 minutes 13 seconds.
[<log_id>] PACKER 2023/09/14 19:01:18 ui:
[<log_id>] PACKER ==> Wait completed after 3 minutes 13 seconds
[<log_id>] PACKER 2023/09/14 19:01:18 ui:
[<log_id>] PACKER ==> Builds finished but no artifacts were created.
[<log_id>] PACKER 2023/09/14 19:01:18 [INFO] (telemetry) Finalizing.
[<log_id>] PACKER 2023/09/14 19:01:19 waiting for all plugin processes to complete...
[<log_id>] PACKER 2023/09/14 19:01:19 /aib/packerInput/packer-plugin-azure: plugin process exited
[<log_id>] PACKER 2023/09/14 19:01:19 /aib/packerInput/packer: plugin process exited
[<log_id>] PACKER 2023/09/14 19:01:19 /aib/packerInput/packer: plugin process exited
[<log_id>] PACKER 2023/09/14 19:01:19 /aib/packerInput/packer: plugin process exited
[<log_id>] PACKER Done exporting Packer logs to Azure Storage.

Çözüm

Yukarıdaki uyarı güvenle yoksayılabilir.

Görüntü oluşturma atlanıyor

Uyarı

[<log_id>] PACKER 2023/09/14 19:00:18 ui: ==> azure-arm:  -> Snapshot ID : '/subscriptions/<subscription_id>/resourceGroups/<resourcegroup_name>/providers/Microsoft.Compute/snapshots/<snapshot_name>'
[<log_id>] PACKER 2023/09/14 19:00:18 ui: ==> azure-arm: Skipping image creation...
[<log_id>] PACKER 2023/09/14 19:00:18 ui: ==> azure-arm:
[<log_id>] PACKER ==> azure-arm: Deleting individual resources ...
[<log_id>] PACKER 2023/09/14 19:00:18 packer-plugin-azure plugin: 202

Çözüm

Yukarıdaki uyarı güvenle yoksayılabilir.

Kaynak bulunamadı

Hata

  "provisioningState": "Succeeded",
  "lastRunStatus": {
   "startTime": "2020-05-01T00:13:52.599326198Z",
   "endTime": "2020-05-01T00:15:13.62366898Z",
   "runState": "Failed",
   "message": "network.InterfacesClient#UpdateTags: Failure responding to request: StatusCode=404 -- Original Error: autorest/azure: Service returned an error. Status=404 Code=\"ResourceNotFound\" Message=\"The Resource 'Microsoft.Network/networkInterfaces/aibpls7lz2e.nic.4609d697-be0a-4cb0-86af-49b6fe877fe1' under resource group 'IT_aibImageRG200_window2019VnetTemplate01_9988723b-af56-413a-9006-84130af0e9df' was not found.\""
  },

Neden

Eksik izinler.

Çözüm

VM Görüntü Oluşturucusu'nun gerekli tüm izinlere sahip olduğundan emin olmak için yeniden denetleyin.

İzinleri yapılandırma hakkında daha fazla bilgi için bkz . Azure CLI kullanarak VM Görüntü Oluşturucusu izinlerini yapılandırma veya PowerShell kullanarak VM Görüntü Oluşturucusu izinlerini yapılandırma.

Sysprep Zamanlama

Hata

[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: Write-Output '>>> Waiting for GA Service (RdAgent) to start ...'
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: while ((Get-Service RdAgent) -and ((Get-Service RdAgent).Status -ne 'Running')) { Start-Sleep -s 5 }
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: Write-Output '>>> Waiting for GA Service (WindowsAzureTelemetryService) to start ...'
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: while ((Get-Service WindowsAzureTelemetryService) -and ((Get-Service WindowsAzureTelemetryService).Status -ne 'Running')) { Start-Sleep -s 5 }
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: Write-Output '>>> Waiting for GA Service (WindowsAzureGuestAgent) to start ...'
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: while ((Get-Service WindowsAzureGuestAgent) -and ((Get-Service WindowsAzureGuestAgent).Status -ne 'Running')) { Start-Sleep -s 5 }
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: Write-Output '>>> Sysprepping VM ...'
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: if( Test-Path $Env:SystemRoot\system32\Sysprep\unattend.xml ) {
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm:   Remove-Item $Env:SystemRoot\system32\Sysprep\unattend.xml -Force
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: }
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: & $Env:SystemRoot\System32\Sysprep\Sysprep.exe /oobe /generalize /quiet /quit
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: while($true) {
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm:   $imageState = (Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\State).ImageState
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm:   Write-Output $imageState
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm:   if ($imageState -eq 'IMAGE_STATE_GENERALIZE_RESEAL_TO_OOBE') { break }
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm:   Start-Sleep -s 5
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: }
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: Write-Output '>>> Sysprep complete ...'
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: >>> Waiting for GA Service (RdAgent) to start ...
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: >>> Waiting for GA Service (WindowsAzureTelemetryService) to start ...
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: >>> Waiting for GA Service (WindowsAzureGuestAgent) to start ...
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: >>> Sysprepping VM ...
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_COMPLETE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm: Get-Service : Cannot find any service with service name 'WindowsAzureGuestAgent'.
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm: At C:\DeprovisioningScript.ps1:6 char:9
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm: + while ((Get-Service WindowsAzureGuestAgent) -and ((Get-Service Window ...
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm: +         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm:     + CategoryInfo          : ObjectNotFound: (WindowsAzureGuestAgent:String) [Get-Service], ServiceCommandException
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm:     + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm:
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
...
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT     azure-arm: IMAGE_STATE_UNDEPLOYABLE
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER ERR 2020/05/05 22:26:17 Cancelling builder after context cancellation context canceled
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT Cancelling build after receiving terminated
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER ERR 2020/05/05 22:26:17 packer: 2020/05/05 22:26:17 Cancelling provisioning due to context cancellation: context canceled
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm:
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER ERR 2020/05/05 22:26:17 packer: 2020/05/05 22:26:17 Cancelling hook after context cancellation context canceled
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER OUT ==> azure-arm: The resource group was not created by Packer, deleting individual resources ...
[922bdf36-b53c-4e78-9cd8-6b70b9674685] PACKER ERR ==> azure-arm: The resource group was not created by Packer, deleting individual resources ...

Neden

Bunun nedeni D1_V2 VM boyutu nedeniyle bir zamanlama sorunu olabilir. Özelleştirmeler sınırlıysa ve üç saniyeden kısa bir süre içinde çalıştırılıyorsa, Sysprep sağlamayı kaldırmaya yönelik komutlar VM Görüntü Oluşturucusu tarafından çalıştırılır. VM Görüntü Oluşturucusu sağlamayı Sysprep kaldırdığında, komut Tam olarak yüklenmemiş ve zamanlama sorununa neden olabilecek WindowsAzureGuestAgent'ı denetler.

Çözüm

Zamanlama sorununu önlemek için VM boyutunu artırabilir veya 60 saniyelik bir PowerShell uyku özelleştirmesi ekleyebilirsiniz.

Kayıtlı olmayan Azure Container Instances sağlayıcısı

Hata

Azure Container Instances provider not registered for your subscription.

Neden

Şablon aboneliğinizde Kayıtlı Azure Container Instances sağlayıcısı yok.

Çözüm

Şablon aboneliğiniz için Azure Container Instances sağlayıcısını kaydedin ve Azure CLI veya PowerShell komutlarını ekleyin:

  • Azure CLI: az provider register -n Microsoft.ContainerInstance
  • PowerShell: Register-AzResourceProvider -ProviderNamespace Microsoft.ContainerInstance

Azure Container Instances kotası aşıldı

Hata

Azure Container Instances quota exceeded"

Neden

Azure Görüntü Oluşturucusu'nun başarıyla görüntü oluşturması için aboneliğinizde yeterli Azure Container Instances (ACI) kotası yok.

Çözüm

Azure Görüntü Oluşturucusu'na ACI kotası sağlamak için aşağıdakileri yapabilirsiniz:

  • Azure Image Builder'ın kotasını kullanılabilir hale getirmek için aboneliğinizdeki diğer Azure Container Instances kullanımını arayın ve gereksiz örnekleri kaldırın.
  • Azure Image Builder, derleme gerçekleşirken ACI'yi yalnızca geçici olarak dağıtır. Derleme tamamlandıktan sonra bu örnekler silinir. Aboneliğinizde çok fazla eşzamanlı görüntü derlemesi gerçekleştiriliyorsa, görüntü derlemelerinin bazılarını geciktirebilirsiniz. Bu, aboneliğinizde ACI'nin eşzamanlı kullanımını azaltır. Görüntü şablonlarınız tetikleyiciler kullanılarak otomatik görüntü derlemeleri için ayarlandıysa, bu tür başarısız derlemeler Azure Görüntü Oluşturucusu tarafından otomatik olarak yeniden denenecektir.
  • Aboneliğinizin geçerli ACI sınırları görüntü oluşturma senaryolarınızı desteklemek için çok düşükse, ACI kotanızda artış isteyebilirsiniz.

Dekont

Yalıtılmış Görüntü Derlemeleri için ACI kaynakları gereklidir.

Belirli bir süre içinde çok fazla Azure Container Instance dağıtıldı

Hata

"Belirli bir süre içinde çok fazla Azure Container Instance dağıtıldı"

Neden

Aboneliğinizde, Azure Görüntü Oluşturucusu'nun görüntüleri eşzamanlı olarak başarıyla oluşturması için yeterli Azure Container Instances (ACI) kotası yok.

Çözüm

Aşağıdakileri yapabilirsiniz:

  • Başarısız derlemelerinizi daha az eşzamanlı bir şekilde yeniden deneyin.
  • Aboneliğinizin geçerli ACI sınırları görüntü oluşturma senaryolarınızı desteklemek için çok düşükse, ACI kotanızda artış isteyebilirsiniz.

Yalıtılmış Görüntü Derleme hatası

Hata

Yalıtılmış Görüntü Derlemesi nedeniyle Azure Image Builder derlemeleri başarısız oluyor.

Neden

Azure Image Builder derlemeleri, bu belgenin başka bir yerinde listelenen nedenlerle başarısız olabilir. Ancak senaryonuza, abonelik kotalarınıza veya beklenmedik bir hizmet hatasına bağlı olarak Yalıtılmış Görüntü Derlemeleri nedeniyle derlemenin başarısız olma olasılığı düşüktür. Daha fazla bilgi için bkz . Yalıtılmış Görüntü Derlemeleri.

Çözüm

Yalıtılmış Görüntü Derlemeleri nedeniyle bir derlemenin başarısız olduğunu belirlerseniz aşağıdakileri yapabilirsiniz:

Azure Image Builder şu anda Yalıtılmış Görüntü Derlemeleri dağıtma aşamasındadır. Belirli görüntü şablonları Yalıtılmış Görüntü Derlemelerine bağlı değildir ve aynı görüntü şablonu farklı derlemeler sırasında Yalıtılmış Görüntü Derlemeleri'ni kullanabilir veya kullanmayabilir. Yalıtılmış Görüntü Derlemeleri olmadan derlemenizi geçici olarak çalıştırmak için aşağıdakileri yapabilirsiniz.

  • Derlemenizi yeniden deneyin. Görüntü Şablonları Yalıtılmış Görüntü Derlemeleri özelliğine bağlı olmadığından, bir derlemenin yeniden denenmesi, Yalıtılmış Görüntü Derlemeleri olmadan yeniden çalıştırma olasılığı yüksektir.

Bu çözümlerden hiçbiri başarısız görüntü derlemelerini azaltmazsa aboneliğinizi Yalıtılmış Görüntü Derlemeleri'nin dışında geçici olarak geri çevirmek için Azure desteği başvurabilirsiniz. Daha fazla bilgi için bkz. Azure destek isteği oluşturma.

Dekont

Yalıtılmış Görüntü Derlemeleri sonunda tüm bölgelerde ve şablonlarda etkinleştirilecektir. Bu nedenle, yukarıdaki azaltmalar geçici olarak kabul edilmeli ve derleme hatalarının temel nedeni ele alınmalıdır.

Bağlam iptal bağlamı iptal edildikten sonra derleme iptal edilir

Hata

PACKER ERR 2020/03/26 22:11:23 Cancelling builder after context cancellation context canceled
PACKER OUT Cancelling build after receiving terminated
PACKER ERR 2020/03/26 22:11:23 packer-builder-azure-arm plugin: Cancelling hook after context cancellation context canceled
..
PACKER ERR 2020/03/26 22:11:23 packer-builder-azure-arm plugin: Cancelling provisioning due to context cancellation: context canceled
PACKER ERR 2020/03/26 22:11:25 packer-builder-azure-arm plugin: [ERROR] Remote command exited without exit status or exit signal.
PACKER ERR 2020/03/26 22:11:25 packer-builder-azure-arm plugin: [INFO] RPC endpoint: Communicator ended with: 2300218
PACKER ERR 2020/03/26 22:11:25 [INFO] 148974 bytes written for 'stdout'
PACKER ERR 2020/03/26 22:11:25 [INFO] 0 bytes written for 'stderr'
PACKER ERR 2020/03/26 22:11:25 [INFO] RPC client: Communicator ended with: 2300218
PACKER ERR 2020/03/26 22:11:25 [INFO] RPC endpoint: Communicator ended with: 2300218

Neden

VM Görüntü Oluşturucusu, derleme VM'sine bağlanmak için 22 (Linux) veya 5986 (Windows) numaralı bağlantı noktasını kullanır. Bu durum, bir görüntü derlemesi sırasında hizmetin derleme VM'sinin bağlantısı kesildiğinde oluşur. Bağlantı kesilmesinin nedenleri farklılık gösterebilir, ancak betikte bir güvenlik duvarını etkinleştirmek veya yapılandırmak daha önce bahsedilen bağlantı noktalarını engelleyebilir.

Çözüm

Güvenlik duvarı değişiklikleri veya etkinleştirme ya da SSH ya da WinRM'de yapılan değişiklikler için betiklerinizi gözden geçirin ve tüm değişikliklerin daha önce bahsedilen bağlantı noktalarında hizmet ile derleme VM'si arasında sürekli bağlantıya izin verin. Daha fazla bilgi için bkz . VM Görüntü Oluşturucusu ağ seçenekleri.

Derlemenin başlarında günlükte JWT hataları

Hata

Derleme işleminin başlarında derleme başarısız olur ve günlük bir JSON Web Belirteci (JWT) hatası gösterir:

PACKER OUT Error: Failed to prepare build: "azure-arm"
PACKER ERR
PACKER OUT
PACKER ERR * client_jwt will expire within 5 minutes, please use a JWT that is valid for at least 5 minutes
PACKER OUT 1 error(s) occurred:

Neden

buildTimeoutInMinutes Şablondaki değer 1 ila 5 dakika olarak ayarlanır.

Çözüm

VM Görüntü Oluşturucusu şablonu oluşturma bölümünde açıklandığı gibi, zaman aşımı varsayılanı kullanmak için 0 olarak veya varsayılanı geçersiz kılmak için 5 dakikadan uzun olarak ayarlanmalıdır. Varsayılan veya en az 6 dakika kullanmak için şablonunuzun zaman aşımını 0 olarak değiştirin.

Kaynak silme hataları

Hata

Ara kaynaklar derlemenin sonuna doğru temizlenir ve özelleştirme günlüğünde çeşitli kaynak silme hataları gösterebilirsiniz:

PACKER OUT ==> azure-arm: Error deleting resource. Will retry.
...
PACKER OUT ==> azure-arm: Error: network.PublicIPAddressesClient#Delete: Failure sending request: StatusCode=0 -- Original Error: Code="PublicIPAddressCannotBeDeleted" Message=...
...
PACKER ERR 2022/03/07 18:43:06 packer-plugin-azure plugin: 2022/03/07 18:43:06 Retryable error: network.SecurityGroupsClient#Delete: Failure sending request: StatusCode=0 -- Original Error: Code="InUseNetworkSecurityGroupCannotBeDeleted"...

Neden

Kaynak silme işlemleri birkaç kez yeniden denendiğinden ve normalde başarılı olduğundan bu hata günlüğü iletileri çoğunlukla zararsızdır. Başarılı bir ileti görene kadar silme günlüklerini izlemeye devam ederek bunu doğrulayabilirsiniz. Alternatif olarak, hazırlama kaynak grubunu inceleyip kaynağın silinip silinmediğini onaylayabilirsiniz.

Bu gözlemleri yapmak özellikle derleme hatalarında önemlidir; burada bu hata iletileri, gerçek hatalar başka bir yerde olsa bile hataların nedeninin bunlar olduğu sonucuna varmanıza neden olabilir.

Hata

Resimler şablon silme işleminde takıldığında özelleştirme günlüğünde aşağıdaki hata gösteriliyor olabilir:

error deleting resource id /subscriptions/<subscriptionID>/resourceGroups/<rgName>/providers/Microsoft.Network/networkInterfaces/<networkInterfacName>: resources.Client#DeleteByID: Failure sending request: StatusCode=400 --
Original Error: Code="NicInUseWithPrivateEndpoint"
Message="Network interface /subscriptions/<subscriptionID>/resourceGroups/<rgName>/providers/Microsoft.Network/networkInterfaces/<networkInterfacName> cannot be deleted because it is currently in use with an private endpoint (/subscriptions/<subscriptionID>/resourceGroups/<rgName>/providers/Microsoft.Network/privateEndpoints/<pIname>)." Details=[]

Neden

Ağ arabirimi şu anda özel bir uç noktayla kullanımda olduğundan hata oluşur.

Çözüm

Sorunu çözmek için aşağıdaki kaynakları belirli bir sırayla tek tek silin:

  1. Özel uç nokta bağlantısı. Bunu, özel bağlantı hizmeti kaynak sayfasındaki "özel uç nokta bağlantıları" sekmesine giderek özel bağlantı hizmeti kaynağında bulabilirsiniz.
  2. Özel bağlantı hizmeti.
  3. Ağ arabirimi ve yük dengeleyici.
  4. Kaynak Grubu.
  5. Resim şablonu.

Ek yardım için Azure desteği başvurarak takılan silme hatasını çözebilirsiniz.

Güncelleştirme isteğinde bulunmayan hedefi dağıtma

Hata

Validation failed: Distribute target with Runoutput name <runoutputname> not found in the update request. Deleting a distribution target is not allowed.

Neden

Yama isteği gövdesinde mevcut bir dağıtım hedefi bulunamadığında bu hata oluşur.

Çözüm

Dağıtım dizisi, yeni hedefler (varsa) olan tüm dağıtım hedeflerini, değişiklik yapılmadan mevcut hedefleri ve güncelleştirilmiş hedefleri içermelidir. Mevcut bir dağıtım hedefini kaldırmak istiyorsanız, görüntü şablonunu silin ve yeniden oluşturun. Dağıtım hedefinin silinmesi şu anda Patch API'sinde desteklenmediğinden.

Eksik gerekli alanlar

Hata

Validation failed: 'ImageTemplate.properties.distribute[<index>]': Missing field <fieldname>. Please review http://aka.ms/azvmimagebuildertmplref for details on fields required in the Image Builder Template.

Neden

Bu hata, bir dağıtılmış hedefte gerekli bir alan eksik olduğunda oluşur.

Çözüm

İstek oluştururken, değişiklik olmasa bile lütfen bir dağıtım hedefindeki tüm gerekli alanı belirtin.

DevOps görevleri

Görevle ilgili sorunları giderme

Görev yalnızca özelleştirme sırasında bir hata oluşursa başarısız olur. Bu durumda, görev hatayı bildirir ve sorunu tanımlayabilmeniz için hazırlama kaynak grubundan günlüklerle ayrılır.

Günlüğü bulmak için şablon adını bilmeniz gerekir. İşlem hattı>başarısız derlemesine gidin ve ardından VM Görüntü Oluşturucusu DevOps görevinde detaya gidin.

Günlüğü ve şablon adını görürsünüz:

start reading task parameters...
found build at:  /home/vsts/work/r1/a/_ImageBuilding/webapp
end reading parameters
getting storage account details for aibstordot1556933914
created archive /home/vsts/work/_temp/temp_web_package_21475337782320203.zip
Source for image:  { type: 'SharedImageVersion',
  imageVersionId: '/subscriptions/<subscriptionID>/resourceGroups/<rgName>/providers/Microsoft.Compute/galleries/<galleryName>/images/<imageDefName>/versions/<imgVersionNumber>' }
template name:  t_1556938436xxx
  1. Azure portalına gidin, kaynak grubunda şablon adını arayın ve ardından IT_* yazarak kaynak grubunu arayın.
  2. Depolama hesabı adı >blob kapsayıcı>günlüklerini> seçin.

Başarılı derlemelerle ilgili sorunları giderme

Bazen başarılı derlemeleri araştırmanız ve günlüklerini gözden geçirmeniz gerekebilir. Daha önce belirtildiği gibi, görüntü derlemesi başarılı olursa, günlükleri içeren hazırlama kaynak grubu temizleme işleminin bir parçası olarak silinir. Ancak otomatik temizlemeyi önlemek için satır içi komutundan sonra bir sleep ekleyebilir ve derleme duraklatılırken günlükleri görüntüleyebilirsiniz. Bunun için aşağıdakileri yapın:

  1. Write-Host / Echo "Sleep" ekleyerek satır içi komutu güncelleştirin. Bu size günlükte arama yapmak için zaman verir.
  2. sleep Start-Sleep veya Sleep Linux komutunu kullanarak en az 10 dakikalık bir değer ekleyin.
  3. Günlük konumunu belirlemek için bu yöntemi kullanın ve sonra günlük konumuna gelene kadar günlüğü indirmeye veya denetlemeye sleepdevam edin.

İşlem iptal edildi

Hata

2020-05-05T18:28:24.9280196Z ##[section]Starting: Azure VM Image Builder Task
2020-05-05T18:28:24.9609966Z ==============================================================================
2020-05-05T18:28:24.9610739Z Task         : Azure VM Image Builder Test
2020-05-05T18:28:24.9611277Z Description  : Build images using Azure Image Builder resource provider.
2020-05-05T18:28:24.9611608Z Version      : 1.0.18
2020-05-05T18:28:24.9612003Z Author       : Microsoft Corporation
2020-05-05T18:28:24.9612718Z Help         : For documentation, and end to end example, please visit: http://aka.ms/azvmimagebuilderdevops
2020-05-05T18:28:24.9613390Z ==============================================================================
2020-05-05T18:28:26.0651512Z start reading task parameters...
2020-05-05T18:28:26.0673377Z found build at:  d:\a\r1\a\_AppsAndImageBuilder\webApp
2020-05-05T18:28:26.0708785Z end reading parameters
2020-05-05T18:28:26.0745447Z getting storage account details for aibstagstor1565047758
2020-05-05T18:28:29.8812270Z created archive d:\a\_temp\temp_web_package_09737279437949953.zip
2020-05-05T18:28:33.1568013Z Source for image:  { type: 'PlatformImage',
2020-05-05T18:28:33.1584131Z   publisher: 'MicrosoftWindowsServer',
2020-05-05T18:28:33.1585965Z   offer: 'WindowsServer',
2020-05-05T18:28:33.1592768Z   sku: '2016-Datacenter',
2020-05-05T18:28:33.1594191Z   version: '14393.3630.2004101604' }
2020-05-05T18:28:33.1595387Z template name:  t_1588703313152
2020-05-05T18:28:33.1597453Z starting put template...
2020-05-05T18:28:52.9278603Z put template:  Succeeded
2020-05-05T18:28:52.9281282Z starting run template...
2020-05-05T19:33:14.3923479Z ##[error]The operation was canceled.
2020-05-05T19:33:14.3939721Z ##[section]Finishing: Azure VM Image Builder Task

Neden

Derleme bir kullanıcı tarafından iptal edilmediyse Azure DevOps Kullanıcı Aracısı tarafından iptal edildi. Büyük olasılıkla Azure DevOps özellikleri nedeniyle 1 saatlik zaman aşımı gerçekleşmiştir. Özel proje ve aracı kullanıyorsanız 60 dakikalık derleme süresi elde edersiniz. Derleme zaman aşımını aşarsa DevOps, çalışan görevi iptal eder.

Azure DevOps özellikleri ve sınırlamaları hakkında daha fazla bilgi için bkz . Microsoft tarafından barındırılan aracılar.

Çözüm

Kendi DevOps aracılarınızı barındırabilir veya derlemenizin süresini kısaltmak için arama yapabilirsiniz. Örneğin, Azure İşlem Galerisi'ne dağıtıyorsanız, bunları bir bölgeye çoğaltabilir veya zaman uyumsuz olarak çoğaltabilirsiniz.

Yavaş Windows oturumu açma

Hata

Bu hata, VM Görüntü Oluşturucusu'nu kullanarak bir Windows 10 görüntüsü oluşturduğunuzda, görüntüden bir VM oluşturduğunuzda ve ardından Uzak Masaüstü Protokolü'nü (RDP) kullandığınızda oluşabilir. İlk oturum açma ekranında birkaç dakika beklersiniz ve mavi ekran aşağıdaki iletiyi görüntüler:

Please wait for the Windows Modules Installer

Çözüm

  1. Görüntü derlemesinde şunların olduğundan emin olun:

    • Son özelleştirme olarak bir Windows Yeniden Başlatma özelleştiricisi eklemek için bekleyen yeniden başlatma gerekmez.
    • Tüm yazılım yüklemesi tamamlandı.
  2. /mode:vm seçeneğini VM Image Builder'ın kullandığı varsayılan Sysprep değere ekleyin. Daha fazla bilgi için "VM Görüntü Oluşturucusu görüntülerinden oluşturulan VM'ler başarıyla oluşturulmuyor" altındaki "Komutları geçersiz kıl" bölümüne gidin.

VM Görüntü Oluşturucusu görüntülerinden oluşturulan VM'ler başarıyla oluşturulmuyor

Varsayılan olarak, VM Görüntü Oluşturucusu görüntüyü genelleştirmek için her görüntü özelleştirme aşamasının sonunda sağlamayı kaldırma kodu çalıştırır. Bir görüntüyü genelleştirmek, birden çok VM oluşturmak üzere yeniden kullanmak üzere ayarlamaktır. İşlemin bir parçası olarak konak adı, kullanıcı adı gibi VM ayarlarını geçirebilirsiniz. Windows'da, VM Görüntü Oluşturucusu öğesini çalıştırır Sysprepve Linux'ta VM Görüntü Oluşturucusu çalıştırır waagent -deprovision.

Windows'da VM Görüntü Oluşturucusu genel Sysprep bir komut kullanır. Ancak, bu komut her başarılı Windows genelleştirmesi için uygun olmayabilir. VM Görüntü Oluşturucusu ile komutunu özelleştirebilirsiniz Sysprep . VM Görüntü Oluşturucusu'nun komutu başarıyla çalıştırmakla Sysprep sorumlu bir görüntü otomasyon aracı olduğunu unutmayın. Ancak görüntünüzü yeniden kullanılabilir hale getirmek için farklı Sysprep komutlara ihtiyacınız olabilir. Linux'ta VM Görüntü Oluşturucusu genel waagent -deprovision+user bir komut kullanır. Daha fazla bilgi için bkz . Microsoft Azure Linux Aracısı belgeleri.

Mevcut bir özelleştirmeyi geçiriyorsanız ve çeşitli Sysprep veya waagent komutlar kullanıyorsanız VM Görüntü Oluşturucusu genel komutlarını deneyebilirsiniz. VM oluşturma işlemi başarısız olursa önceki Sysprep veya waagent komutlarınızı kullanın.

Windows özel görüntüsü oluşturmak için VM Görüntü Oluşturucusu'nu başarıyla kullandığınızı, ancak görüntüden başarıyla vm oluşturamadığınızı varsayalım. Örneğin, VM oluşturma işlemi tamamlayamaz veya zaman aşımına uğrrur. Bu olayda aşağıdakilerden birini yapın:

  • Windows Server Sysprep belgelerini gözden geçirin.
  • Windows Server Sysprep Müşteri Hizmetleri Destek ekibiyle bir destek isteği gönderin. Sorununuzu gidermenize yardımcı olabilir ve doğru Sysprep komutla ilgili önerilerde bulunabilirler.

Komut konumları ve dosya adları

Windows'da:

c:\DeprovisioningScript.ps1

Linux'ta:

/tmp/DeprovisioningScript.sh

Komut Sysprep : Windows

Write-Output '>>> Waiting for GA Service (RdAgent) to start ...'
while ((Get-Service RdAgent).Status -ne 'Running') { Start-Sleep -s 5 }
Write-Output '>>> Waiting for GA Service (WindowsAzureTelemetryService) to start ...'
while ((Get-Service WindowsAzureTelemetryService) -and ((Get-Service WindowsAzureTelemetryService).Status -ne 'Running')) { Start-Sleep -s 5 }
Write-Output '>>> Waiting for GA Service (WindowsAzureGuestAgent) to start ...'
while ((Get-Service WindowsAzureGuestAgent).Status -ne 'Running') { Start-Sleep -s 5 }
Write-Output '>>> Sysprepping VM ...'
if( Test-Path $Env:SystemRoot\system32\Sysprep\unattend.xml ) {
  Remove-Item $Env:SystemRoot\system32\Sysprep\unattend.xml -Force
}
& $Env:SystemRoot\System32\Sysprep\Sysprep.exe /oobe /generalize /quiet /quit
while($true) {
  $imageState = (Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\State).ImageState
  Write-Output $imageState
  if ($imageState -eq 'IMAGE_STATE_GENERALIZE_RESEAL_TO_OOBE') { break }
  Start-Sleep -s 5
}
Write-Output '>>> Sysprep complete ...'

Komut -deprovision : Linux

sudo /usr/sbin/waagent -force -deprovision+user && export HISTSIZE=0 && sync

Komutları geçersiz kılma

Komutları geçersiz kılmak için PowerShell veya kabuk betik hazırlayıcılarını kullanarak tam dosya adıyla komut dosyalarını oluşturun ve bunları daha önce listelenen dizinlere yerleştirin. VM Görüntü Oluşturucusu bu komutları okur ve çıktıyı customization.log dosyasına yazar.

Destek alma

Rehberliğe başvurdunuz ve sorun yaşamaya devam ediyorsanız bir destek olayı açabilirsiniz. Doğru ürün ve destek konusunu seçtiğinizden emin olun. Bunu yaptığınızda Azure VM Görüntü Oluşturucusu destek ekibiyle bağlantı kurmanız sağlanır.

Servis talebi ürününü seçme:

Product Family: Azure
Product: Virtual Machine Running (Window\Linux)
Support Topic: Azure Features
Support Subtopic: Azure Image Builder

Sonraki adımlar

Daha fazla bilgi için bkz . VM Görüntü Oluşturucu'ya genel bakış.