Automatyczne usuwanie z historii wdrożenia

Za każdym razem, gdy wdrażasz szablon, informacje o wdrożeniu są zapisywane w historii wdrażania. Każda grupa zasobów jest ograniczona do 800 wdrożeń w swojej historii wdrażania.

Usługa Azure Resource Manager automatycznie usuwa wdrożenia z historii w miarę zbliżania się do limitu. Automatyczne usuwanie to zmiana zachowania z przeszłości. Wcześniej trzeba było ręcznie usunąć wdrożenia z historii wdrażania, aby uniknąć wystąpienia błędu. Ta zmiana została wdrożona 6 sierpnia 2020 r.

Automatyczne usuwanie jest obsługiwane w przypadku wdrożeń grup zasobów i subskrypcji. Obecnie wdrożenia w historii wdrożeń grup zarządzania i dzierżaw nie są automatycznie usuwane.

Uwaga

Usunięcie wdrożenia z historii nie ma wpływu na żadne wdrożone zasoby.

Po usunięciu wdrożeń

Wdrożenia są usuwane z historii po przekroczeniu 700 wdrożeń. Usługa Azure Resource Manager usuwa wdrożenia, dopóki historia nie będzie mieć 600. Najstarsze wdrożenia są zawsze najpierw usuwane.

Diagram usuwania historii wdrażania.

Ważne

Jeśli grupa zasobów znajduje się już w limicie 800, następne wdrożenie kończy się niepowodzeniem z powodu błędu. Proces automatycznego usuwania rozpoczyna się natychmiast. Możesz ponowić próbę wdrożenia po krótkim oczekiwaniu.

Oprócz wdrożeń można również wyzwalać usunięcia po uruchomieniu operacji analizy co-jeżeli lub zweryfikowaniu wdrożenia.

Jeśli nadasz wdrożeniu taką samą nazwę jak w historii, zresetujesz jego miejsce w historii. Wdrożenie zostanie przeniesione do najnowszego miejsca w historii. Możesz również zresetować miejsce wdrożenia po powrocie do tego wdrożenia po wystąpieniu błędu.

Usuwanie blokad blokujących usuwanie

Jeśli masz blokadę CanNotDelete w grupie zasobów, nie można usunąć wdrożeń dla tej grupy zasobów. Aby móc korzystać z automatycznych operacji usuwania w historii wdrażania, należy usunąć blokadę.

Aby usunąć blokadę za pomocą programu PowerShell, uruchom następujące polecenia:

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

Aby usunąć blokadę za pomocą interfejsu wiersza polecenia platformy Azure, uruchom następujące polecenia:

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

Wymagane uprawnienia

Żądania usunięcia są wymagane w ramach tożsamości użytkownika, który wdrożył szablon. Aby usunąć wdrożenia, użytkownik musi mieć dostęp do akcji Microsoft.Resources/deployments/delete . Jeśli użytkownik nie ma wymaganych uprawnień, wdrożenia nie są usuwane z historii.

Jeśli bieżący użytkownik nie ma wymaganych uprawnień, automatyczne usunięcie zostanie ponowione podczas następnego wdrożenia.

Rezygnacja z automatycznego usuwania

Możesz zrezygnować z automatycznego usuwania z historii. Tej opcji należy używać tylko wtedy, gdy chcesz samodzielnie zarządzać historią wdrożenia. Limit 800 wdrożeń w historii jest nadal wymuszany. Jeśli przekroczysz 800 wdrożeń, zostanie wyświetlony błąd i wdrożenie zakończy się niepowodzeniem.

Aby wyłączyć automatyczne usuwanie, zarejestruj flagę Microsoft.Resources/DisableDeploymentGrooming funkcji. Po zarejestrowaniu flagi funkcji zrezygnowasz z automatycznego usuwania dla całej subskrypcji platformy Azure. Nie można zrezygnować tylko z określonej grupy zasobów. Aby ponownie włączyć automatyczne usuwanie, wyrejestruj flagę funkcji.

W przypadku programu PowerShell użyj polecenia Register-AzProviderFeature.

Register-AzProviderFeature -ProviderNamespace Microsoft.Resources -FeatureName DisableDeploymentGrooming

Aby wyświetlić bieżący stan subskrypcji, użyj:

Get-AzProviderFeature -ProviderNamespace Microsoft.Resources -FeatureName DisableDeploymentGrooming

Aby ponownie usunąć automatyczne, użyj interfejsu API REST platformy Azure lub interfejsu wiersza polecenia platformy Azure.

Następne kroki