Ripristino del servizio app nell'hub di Azure StackApp Service recovery on Azure Stack Hub

Questo argomento fornisce istruzioni sulle azioni da intraprendere per il ripristino di emergenza del servizio app.This topic provides instructions on what actions to take for App Service disaster recovery.

Per ripristinare il servizio app nell'hub Azure Stack dal backup, è necessario eseguire le azioni seguenti:The following actions must be taken to recover App Service on Azure Stack Hub from backup:

  1. Ripristinare i database del servizio app.Restore the App Service databases.
  2. Ripristinare il contenuto della condivisione file server.Restore the file server share content.
  3. Ripristinare i servizi e i ruoli del servizio app.Restore App Service roles and services.

Se Azure Stack archiviazione Hub è stata usata per l'archiviazione delle app per le funzioni, è necessario anche eseguire le operazioni per ripristinare le app per le funzioni.If Azure Stack Hub storage was used for Function Apps storage, then you must also take steps to restore Function Apps.

Ripristinare i database del servizio appRestore the App Service databases

Il servizio app SQL Server database deve essere ripristinato in un'istanza di SQL Server pronta per la produzione.The App Service SQL Server databases should be restored on a production ready SQL Server instance.

Dopo aver preparato l'istanza di SQL Server per ospitare i database del servizio app, seguire questa procedura per ripristinare i database dal backup:After preparing the SQL Server instance to host the App Service databases, use these steps to restore databases from backup:

  1. Accedere al SQL Server in cui sono ospitati i database del servizio app ripristinato con le autorizzazioni di amministratore.Sign in to the SQL Server that will host the recovered App Service databases with admin permissions.
  2. Usare i comandi seguenti per ripristinare i database del servizio app da un prompt dei comandi in esecuzione con le autorizzazioni di amministratore:Use the following commands to restore the App Service databases from a command prompt running with admin permissions:
    sqlcmd -U <SQL admin login> -P <SQL admin password> -Q "RESTORE DATABASE appservice_hosting FROM DISK='<full path to backup>' WITH REPLACE"
    sqlcmd -U <SQL admin login> -P <SQL admin password> -Q "RESTORE DATABASE appservice_metering FROM DISK='<full path to backup>' WITH REPLACE"
    
  3. Verificare che i database del servizio app siano stati ripristinati correttamente e uscire SQL Server Management Studio.Verify that both App Service databases have been successfully restored and exit SQL Server Management Studio.

Nota

Per eseguire il ripristino da un errore dell'istanza del cluster di failover, vedere ripristino da un errore dell'istanza del cluster di failover.To recover from a failover cluster instance failure, see Recover from Failover Cluster Instance Failure.

Ripristinare il contenuto della condivisione file del servizio appRestore the App Service file share content

Dopo aver preparato il file server per ospitare la condivisione file del servizio app, è necessario ripristinare il contenuto della condivisione file del tenant dal backup.After preparing the file server to host the App Service file share, you need to restore the tenant file share content from backup. È possibile usare qualsiasi metodo disponibile per copiare i file nel percorso di condivisione file del servizio app appena creato.You can use whatever method you have available to copy the files into the newly created App Service file share location. Eseguendo questo esempio nella file server utilizzerà PowerShell e Robocopy per connettersi a una condivisione remota e copiare i file nella condivisione:Running this example on the file server will use PowerShell and robocopy to connect to a remote share and copy the files to the share:

$source = "<remote backup storage share location>"
$destination = "<local file share location>"
net use $source /user:<account to use to connect to the remote share in the format of domain\username> *
robocopy /E $source $destination
net use $source /delete

Oltre a copiare il contenuto della condivisione file, è necessario reimpostare anche le autorizzazioni per la condivisione file.In addition to copying the file share contents, you must also reset permissions on the file share itself. Per reimpostare le autorizzazioni, aprire un prompt dei comandi di amministratore nel computer file server ed eseguire il file ReACL. cmd .To reset permissions, open an admin command prompt on the file server computer and run the ReACL.cmd file. Il file ReACL. cmd si trova nei file di installazione del servizio app nella directory BCdRThe ReACL.cmd file is located in the App Service installation files in the BCDR directory.

Ripristinare i servizi e i ruoli del servizio appRestore App Service roles and services

