Condividi tramite


Eseguire la migrazione degli spazi del bus di servizio di Azure Standard esistenti al livello Premium

In precedenza, il bus di servizio di Azure offriva spazi dei nomi solo nel livello Standard. Gli spazi dei nomi sono configurazioni multi-tenant ottimizzate per ambienti di sviluppo e a velocità effettiva ridotta. Il livello Premium offre risorse dedicate per ogni spazio dei nomi per una latenza prevedibile e una maggiore velocità effettiva a un prezzo fisso. Il livello Premium è ottimizzato per ambienti di produzione e velocità effettiva elevata che richiedono funzionalità aziendali aggiuntive.

Questo articolo descrive come eseguire la migrazione degli spazi dei nomi del livello Standard esistenti al livello Premium.

Avviso

La migrazione è destinata agli spazi dei nomi Standard del bus di servizio da aggiornare al livello Premium. Lo strumento di migrazione non supporta il downgrade. Durante la migrazione dal livello Standard al livello Premium, verrà creato un puntatore DNS che può essere usato per accedere al bus di servizio Standard. Si noti che durante la migrazione verrà creato un oggetto alternateName che rappresenta il puntatore allo spazio dei nomi DNS del bus di servizio precedente e l'operazione non può essere annullata. Qualsiasi tipo di test deve essere eseguito in un ambiente di test.

Alcuni punti da notare:

  • Questa migrazione è destinata a essere eseguita sul posto, vale a dire che le applicazioni mittente e ricevitore esistenti non richiedono modifiche al codice o alla configurazione. La stringa di connessione esistente punterà automaticamente al nuovo spazio dei nomi Premium.
  • Se si usa un nome Premium esistente, lo spazio dei nomi Premium non deve avere alcuna entità al suo interno affinché la migrazione abbia esito positivo e non deve avere il partizionamento abilitato.
  • Tutte le entità nello spazio dei nomi Standard vengono copiate nello spazio dei nomi Premium durante il processo di migrazione.
  • La migrazione supporta 1.000 entità per unità di messaggistica nel livello Premium. Per identificare il numero di unità di messaggistica necessarie, iniziare con il numero di entità presenti nello spazio dei nomi Standard corrente.
  • Non è possibile eseguire direttamente la migrazione dal livello Basic al livello Premium, ma è possibile farlo indirettamente eseguendo la migrazione da Basic a Standard e quindi da Standard a Premium nel passaggio successivo.
  • Le impostazioni del controllo degli accessi in base al ruolo non vengono migrate, quindi sarà necessario aggiungerle manualmente dopo la migrazione.

Passaggi per la migrazione

Alcune condizioni sono associate al processo di migrazione. Acquisire familiarità con i passaggi seguenti per ridurre la possibilità di errori. Questi passaggi descrivono il processo di migrazione e le procedure dettagliate sono elencate nelle sezioni seguenti.

  1. Creare un nuovo spazio dei nomi Premium. Completare i tre passaggi successivi usando le istruzioni seguenti per l'interfaccia della riga di comando o per il portale di Azure in questo articolo.
  2. Associare gli spazi dei nomi Standard e Premium tra loro.
  3. Sincronizzare (copiare) le entità dallo spazio dei nomi Standard allo spazio dei nomi Premium.
  4. Eseguire il commit della migrazione.
  5. Svuotare le entità nello spazio dei nomi Standard usando il nome post-migrazione dello spazio dei nomi.
  6. Eliminare lo spazio dei nomi Standard.

Importante

Dopo il commit della migrazione, accedere allo spazio dei nomi standard precedente e svuotare le code e le sottoscrizioni. Dopo che i messaggi sono stati svuotati, possono essere inviati al nuovo spazio dei nomi Premium per l'elaborazione da parte delle applicazioni ricevitore. Dopo aver svuotato le code e le sottoscrizioni, è consigliabile eliminare lo spazio dei nomi Standard precedente.

Eseguire la migrazione usando l'interfaccia della riga di comando di Azure o PowerShell

