Restauración de una aplicación web a partir de una copia de seguridad en otra suscripción mediante PowerShell

Este script de ejemplo recupera una copia de seguridad completada previamente desde una aplicación web existente y la restaura en una aplicación web de otra suscripción.

Si es necesario, instale Azure PowerShell con la instrucción que se encuentra en la Guía de Azure PowerShell y, luego, ejecute Connect-AzAccount para crear una conexión con Azure.

Script de ejemplo

Nota:

En este artículo se usa el módulo Az de PowerShell, que es el módulo de PowerShell que se recomienda para interactuar con Azure. Para empezar a trabajar con el módulo Az de PowerShell, consulte Instalación de Azure PowerShell. Para más información sobre cómo migrar al módulo Az de PowerShell, consulte Migración de Azure PowerShell de AzureRM a Az.

$resourceGroupNameSub1 = "<replace-with-your-group-name>"
$resourceGroupNameSub2 = "<replace-with-desired-new-group-name>"
$webAppNameSub1 = "<replace-with-your-app-name>"
$webAppNameSub2 = "<replace-with-desired-new-app-name>"
$appServicePlanSub2 = "<replace-with-desired-new-plan-name>"
$locationSub2 = "West Europe"


# Log into the subscription with the backup
Add-AzAccount

# List statuses of all backups that are complete or currently executing.
Get-AzWebAppBackupList -ResourceGroupName $resourceGroupNameSub1 -Name $webAppNameSub1

# Note the BackupID property of the backup you want to restore

# Get the backup object that you want to restore by specifying the BackupID
$backup = (Get-AzWebAppBackupList -ResourceGroupName $resourceGroupNameSub1 -Name $webAppNameSub1 | where {$_.BackupId -eq '<replace-with-BackupID>'}) 

# Log into the subscription that you want to restore the app to
Add-AzAccount

# Create a new web app
New-AzWebApp -ResourceGroupName $resourceGroupNameSub2 -AppServicePlan $appServicePlanSub2 -Name $webAppNameSub2 -Location $locationSub2

# Restore the app by overwriting it with the backup data
Restore-AzWebAppBackup -ResourceGroupName $resourceGroupNameSub2 -Name $webAppNameSub2 -StorageAccountUrl $backup.StorageAccountUrl -BlobName $backup.BlobName -Overwrite

Limpieza de la implementación

Cuando ya no necesite la aplicación web, use el comando siguiente para quitar el grupo de recursos, la aplicación web y todos los recursos relacionados.

Remove-AzResourceGroup -Name $resourceGroupName -Force

Explicación del script

Este script usa los siguientes comandos. Cada comando de la tabla crea un vínculo a documentación específica del comando.

Get-Help Notas
Add-AzAccount Agrega una cuenta autenticada para utilizarla con las solicitudes de cmdlet de Azure Resource Manager.
Get-AzWebAppBackupList Obtiene una lista de copias de seguridad de una aplicación web.
New-AzWebApp Crea una aplicación web.
Restore-AzWebAppBackup Restaura una aplicación web desde una copia de seguridad completada previamente.

Pasos siguientes

Para obtener más información sobre el módulo de Azure PowerShell, consulte la documentación de Azure PowerShell.

Puede encontrar más ejemplos de Azure PowerShell para Azure App Service Web Apps en los ejemplos de PowerShell.