Sdílet prostřednictvím


Vytvoření naplánovaného zálohování pro webovou aplikaci pomocí PowerShellu

Tento ukázkový skript vytvoří ve službě App Service webovou aplikaci se souvisejícími prostředky a pak pro ni vytvoří naplánované zálohování.

V případě potřeby nainstalujte Azure PowerShell podle pokynů uvedených v příručce k Azure PowerShellu a pak spuštěním rutiny Connect-AzAccount vytvořte připojení k Azure.

Ukázkový skript

Poznámka:

Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Pokud chcete začít, přečtěte si téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

$webappname="mywebapp$(Get-Random -Minimum 100000 -Maximum 999999)"
$storagename="$($webappname)storage"
$container="appbackup"
$location="West Europe"

# Create a resource group.
New-AzResourceGroup -Name myResourceGroup -Location $location

# Create a storage account.
$storage = New-AzStorageAccount -ResourceGroupName myResourceGroup `
-Name $storagename -SkuName Standard_LRS -Location $location

# Create a storage container.
New-AzStorageContainer -Name $container -Context $storage.Context

# Generates an SAS token for the storage container, valid for 1 year.
# NOTE: You can use the same SAS token to make backups in Web Apps until -ExpiryTime
$sasUrl = New-AzStorageContainerSASToken -Name $container -Permission rwdl `
-Context $storage.Context -ExpiryTime (Get-Date).AddYears(1) -FullUri

# Create an App Service plan in Standard tier. Standard tier allows one backup per day.
New-AzAppServicePlan -ResourceGroupName myResourceGroup -Name $webappname `
-Location $location -Tier Standard

# Create a web app.
New-AzWebApp -ResourceGroupName myResourceGroup -Name $webappname `
-Location $location -AppServicePlan $webappname

# Schedule a backup every day, beginning in one hour, and retain for 10 days
Edit-AzWebAppBackupConfiguration -ResourceGroupName myResourceGroup -Name $webappname `
-StorageAccountUrl $sasUrl -FrequencyInterval 1 -FrequencyUnit Day -KeepAtLeastOneBackup `
-StartTime (Get-Date).AddHours(1) -RetentionPeriodInDays 10

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

# (OPTIONAL) Change the backup schedule to every 2 days
$configuration = Get-AzWebAppBackupConfiguration -ResourceGroupName myResourceGroup `
-Name $webappname
$configuration.FrequencyInterval = 2
$configuration | Edit-AzWebAppBackupConfiguration

Vyčištění nasazení

Po spuštění ukázkového skriptu můžete pomocí následujícího příkazu odebrat skupinu prostředků, webovou aplikaci a všechny související prostředky.

Remove-AzResourceGroup -Name myResourceGroup -Force

Vysvětlení skriptu

Tento skript používá následující příkazy. Každý příkaz v tabulce odkazuje na příslušnou část dokumentace.

Příkaz Notes
New-AzResourceGroup Vytvoří skupinu prostředků, ve které se ukládají všechny prostředky.
New-AzStorageAccount Vytvoří účet úložiště.
New-AzStorageContainer Vytvoří kontejner úložiště Azure.
New-AzStorageContainerSaSToken Vygeneruje token SAS pro kontejner úložiště Azure.
New-AzAppServicePlan Vytvoří plán služby App Service.
New-AzWebApp Vytvoří webovou aplikaci.
Edit-AzWebAppBackupConfiguration Upraví konfiguraci zálohování webové aplikace.
Get-AzWebAppBackupList Získá seznam záloh webové aplikace.
Get-AzWebAppBackupConfiguration Získá konfiguraci zálohování webové aplikace.

Další kroky

Další informace o modulu Azure PowerShellu najdete v dokumentaci k Azure PowerShellu.

Další ukázky Azure PowerShellu pro Aplikace Azure Service Web Apps najdete v ukázkách Azure PowerShellu.