Una volta ripristinati i database del servizio app e il contenuto della condivisione file, è necessario usare PowerShell per ripristinare i servizi e i ruoli del servizio app.After the App Service databases and file share content are restored, you next need to use PowerShell to restore the App Service roles and services. Questi passaggi consentono di ripristinare i segreti del servizio app e le configurazioni dei servizi.These steps will restore App Service secrets and service configurations.

  1. Accedere al controller del servizio app CN0- VM VM come RoleAdmin usando la password specificata durante l'installazione del servizio app.Log into the App Service controller CN0-VM VM as roleadmin using the password you provided during App Service installation.

    Suggerimento

    È necessario modificare il gruppo di sicurezza di rete della macchina virtuale per consentire le connessioni RDP.You need to modify the VM's network security group to allow RDP connections.

  2. Copiare il SystemSecrets.JSnel file localmente nella macchina virtuale del controller.Copy the SystemSecrets.JSON file locally to the controller VM. È necessario specificare il percorso di questo file come $pathToExportedSecretFile parametro nel passaggio successivo.You need to provide the path to this file as the $pathToExportedSecretFile parameter in the next step.

  3. Usare i comandi seguenti in una finestra della console di PowerShell con privilegi elevati per ripristinare i servizi e i ruoli del servizio app:Use the following commands in an elevated PowerShell console window to restore App Service roles and services:

    # Stop App Service services on the primary controller VM
    net stop WebFarmService
    net stop ResourceMetering
    net stop HostingVssService # This service was deprecated in the App Service 1.5 release and is not required after the App Service 1.4 release.
    
    # Restore App Service secrets. Provide the path to the App Service secrets file copied from backup. For example, C:\temp\SystemSecrets.json.
    # Press ENTER when prompted to reconfigure App Service from backup 
    
    # If necessary, use -OverrideDatabaseServer <restored server> with Restore-AppServiceStamp when the restored database server has a different address than backed-up deployment.
    # If necessary, use -OverrideContentShare <restored file share path> with Restore-AppServiceStamp when the restored file share has a different path from backed-up deployment.
    Restore-AppServiceStamp -FilePath $pathToExportedSecretFile 
    
    # Restore App Service roles
    Restore-AppServiceRoles
    
    # Restart App Service services
    net start WebFarmService
    net start ResourceMetering
    net start HostingVssService  # This service was deprecated in the App Service 1.5 release and is not required after the App Service 1.4 release.
    
    # After App Service has successfully restarted, and at least one management server is in ready state, synchronize App Service objects to complete the restore
    # Enter Y when prompted to get all sites and again for all ServerFarm entities.
    Get-AppServiceSite | Sync-AppServiceObject
    Get-AppServiceServerFarm | Sync-AppServiceObject
    

Suggerimento

Si consiglia vivamente di chiudere questa sessione di PowerShell quando il comando viene completato.It's highly recommended to close this PowerShell session when the command completes.

Ripristinare le app per le funzioniRestore Function Apps

Il servizio app per Azure Stack Hub non supporta il ripristino di app utente del tenant o dati diversi dal contenuto della condivisione file.App Service for Azure Stack Hub doesn't support restoring tenant user apps or data other than file share content. È necessario eseguire il backup e il recupero di tutti gli altri dati al di fuori delle operazioni di backup e ripristino del servizio app.All other data must be backed up and recovered outside of App Service backup and restore operations. Se Azure Stack archiviazione Hub è stata usata per l'archiviazione delle app per le funzioni, è necessario eseguire i passaggi seguenti per recuperare i dati persi:If Azure Stack Hub storage was used for Function Apps storage, the following steps should be taken to recover lost data:

  1. Creare un nuovo account di archiviazione che verrà usato dal app per le funzioni.Create a new storage account to be used by the Function App. Questa archiviazione può essere Azure Stack archiviazione Hub, archiviazione di Azure o qualsiasi archiviazione compatibile.This storage can be Azure Stack Hub storage, Azure storage, or any compatible storage.
  2. Recuperare la stringa di connessione per l'archiviazione.Retrieve the connection string for the storage.
  3. Aprire il portale per le funzioni e passare all'app per le funzioni.Open the function portal and browse to the function app.
  4. Passare alla scheda funzionalità della piattaforma e fare clic su Impostazioni applicazione.Browse to the Platform features tab and click Application Settings.
  5. Modificare AzureWebJobsDashboard e AzureWebJobsStorage nella nuova stringa di connessione e fare clic su Salva.Change AzureWebJobsDashboard and AzureWebJobsStorage to the new connection string and click Save.
  6. Passa a Panoramica.Switch to Overview.
  7. Riavviare l'app.Restart the app. Potrebbero essere diversi i tentativi di cancellare tutti gli errori.It might take several tries to clear all errors.

Passaggi successiviNext steps

Panoramica di servizio app in hub Azure StackApp Service on Azure Stack Hub overview