Tutorial: Limpar os recursos
À medida que você passa pelos tutoriais de análise de escala de nuvem, pode encontrar problemas de implantação. Para começar de novo, use os scripts a seguir para remover os recursos do tutorial que você criou na assinatura do Azure.
Você também pode usar os scripts para remover todos os recursos de tutorial criados na assinatura, quando terminar todas as etapas nos tutoriais.
Aviso
Nos scripts a seguir, um filtro identifica e remove os grupos de recursos que você criou nos tutoriais. Remover grupos de recursos usando esses scripts é uma ação que não pode ser revertida. Insira o prefixo correto nos scripts. Por exemplo, nos tutoriais, esses espaços reservados são usados para se referir aos recursos do tutorial que você implanta:
<DMLZ-prefix>
refere-se ao prefixo que você inseriu quando criou sua implantação da zona de destino de gerenciamento de dados.<DLZ-prefix>
refere-se ao prefixo que você inseriu quando criou sua implantação da zona de destino de dados.<DP-prefix>
refere-se ao prefixo que você inseriu quando criou sua implantação do produto de dados.
Usar o PowerShell para limpeza de um único grupo de recursos
# Clean up PowerShell resources.
$prefix = '<your prefix>'
$subscriptionId = '<subscription ID>'
# Set the subscription.
Set-AzContext -SubscriptionId $subscriptionId
# List all resource groups that will be removed.
Get-AzResourceGroup | ? ResourceGroupName -match $prefix | Select-Object ResourceGroupName
# Remove the resource groups shown in the preceding command.
Get-AzResourceGroup | ? ResourceGroupName -match $prefix | Remove-AzResourceGroup -AsJob -Force
Usar o Bash na CLI do Azure para limpeza de um único grupo de recursos
# Clean up resources for Azure Cloud Shell, macOS, and Linux.
prefix='<prefix>'
subscription='<subscription ID>'
# Set the subscription.
az account set --subscription $subscription
# Review the query to ensure the resource groups match the specified prefix.
az group list -o tsv --query "[?contains(@.name, '$prefix')==\`true\`].name"
# Delete resource groups that match the prefix.
for rg in $(az group list -o tsv --query "[?contains(@.name, '$prefix')==\`true\`].name");
do
az group delete --name $rg -y --no-wait;
done
Usar o PowerShell para limpeza de um vários grupos de recursos
# PowerShell commands that use the Azure CLI to remove multiple resource groups that have a common prefix.
# Make sure you're in the correct subscription.
az account show
# Change the subscription, if needed.
az account set -s "<the correct subscription ID>"
# Define the wildcard expression to use to filter your cloud-scale analytics resource groups.
$filter = "*-dev-*"
# Get all resource groups and filter by your prefix.
# Print a list of resource groups to ensure you delete the correct resource groups.
$groups = az group list | ConvertFrom-Json
$groups = $groups | where{$_.name -like $filter}
[array]::Reverse($groups)
$message = "`n`nThe following resource groups will be deleted:`n"
Foreach ($group in $groups) {
$message += " - $($group.name)`n"
}
$message += "`n`n"
Write-Host -ForegroundColor yellow $message
# Delete all peerings for the virtual networks you'll delete.
$subs = az account list | ConvertFrom-Json
$all_vnets = az network vnet list | ConvertFrom-Json
$del_vnets = $all_vnets | where{$_.resourceGroup -like $filter}
$del_vnet_ids = $del_vnets | ForEach-Object { $_.id }
Foreach ($sub in $subs) {
Write-Host "Looking for vnet peerings in subscription `"$($sub.name)`"..."
$all_vnets = az network vnet list --subscription $($sub.id) 2> $null | ConvertFrom-Json
Foreach ($vnet in $all_vnets) {
$linked_peerings = $vnet.virtualNetworkPeerings | where{$del_vnet_ids.Contains($_.remoteVirtualNetwork.id)}
Foreach ($peering in $linked_peerings) {
Write-Host -ForegroundColor red "`tDeleting peering `"$($peering.name)`" for VNet $($vnet.name)"
az network vnet peering delete --ids $peering.id
}
}
}
# Delete all self-hosted integration runtimes from data factories you'll delete.
$factories = az datafactory list --only-show-errors | ConvertFrom-Json
$factories = $factories | where{$_.resourceGroup -like $filter}
Foreach ($factory in $factories) {
$shirs = az datafactory integration-runtime list --resource-group $factory.resourceGroup --factory-name $factory.name --only-show-errors | ConvertFrom-Json
$shirs = $shirs | where{$_.properties.type -eq "SelfHosted"}
Foreach ($shir in $shirs) {
Write-Host -ForegroundColor red "Deleting SHIR for `"$($factory.name)`" in RG $($factory.resourceGroup)"
az datafactory integration-runtime delete --resource-group $factory.resourceGroup --factory-name $factory.name --name $shir.name --yes --only-show-errors
}
}
# Delete the identified resource groups.
Foreach ($group in $groups) {
Write-Host -ForegroundColor red "Deleting $($group.name)"
az group delete --name $group.name --yes --no-wait
}
# Check for the resource groups to verify they were deleted.
$allGroups = az group list | ConvertFrom-Json
$allGroups | Where-Object { $groups.name -contains $_.name } | Select-Object name, @{Name="State"; Expression={$_.properties.provisioningState }}
Próximas etapas
- Examine as arquiteturas de análise de escala de nuvem.
- Saiba mais sobre os modelos de implantações usados nos tutoriais de análise de escala de nuvem.