Eseguire la migrazione di risorse IaaS dal modello classico al modello di Azure Resource Manager tramite l'interfaccia della riga di comando di AzureMigrate IaaS resources from classic to Azure Resource Manager by using Azure CLI

Questi passaggi mostrano come usare i comandi dell'interfaccia della riga di comando di Azure per eseguire la migrazione dalle risorse IaaS (infrastruttura distribuita come servizio) dal modello di distribuzione classica al modello di distribuzione Azure Resource Manager.These steps show you how to use Azure command-line interface (CLI) commands to migrate infrastructure as a service (IaaS) resources from the classic deployment model to the Azure Resource Manager deployment model. Ai fini dell'articolo, è necessario usare l'interfaccia della riga di comando di Azure 1.0.The article requires the Azure CLI 1.0. Poiché l'interfaccia della riga di comando di Azure 2.0 è disponibile solo per le risorse di Azure Resource Manager, non può essere usata per la migrazione.Since Azure CLI 2.0 is only applicable for Azure Resource Manager resources, it cannot be used for this migration.

Nota

Tutte le operazioni descritte di seguito sono idempotenti.All the operations described here are idempotent. Se vengono rilevati errori diversi da una funzionalità non supportata o un errore di configurazione, è consigliabile provare a ripetere l'operazione di preparazione, interruzione o commit.If you have a problem other than an unsupported feature or a configuration error, we recommend that you retry the prepare, abort, or commit operation. La piattaforma proverà di nuovo a eseguire l'azione.The platform will then try the action again.


Ecco un diagramma di flusso per identificare l'ordine di esecuzione dei passaggi durante un processo di migrazioneHere is a flowchart to identify the order in which steps need to be executed during a migration process

Screenshot that shows the migration steps

Passaggio 1: Preparare la migrazioneStep 1: Prepare for migration

Ecco alcune procedure consigliate per valutare la migrazione delle risorse IaaS dal modello classico al modello di Resource Manager:Here are a few best practices that we recommend as you evaluate migrating IaaS resources from classic to Resource Manager:

  • Leggere l'elenco di configurazioni e funzionalità non supportate.Read through the list of unsupported configurations or features. Se sono disponibili macchine virtuali che usano configurazioni o funzionalità non supportate, è consigliabile attendere l'annuncio del supporto di tali configurazioni o funzionalità.If you have virtual machines that use unsupported configurations or features, we recommend that you wait for the feature/configuration support to be announced. In alternativa, è possibile rimuovere tale funzionalità o uscire da tale configurazione per abilitare la migrazione se ciò soddisfa le esigenze.Alternatively, you can remove that feature or move out of that configuration to enable migration if it suits your needs.
  • Se si hanno script automatizzati che consentono di distribuire subito l'infrastruttura e le applicazioni, provare a creare una configurazione di test simile usando questi script per la migrazione.If you have automated scripts that deploy your infrastructure and applications today, try to create a similar test setup by using those scripts for migration. In alternativa, è anche possibile configurare ambienti di esempio tramite il portale di Azure.Alternatively, you can set up sample environments by using the Azure portal.

Importante

I gateway applicazione non sono attualmente supportati per la migrazione dal modello di distribuzione classica a Resource Manager.Application Gateways are not currently supported for migration from classic to Resource Manager. Per eseguire la migrazione di una rete virtuale classica con un gateway applicazione, rimuovere il gateway prima di eseguire un'operazione di preparazione dello spostamento della rete.To migrate a classic virtual network with an Application gateway, remove the gateway before running a Prepare operation to move the network. Dopo aver completato la migrazione, riconnettere il gateway in Azure Resource Manager.After you complete the migration, reconnect the gateway in Azure Resource Manager.

Non è possibile eseguire la migrazione automatica di gateway ExpressRoute che si connettono a circuiti ExpressRoute in un'altra sottoscrizione.ExpressRoute gateways connecting to ExpressRoute circuits in another subscription cannot be migrated automatically. In tal caso, rimuovere il gateway ExpressRoute, eseguire la migrazione della rete virtuale e ricreare il gateway.In such cases, remove the ExpressRoute gateway, migrate the virtual network and recreate the gateway. Per altre informazioni, vedere Eseguire la migrazione di circuiti ExpressRoute e delle reti virtuali associate dalla distribuzione classica al modello di distribuzione Resource Manager.Please see Migrate ExpressRoute circuits and associated virtual networks from the classic to the Resource Manager deployment model for more information.

Passaggio 2: Impostare la sottoscrizione e registrare il providerStep 2: Set your subscription and register the provider