Per eseguire la migrazione dello spazio dei nomi del bus di servizio da Standard a Premium usando l'interfaccia della riga di comando di Azure o lo strumento PowerShell, seguire questa procedura.

  1. Creare un nuovo spazio dei nomi Premium del bus di servizio. È possibile fare riferimento ai modelli di Azure Resource Manager o usare il portale di Azure. Assicurarsi di selezionare Premium per il parametro serviceBusSku.

  2. Impostare le variabili di ambiente seguenti per semplificare i comandi di migrazione. È possibile ottenere l'ID di Azure Resource Manager per lo spazio dei nomi Premium passando allo spazio dei nomi nel portale di Azure e copiando la parte dell'URL simile all'esempio seguente: /subscriptions/00000000-0000-0000-0000-00000000000000/resourceGroups/contosoresourcegroup/providers/Microsoft.ServiceBus/namespaces/contosopremiumnamespace.

    resourceGroup = <resource group for the standard namespace>
    standardNamespace = <standard namespace to migrate>
    premiumNamespaceArmId = <Azure Resource Manager ID of the premium namespace to migrate to>
    postMigrationDnsName = <post migration DNS name entry to access the standard namespace>
    

    Importante

    L'alias/nome post-migrazione (post_migration_dns_name) verrà usato per accedere allo spazio dei nomi Standard precedente dopo la migrazione. Usarlo per svuotare le code e le sottoscrizioni e quindi eliminare lo spazio dei nomi.

  3. Associare gli spazi dei nomi Standard e Premium e avviare la sincronizzazione usando il comando seguente:

    az servicebus migration start --resource-group $resourceGroup --name $standardNamespace --target-namespace $premiumNamespaceArmId --post-migration-name $postMigrationDnsName
    
  4. Controllare lo stato della migrazione tramite il comando seguente:

    az servicebus migration show --resource-group $resourceGroup --name $standardNamespace
    

    La migrazione viene considerata completa quando si visualizzano i valori seguenti:

    • MigrationState = "Active"
    • pendingReplicationsOperationsCount = 0
    • provisioningState = "Succeeded"

    Questo comando visualizza anche la configurazione della migrazione. Verificare che i valori siano impostati correttamente. Controllare anche lo spazio dei nomi Premium nel portale per assicurarsi che siano state creati tutti gli argomenti e le code e che corrispondano a quanto esistente nello spazio dei nomi Standard.

  5. Eseguire il commit della migrazione eseguendo il comando completo seguente:

    az servicebus migration complete --resource-group $resourceGroup --name $standardNamespace
    

Eseguire la migrazione tramite il portale di Azure

La migrazione tramite il portale di Azure prevede lo stesso flusso logico della migrazione tramite i comandi. Seguire questa procedura per eseguire la migrazione usando il portale di Azure.

  1. Nel menu Navigazione nel riquadro sinistro selezionare Passa al livello Premium. Selezionare il pulsante Attività iniziali per passare alla pagina successiva. Immagine che mostra la pagina Passa al livello Premium.

  2. Verrà visualizzata la pagina Configura spazi dei nomi seguente.

    Immagine che mostra la pagina Configura spazi dei nomi.

  3. Nelle pagine Configura spazi dei nomi seguire uno dei passaggi seguenti:

    1. Se si seleziona Crea un nuovo spazio dei nomi Premium:
      1. Nella pagina Crea spazio dei nomi immettere un nome per lo spazio dei nomi e selezionare Rivedi e crea.

      2. Nella pagina Rivedi e crea selezionare Crea.

        Immagine che mostra la pagina Crea spazio dei nomi.

    2. Se si seleziona Selezionare uno spazio dei nomi Premium vuoto esistente:
      1. Selezionare la sottoscrizione di Azure e il gruppo di risorse con lo spazio dei nomi.

      2. Selezionare quindi lo spazio dei nomi Premium.

      3. Fare clic su Seleziona.

        Immagine che mostra la selezione di uno spazio dei nomi Premium esistente.

  4. Immettere un Nome post-migrazione e quindi selezionare Avanti. Questo nome verrà usato per accedere allo spazio dei nomi Standard al termine della migrazione.

    Immagine che mostra il nome post-migrazione per lo spazio dei nomi Standard.

  5. Selezionare Avvia sincronizzazione per sincronizzare le entità tra gli spazi dei nomi Standard e Premium.

    Immagine che mostra il pulsante Avvia sincronizzazione.

  6. Selezionare nella finestra di dialogo per confermare e avviare la sincronizzazione. Attendere il completamento della sincronizzazione. Quindi seleziona Avanti.

    Importante

    Se è necessario interrompere la migrazione per qualsiasi motivo, esaminare il flusso di interruzione nella sezione Domande frequenti di questo documento.

  7. Selezionare Completa migrazione nella pagina Passa a.

    Immagine che mostra la pagina **Passa a** della migrazione guidata.

  8. Selezionare per confermare il passaggio dello spazio dei nomi Standard a Premium. Al termine dell'operazione, il nome DNS dello spazio dei nomi standard punterà allo spazio dei nomi Premium. Questa operazione non può essere annullata. Al termine della migrazione verrà visualizzata la pagina Azione riuscita.

    Immagine che mostra la pagina Azione riuscita.

