Share via


Dağıtım geçmişinden otomatik silme işlemleri

Bir şablonu her dağıttığınızda, dağıtım hakkındaki bilgiler dağıtım geçmişine yazılır. Her kaynak grubu, dağıtım geçmişinde 800 dağıtımla sınırlıdır.

Azure Resource Manager, siz sınıra yaklaştığınızda dağıtımları geçmişinizden otomatik olarak siler. Otomatik silme, geçmişteki davranıştan kaynaklanan bir değişikliktir. Daha önce hata almamak için dağıtım geçmişini el ile silmeniz gerekiyordu. Bu değişiklik 6 Ağustos 2020'de uygulandı.

Otomatik silme işlemleri kaynak grubu ve abonelik dağıtımları için desteklenir. Şu anda yönetim grubu ve kiracı dağıtımları geçmişindeki dağıtımlar otomatik olarak silinmez.

Not

Bir dağıtımın geçmişten silinmesi, dağıtılan kaynakların hiçbirini etkilemez.

Dağıtımlar silindiğinde

700 dağıtımı aştığınızda dağıtımlar geçmişinizden silinir. Azure Resource Manager, geçmiş 600'e inene kadar dağıtımları siler. En eski dağıtımlar her zaman önce silinir.

Dağıtım geçmişi silme diyagramı.

Önemli

Kaynak grubunuz zaten 800 sınırındaysa, sonraki dağıtımınız bir hatayla başarısız olur. Otomatik silme işlemi hemen başlar. Kısa bir süre bekledikten sonra dağıtımınızı yeniden deneyebilirsiniz.

Dağıtımlara ek olarak, durum işlemini çalıştırdığınızda veya bir dağıtımı doğruladığınızda silmeleri de tetiklersiniz.

Bir dağıtıma geçmişteki adla aynı adı verdiğinizde, dağıtıma geçmişteki yerini sıfırlarsınız. Dağıtım, geçmişteki en yeni yere taşınır. Bir hatadan sonra dağıtıma geri döndüğünüzde de dağıtımın yerini sıfırlarsınız.

Silmeleri engelleyen kilitleri kaldırma

Kaynak grubunda CanNotDelete kilidiniz varsa, bu kaynak grubunun dağıtımları silinemez. Dağıtım geçmişindeki otomatik silmelerden yararlanmak için kilidi kaldırmanız gerekir.

PowerShell'i kullanarak kilidi silmek için aşağıdaki komutları çalıştırın:

$lockId = (Get-AzResourceLock -ResourceGroupName lockedRG).LockId
Remove-AzResourceLock -LockId $lockId

Kilidi silmek için Azure CLI kullanmak için aşağıdaki komutları çalıştırın:

lockid=$(az lock show --resource-group lockedRG --name deleteLock --output tsv --query id)
az lock delete --ids $lockid

Gerekli izinler

Silme işlemleri, şablonu dağıtan kullanıcının kimliği altında istenir. Dağıtımları silmek için kullanıcının Microsoft.Resources/deployments/delete eylemine erişimi olmalıdır. Kullanıcının gerekli izinleri yoksa, dağıtımlar geçmişten silinmez.

Geçerli kullanıcının gerekli izinleri yoksa, bir sonraki dağıtım sırasında otomatik silme işlemi yeniden deneniyor.

Otomatik silmeleri geri çevirme

Geçmişteki otomatik silmeleri geri çevirebilirsiniz. Bu seçeneği yalnızca dağıtım geçmişini kendiniz yönetmek istediğinizde kullanın. Geçmişe yönelik 800 dağıtım sınırı hala zorunludur. 800 dağıtımı aşarsanız bir hata alırsınız ve dağıtımınız başarısız olur.

Otomatik silmeleri devre dışı bırakmak için özellik bayrağını Microsoft.Resources/DisableDeploymentGrooming kaydedin. Özellik bayrağını kaydettiğinizde, Azure aboneliğinin tamamı için otomatik silmeleri geri çevirebilirsiniz. Yalnızca belirli bir kaynak grubunu geri çeviremezsiniz. Otomatik silmeleri yeniden etkinleştirmek için özellik bayrağının kaydını kaldırın.

PowerShell için Register-AzProviderFeature komutunu kullanın.

Register-AzProviderFeature -ProviderNamespace Microsoft.Resources -FeatureName DisableDeploymentGrooming

Aboneliğinizin geçerli durumunu görmek için şunu kullanın:

Get-AzProviderFeature -ProviderNamespace Microsoft.Resources -FeatureName DisableDeploymentGrooming

Otomatik silmeleri yeniden etkinleştirmek için Azure REST API veya Azure CLI kullanın.

Sonraki adımlar