Per gli scenari di migrazione è necessario configurare l'ambiente per il modello classico e di Resource Manager.For migration scenarios, you need to set up your environment for both classic and Resource Manager. Installare l'interfaccia della riga di comando di Azure e selezionare la sottoscrizione.Install Azure CLI and select your subscription.

Accedere al proprio account.Sign-in to your account.

azure login

Selezionare la sottoscrizione di Azure usando il comando seguente.Select the Azure subscription by using the following command.

azure account set "<azure-subscription-name>"

Nota

La registrazione è un passaggio da eseguire un'unica volta, tuttavia deve essere eseguita prima di tentare la migrazione.Registration is a one time step but it needs to be done once before attempting migration. Senza la registrazione verrà visualizzato il seguente messaggio di erroreWithout registering you'll see the following error message

BadRequest: Subscription is not registered for migration (Richiesta non valida: la sottoscrizione non è registrata per la migrazione)BadRequest : Subscription is not registered for migration.

Registrarsi con il provider di risorse di migrazione utilizzando il comando seguente.Register with the migration resource provider by using the following command. Si noti che in alcuni casi si verifica il timeout del comando. Tuttavia, la registrazione verrà completata.Note that in some cases, this command times out. However, the registration will be successful.

azure provider register Microsoft.ClassicInfrastructureMigrate

Attendere cinque minuti che la registrazione venga completata.Please wait five minutes for the registration to finish. È possibile controllare lo stato dell'approvazione con il comando seguente.You can check the status of the approval by using the following command. Assicurarsi che RegistrationState sia Registered prima di procedere.Make sure that RegistrationState is Registered before you proceed.

azure provider show Microsoft.ClassicInfrastructureMigrate

Passare ora dall'interfaccia della riga di comando alla modalità asm .Now switch CLI to the asm mode.

azure config mode asm

Passaggio 3: verificare che siano disponibili sufficienti CPU virtuali delle macchine virtuali di Azure Resource Manager nell'area di Azure di cui fa parte la distribuzione corrente o la rete virtualeStep 3: Make sure you have enough Azure Resource Manager Virtual Machine vCPUs in the Azure region of your current deployment or VNET

Per questo passaggio è necessario passare alla modalità arm .For this step you'll need to switch to arm mode. A tale scopo, eseguire il comando seguente.Do this with the following command.

azure config mode arm

È possibile usare il comando seguente dell'interfaccia della riga di comando per controllare il numero corrente di CPU virtuali in Azure Resource Manager.You can use the following CLI command to check the current number of vCPUs you have in Azure Resource Manager. Per altre informazioni sulle quote di CPU virtuali, vedere Limiti e Azure Resource Manager.To learn more about vCPU quotas, see Limits and the Azure Resource Manager

azure vm list-usage -l "<Your VNET or Deployment's Azure region"

Dopo aver verificato questo passaggio, è possibile passare nuovamente alla modalità asm .Once you're done verifying this step, you can switch back to asm mode.

azure config mode asm

Passaggio 4: Opzione 1 - Eseguire la migrazione delle macchine virtuali a un servizio cloudStep 4: Option 1 - Migrate virtual machines in a cloud service

Ottenere l'elenco dei servizi cloud con il comando seguente e selezionare il servizio cloud di cui si vuole eseguire la migrazione.Get the list of cloud services by using the following command, and then pick the cloud service that you want to migrate. Si noti che se le VM nel servizio cloud si trovano in una rete virtuale o hanno ruoli Web/di lavoro, verrà visualizzato un messaggio di errore.Note that if the VMs in the cloud service are in a virtual network or if they have web/worker roles, you will get an error message.

azure service list

Eseguire il comando seguente per ottenere il nome della distribuzione per il servizio cloud dall'output dettagliato.Run the following command to get the deployment name for the cloud service from the verbose output. Nella maggior parte dei casi, il nome della distribuzione corrisponde al nome del servizio cloud.In most cases, the deployment name is the same as the cloud service name.

azure service show <serviceName> -vv

Per prima cosa, verificare se è possibile eseguire la migrazione del servizio cloud usando i comandi seguenti:First, validate if you can migrate the cloud service using the following commands:

azure service deployment validate-migration <serviceName> <deploymentName> new "" "" ""

Preparare le macchine virtuali nel servizio cloud per la migrazione.Prepare the virtual machines in the cloud service for migration. È possibile scegliere tra due opzioni.You have two options to choose from.

Se si vuole eseguire la migrazione delle VM a una rete virtuale creata dalla piattaforma, usare il comando seguente.If you want to migrate the VMs to a platform-created virtual network, use the following command.

azure service deployment prepare-migration <serviceName> <deploymentName> new "" "" ""