Precisazioni

Alcune delle funzionalità fornite dal livello Standard del bus di servizio di Azure non sono supportate dal livello Premium del bus di servizio di Azure. Questo comportamento è previsto, perché il livello Premium offre risorse dedicate per velocità effettiva e latenza prevedibili.

Ecco una panoramica delle funzionalità non supportate dal livello Premium e la relativa mitigazione.

Entità Express

Le entità espresse che non eseguono il commit dei dati dei messaggi nell'archiviazione non sono supportate nel livello Premium. Le risorse dedicate hanno fornito un miglioramento significativo della velocità effettiva garantendo al tempo stesso che i dati siano salvati in modo permanente, come previsto da qualsiasi sistema di messaggistica aziendale.

Durante la migrazione, qualsiasi entità espressa nello spazio dei nomi Standard verrà creata nello spazio dei nomi Premium come entità non espressa.

Se si usano modelli di Azure Resource Manager, assicurarsi di rimuovere il flag "enableExpress" dalla configurazione della distribuzione in modo che i flussi di lavoro automatizzati vengano eseguiti senza errori.

Impostazioni del controllo degli accessi in base al ruolo

Le impostazioni del controllo degli accessi in base al ruolo nello spazio dei nomi non vengono migrate nello spazio dei nomi Premium. Sarà necessario aggiungerle manualmente dopo la migrazione.

Domande frequenti

Cosa accade quando viene eseguito il commit della migrazione?

Dopo il commit della migrazione, la stringa di connessione che punta allo spazio dei nomi Standard punterà allo spazio dei nomi Premium.

Le applicazioni mittente e ricevitore si disconnettono dallo spazio dei nomi Standard e si riconnettono automaticamente allo spazio dei nomi Premium.

Se si usa l'ID di Azure Resource Manager per la configurazione invece di una stringa di connessione (ad esempio, come destinazione per una sottoscrizione di Griglia di eventi), è necessario aggiornare l'ID di Azure Resource Manager in modo che corrisponda a quello dello spazio dei nomi Premium.

Cosa occorre fare dopo il completamento della migrazione da Standard a Premium?

La migrazione da Standard a Premium garantisce che i metadati delle entità, ad esempio argomenti, sottoscrizioni e filtri, vengano copiati dallo spazio dei nomi Standard allo spazio dei nomi Premium. I dati dei messaggi di cui è stato eseguito il commit nello spazio dei nomi Standard non sono copiati dallo spazio dei nomi Standard allo spazio dei nomi Premium.

Lo spazio dei nomi Standard potrebbe includere alcuni messaggi inviati e di cui è stato eseguito il commit durante la migrazione. Svuotare manualmente questi messaggi dallo spazio dei nomi Standard e inviarli manualmente allo spazio dei nomi Premium. Per svuotare manualmente i messaggi, usare un'app console o uno script che svuota le entità dello spazio dei nomi Standard usando il nome DNS post-migrazione specificato nei comandi di migrazione. Inviare questi messaggi allo spazio dei nomi Premium in modo che possano essere elaborati dalle applicazioni ricevitore.

Dopo che i messaggi sono stati svuotati, eliminare lo spazio dei nomi Standard.

Importante

