View a markdown version of this page

Esegui la migrazione IIS-hosted delle applicazioni su Amazon EC2 utilizzando appcmd.exe - Prontuario AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esegui la migrazione IIS-hosted delle applicazioni su Amazon EC2 utilizzando appcmd.exe

Deepak Kumar, Amazon Web Services

Riepilogo

Quando esegui la migrazione di applicazioni ospitate da Internet Information Services (IIS) su istanze Amazon Elastic Compute Cloud (Amazon EC2), devi affrontare diverse sfide di autenticazione. Queste sfide includono il reinserimento delle credenziali di dominio per le identità dei pool di applicazioni e la potenziale rigenerazione delle chiavi macchina per la corretta funzionalità del sito Web. Questo modello descrive un approccio di migrazione pulito che utilizza la funzionalità di backup e ripristino di IIS sulle istanze Amazon EC2. L'approccio utilizza appcmd.exe per disinstallare e reinstallare IIS sulle istanze Amazon EC2 di destinazione, consentendo una migrazione corretta IIS-hosted di siti Web, identità di pool di applicazioni e chiavi di macchina.

Prerequisiti e limitazioni

Prerequisiti

  • Un attivo Account AWS per il server di destinazione.

  • Un server IIS di origine funzionale con siti Web ospitati su di esso.

  • Comprensione dei principi di funzionamento di IIS, come l'amministrazione e la configurazione.

  • Accesso da amministratore di sistema sia sul server di origine che su quello di destinazione.

  • Migrazione completata del server IIS di origine verso la destinazione Account AWS. Puoi utilizzare strumenti di migrazione come AWS Transform MGN un approccio basato su snapshot di Amazon Machine Image (AMI) o altri strumenti di migrazione.

  • Windows Server 2012 R2 o versione successiva sia sui server di origine che su quelli di destinazione.

  • Microsoft.NET Framework 4.5 o versione successiva installato su entrambi i server (richiesto per le operazioni del contenitore chiave aspnet_regiis.exe)

  • Un metodo per trasferire file di backup e file XML chiave esportati dal server di origine a quello di destinazione, come Amazon Simple Storage Service (Amazon S3), un'unità di rete condivisa o una copia sicura.

  • Le istanze IIS di origine e di destinazione devono eseguire la stessa versione di IIS (8.5 o 10.0).

Limitazioni

Versioni del prodotto

  • IIS 8.5 o IIS 10.0

Architecture

Stack di tecnologia di origine

  • Windows Server con IIS 8.5 o IIS 10.0 installato

Stack tecnologico Target

  • Windows Server con IIS 8.5 o IIS 10.0 installato

  • AWS Transform MGN

Architettura di destinazione

Il diagramma seguente mostra i componenti del flusso di lavoro e dell'architettura per questo modello.

Flusso di lavoro per migrare IIS-hosted le applicazioni su Amazon EC2.

La soluzione include i seguenti passaggi:

  1. Installa e configura l'agente di AWS replica sul server IIS di origine nel data center aziendale. Questo agente avvia il processo di replica e gestisce il trasferimento dei dati verso. AWS

  2. L'agente di AWS replica stabilisce una connessione sicura a MGN e inizia a replicare i dati del server di origine, incluse le configurazioni IIS, i siti Web e i file delle applicazioni.

  3. MGN avvia le istanze Amazon EC2 nella sottorete dell'applicazione con i dati replicati. L'istanza Amazon EC2 di destinazione esegue IIS e contiene le applicazioni migrate con i volumi Amazon Elastic Block Store (Amazon EBS) associati. Dopo la replica iniziale, MGN continua a sincronizzare le modifiche finché non sei pronto per passare al nuovo ambiente.

Tools (Strumenti)

Servizi AWS

Altri strumenti

  • Internet Information Services (IIS) per Windows Server è un server Web con un'architettura scalabile e aperta per l'hosting di qualsiasi cosa sul Web. IIS offre una serie di strumenti di amministrazione, tra cui strumenti di amministrazione e da riga di comando (ad esempio, appcmd.exe), codice gestito e API di scripting e supporto per Windows. PowerShell

Best practice

  • File chiave esportati in modo sicuro: i file XML che contengono le chiavi private esportate devono essere trasferiti in modo sicuro (crittografati in transito) ed eliminati dai server di origine e di destinazione dopo una migrazione riuscita.

  • Test in un ambiente non di produzione: esegui la procedura di backup e ripristino su un server di test prima di eseguirlo in produzione.

  • Documenta le identità del pool di applicazioni: prima della migrazione, registra tutte le credenziali di identità del pool di applicazioni perché è necessario reinserire le password dopo il ripristino.

  • Esegui il backup dei certificati SSL separatamente: il backup di appcmd.exe non include certificati SSL o TLS. Esportali separatamente utilizzando lo snap-in Certificates MMC o PowerShell

  • Verifica dei file di contenuto Web: il backup della configurazione IIS non include i file delle applicazioni Web (contenuto wwwroot). Assicurati che questi vengano migrati con l'immagine del server tramite. AWS Transform MGN