Se si vuole eseguire la migrazione a una rete virtuale esistente nel modello di distribuzione Resource Manager, usare il comando seguente.If you want to migrate to an existing virtual network in the Resource Manager deployment model, use the following command.

azure service deployment prepare-migration <serviceName> <deploymentName> existing <destinationVNETResourceGroupName> <subnetName> <vnetName>

Dopo aver completato l'operazione di preparazione, è possibile osservare l'output dettagliato per ottenere lo stato di migrazione delle VM, verificando che sia Prepared .After the prepare operation is successful, you can look through the verbose output to get the migration state of the VMs and ensure that they are in the Prepared state.

azure vm show <vmName> -vv

Controllare la configurazione per le risorse preparate tramite l'interfaccia della riga di comando o il portale di Azure.Check the configuration for the prepared resources by using either CLI or the Azure portal. Se non si è pronti per la migrazione e si vuole tornare allo stato precedente, usare il comando seguente.If you are not ready for migration and you want to go back to the old state, use the following command.

azure service deployment abort-migration <serviceName> <deploymentName>

Se la configurazione preparata appare corretta, è possibile procedere ed eseguire il commit delle risorse usando il comando seguente.If the prepared configuration looks good, you can move forward and commit the resources by using the following command.

azure service deployment commit-migration <serviceName> <deploymentName>

Passaggio 4: Opzione 2 - Eseguire la migrazione delle macchine virtuali a una rete virtualeStep 4: Option 2 - Migrate virtual machines in a virtual network

Selezionare la rete virtuale per cui si vuole eseguire la migrazione.Pick the virtual network that you want to migrate. Si noti che se la rete virtuale contiene ruoli Web/di lavoro o VM con configurazioni non supportate, verrà visualizzato un messaggio di errore di convalida.Note that if the virtual network contains web/worker roles or VMs with unsupported configurations, you will get a validation error message.

Ottenere tutte le reti virtuali nella sottoscrizione con il comando seguente.Get all the virtual networks in the subscription by using the following command.

azure network vnet list

Verrà visualizzato un risultato simile al seguente:The output will look something like this:

Schermata della riga di comando con evidenziato l'intero nome della rete virtuale.

Nell'esempio precedente il valore virtualNetworkName è l'intero nome "Gruppo classicubuntu16 classicubuntu16".In the above example, the virtualNetworkName is the entire name "Group classicubuntu16 classicubuntu16".

Per prima cosa, verificare se sia possibile eseguire la migrazione della rete virtuale usando il comando seguente:First, validate if you can migrate the virtual network using the following command:

azure network vnet validate-migration <virtualNetworkName>

Preparare la rete virtuale scelta per la migrazione con il comando seguente.Prepare the virtual network of your choice for migration by using the following command.

azure network vnet prepare-migration <virtualNetworkName>

Controllare la configurazione per le macchine virtuali preparate tramite l'interfaccia della riga di comando o il portale di Azure.Check the configuration for the prepared virtual machines by using either CLI or the Azure portal. Se non si è pronti per la migrazione e si vuole tornare allo stato precedente, usare il comando seguente.If you are not ready for migration and you want to go back to the old state, use the following command.

azure network vnet abort-migration <virtualNetworkName>

Se la configurazione preparata appare corretta, è possibile procedere ed eseguire il commit delle risorse usando il comando seguente.If the prepared configuration looks good, you can move forward and commit the resources by using the following command.

azure network vnet commit-migration <virtualNetworkName>

Passaggio 5: Eseguire la migrazione di un account di archiviazioneStep 5: Migrate a storage account

Dopo aver completato la migrazione delle macchine virtuali, si consiglia di migrare l'account di archiviazione.Once you're done migrating the virtual machines, we recommend you migrate the storage account.

Preparare l'account di archiviazione per la migrazione con il comando seguente.Prepare the storage account for migration by using the following command

azure storage account prepare-migration <storageAccountName>

Controllare la configurazione per l'account di archiviazione preparato tramite l'interfaccia della riga di comando o il portale di Azure.Check the configuration for the prepared storage account by using either CLI or the Azure portal. Se non si è pronti per la migrazione e si vuole tornare allo stato precedente, usare il comando seguente.If you are not ready for migration and you want to go back to the old state, use the following command.

azure storage account abort-migration <storageAccountName>

Se la configurazione preparata appare corretta, è possibile procedere ed eseguire il commit delle risorse usando il comando seguente.If the prepared configuration looks good, you can move forward and commit the resources by using the following command.

azure storage account commit-migration <storageAccountName>

Passaggi successiviNext steps