Dopo che i messaggi dello spazio dei nomi standard sono stati svuotati, eliminare lo spazio dei nomi Standard. Questo passaggio è importante perché la stringa di connessione che inizialmente fa riferimento allo spazio dei nomi Standard fa ora riferimento allo spazio dei nomi Premium. Lo spazio dei nomi Standard non sarà più necessario. L'eliminazione dello spazio dei nomi Standard precedente consente di ridurre confusioni in futuro.

Quanto tempo di inattività ci si deve attendere?

Il processo di migrazione è progettato per ridurre i tempi di inattività previsti per le applicazioni. Il tempo di inattività viene ridotto usando la stringa di connessione usata dalle applicazioni mittente e ricevitore per puntare al nuovo spazio dei nomi Premium.

Il tempo di inattività riscontrato dall'applicazione è limitato al tempo necessario per aggiornare la voce DNS in modo che punti allo spazio dei nomi Premium. Il tempo di inattività è di circa 5 minuti.

È necessario apportare modifiche alla configurazione durante la migrazione?

No, non sono necessarie modifiche al codice o alla configurazione per eseguire la migrazione. Il nome DNS dello spazio dei nomi Standard punterà allo spazio dei nomi Premium. La stringa di connessione usata dalle applicazioni mittente e ricevitore per accedere allo spazio dei nomi Standard viene mappata automaticamente per fungere da alias per lo spazio dei nomi Premium.

Come si interrompe la migrazione?

La migrazione può essere interrotta usando il comando Abort o tramite il portale di Azure.

Interfaccia della riga di comando di Azure

az servicebus migration abort --resource-group $resourceGroup --name $standardNamespace

Azure portal

Selezionare Interrompi nella pagina Sincronizza entità.

Immagine che mostra la pagina Interrompi.

Al termine, verrà visualizzata la pagina seguente:

Immagine che mostra la pagina Interruzione completata.

Cosa accade quando si interrompe la migrazione?

Quando il processo di migrazione viene interrotto, interrompe il processo di copia delle entità (argomenti, sottoscrizioni e filtri) dallo spazio dei nomi Standard allo spazio dei nomi Premium e interrompe l'associazione.

La stringa di connessione non viene aggiornata in modo che punti allo spazio dei nomi Premium. Le applicazioni esistenti continuano a funzionare come prima dell'avvio della migrazione.

Tuttavia, non elimina le entità nello spazio dei nomi Premium o elimina lo spazio dei nomi Premium. Eliminare manualmente le entità se si è deciso di non procedere con la migrazione.

Importante

Se si decide di interrompere la migrazione, eliminare lo spazio dei nomi Premium di cui è stato effettuato il provisioning per la migrazione in modo che non vengano addebitati costi per le risorse.

Non si vuole dover svuotare i messaggi. Come si deve procedere?

Potrebbero essere presenti messaggi inviati dalle applicazioni mittenti e sottoposti a commit nella risorsa di archiviazione nello spazio dei nomi Standard durante la migrazione e subito prima del commit della migrazione.

Durante la migrazione, i dati/payload effettivi del messaggio non verranno copiati dallo spazio dei nomi Standard allo spazio dei nomi Premium. I messaggi devono essere svuotati manualmente e quindi inviati allo spazio dei nomi Premium.

Tuttavia, se è possibile eseguire la migrazione durante una finestra di manutenzione o manutenzione pianificata e non si vuole svuotare manualmente e inviare i messaggi, seguire questa procedura:

  1. Arrestare le applicazioni mittenti. Le applicazioni ricevitore elaborano i messaggi attualmente presenti nello spazio dei nomi Standard e svuotano la coda.

  2. Quando le code e le sottoscrizioni nello spazio dei nomi Standard sono vuote, seguire la procedura descritta in precedenza per eseguire la migrazione dallo spazio dei nomi Standard allo spazio dei nomi Premium.

  3. Al termine della migrazione, è possibile riavviare le applicazioni mittenti.

  4. Mittenti e ricevitori si connetteranno automaticamente allo spazio dei nomi Premium.

    Nota

    Non è necessario arrestare le applicazioni ricevitore per la migrazione.

    Al termine della migrazione, le applicazioni ricevitore si disconnetteranno dallo spazio dei nomi Standard e si connetteranno automaticamente allo spazio dei nomi Premium.

Passaggi successivi