Epiche

OperazioneDescriptionCompetenze richieste

Crea backup di IIS-hosted siti Web, chiave di configurazione e WAS chiave.

Per creare backup per IIS-hosted siti Web, la chiave di configurazione (iisConfigurationKey) e la WAS chiave (iisWasKey), utilizzate appcmd.exe sul server di origine. Utilizza le fasi seguenti:

  1. Aprire un prompt dei comandi come amministratore.

  2. Esegui il comando riportato qui di seguito: cd c:\windows\system32\inetsrv

  3. Esegui il comando seguente, sostituendolo <backupname> con il tuo valore: appcmd.exe add backup "<backupname>

Per esportare la chiave di configurazione e la WAS chiave, procedi come segue:

  1. Crea la directory di esportazione: mkdir C:\temp

  2. Esegui il comando riportato qui di seguito: cd c:\windows\Microsoft.NET\Framework64\v4.0.30319

  3. Esegui il comando riportato qui di seguito: aspnet_regiis.exe -px "iisConfigurationKey" C:\temp\iisConfKey.xml -pri

  4. Esegui il comando riportato qui di seguito: aspnet_regiis.exe -px "iisWasKey" C:\temp\iisWasKey.xml -pri

Amministratore IIS
OperazioneDescriptionCompetenze richieste

Disinstalla IIS sul server di destinazione.

Per disinstallare IIS sul server di destinazione, attenersi alla seguente procedura:

  1. Accedi al server con diritti di amministratore.

  2. Vai a Server manager.

  3. Scegli Gestisci, Rimuovi ruoli e funzionalità, Avanti e Avanti.

  4. Deseleziona la casella di controllo Web Server (IIS), quindi scegli Avanti e Avanti.

  5. Seleziona la casella di controllo Riavvia automaticamente il server di destinazione. Al termine del processo di disinstallazione, il sistema si riavvia.

  6. Verifica che IIS sia stato disinstallato correttamente accedendo a C:\Windows\System32\inetsrv e confermando che questa cartella è vuota.

Amministratore IIS

Installa IIS sul server di destinazione.

Per installare IIS sul server di destinazione, attenersi alla seguente procedura:

  1. Accedi al server con diritti di amministratore.

  2. Vai a Server manager.

  3. Scegli Aggiungi ruoli e funzionalità, Avanti, Avanti, Avanti e Avanti.

  4. Seleziona la casella di controllo Webserver IIS. Quando richiesto, scegli Aggiungi funzionalità.

  5. Scegli tutte le caselle di controllo mostrate in Sviluppo dell'app, Aggiungi funzionalità e Seleziona tutte le funzionalità. Puoi selezionare le funzionalità a livello granulare appena prima della conferma.

  6. Scegli Installa.

Amministratore IIS
OperazioneDescriptionCompetenze richieste

Ripristina i siti Web e la configurazione IIS.

Per ripristinare i backup IIS creati dal server di origine sul server di destinazione, attenersi alla seguente procedura:

  1. Crea una cartella denominata backup nella C:\windows\system32\inetsrv cartella, quindi posiziona la cartella di backup di origine al suo interno.

  2. Apri un prompt dei comandi ed eseguilo come amministratore.

  3. Esegui il comando riportato qui di seguito: cd C:\windows\system32\inetsrv

  4. Esegui il comando riportato qui di seguito: C:\windows\system32\inetsrv\appcmd.exe list backup

  5. Esegui il comando riportato qui di seguito: C:\windows\system32\inetsrv\appcmd.exe restore backup <sourcebackup>

  6. Esegui il comando riportato qui di seguito: cd c:\windows\Microsoft.NET\Framework64\v4.0.30319

  7. Esegui il comando riportato qui di seguito: aspnet_regiis.exe -pi "iisConfigurationKey" C:\temp\iisConfKey.xml -exp

  8. Esegui il comando riportato qui di seguito: aspnet_regiis.exe -pi "iisWasKey" C:\temp\iisWasKey.xml -exp

  9. Reimposta IIS e vai alle impostazioni avanzate di Application Pool Identity e Website per reinserire la password.

  10. Apri IIS Manager e verifica che tutti i siti Web, i pool di applicazioni e le directory virtuali siano ripristinati.

  11. Accedete a ciascun sito Web per verificare che il contenuto sia visualizzato correttamente.

  12. Dopo aver verificato che il ripristino sia avvenuto correttamente, eliminate i file chiave esportati da: C:\temp

    del C:\temp\iisConfKey.xml

    del C:\temp\iisWasKey.xml

Amministratore IIS

Risorse correlate

AWS documentazione

AWS Linee guida prescrittive

Risorse Microsoft

Informazioni aggiuntive

  • Il backup di appcmd.exe include: pool di applicazioni, siti, configurazione globale e schema IIS. Non include file di contenuto Web, certificati SSL o file di configurazione condivisi.

  • Per le migrazioni di farm IIS su larga scala, prendi in considerazione l'utilizzo del PowerShell Web-Administration modulo per operazioni di backup e ripristino basate su script.