Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
È possibile spostare DevTest Labs e le pianificazioni associate in un'altra area o in un altro gruppo di risorse. È possibile spostare i gruppi di risorse tramite il portale di Azure. Per spostare un lab, creare una copia di un lab esistente in un'altra area. Dopo aver spostato il lab e aver creato una macchina virtuale (VM) nell'area di destinazione, è possibile spostare le pianificazioni del lab.
In questo articolo vengono illustrate le operazioni seguenti:
- Spostare le risorse in gruppi di risorse diversi.
- Esportare un modello di Azure Resource Manager (ARM) del lab.
- Modificare il modello aggiungendo o aggiornando l'area di destinazione e altri parametri.
- Distribuire il modello per creare il nuovo lab nell'area di destinazione.
- Configurare il nuovo lab.
- Spostare i dati nel nuovo lab.
- Spostare i programmi nel nuovo laboratorio.
- Eliminare le risorse nell'area di origine.
Prerequisiti
Assicurarsi che i servizi e le funzionalità usati dall'account siano supportati nell'area di destinazione.
Per le funzionalità di anteprima, assicurarsi che la sottoscrizione sia consentita per l'area di destinazione.
DevTest Labs non archivia o espone le password dal modello arm esportato. È necessario conoscere le password o i segreti per:
- le macchine virtuali
- segreti archiviati
- Token PAT dei repository di artefatti privati per il trasferimento dei repository privati insieme al lab.
Quando si sposta una pianificazione lab, verificare che nell'area di destinazione esista una macchina virtuale di calcolo.
Spostare un laboratorio
La sezione seguente descrive come spostare le risorse in un gruppo di risorse diverso e creare e personalizzare un modello di Resource Manager per spostare un lab da un'area a un'altra.
È possibile spostare una pianificazione senza spostare un lab, se si dispone di una macchina virtuale nell'area di destinazione. Per spostare una pianificazione senza spostare un laboratorio, consulta Spostare una pianificazione.
Spostare gruppi di risorse usando il portale di Azure
Lo spostamento delle risorse tra gruppi di risorse in posizioni diverse è ora abilitato facilmente in DevTest Labs. È possibile trasferire facilmente qualsiasi risorsa da un gruppo a un altro all'interno della stessa sottoscrizione.
Per iniziare, selezionare la risorsa da spostare. Nella pagina Panoramica della risorsa, viene visualizzato il Gruppo di risorse corrente nella parte superiore. Accanto al nome del gruppo di risorse, verrà visualizzata la parola (move) tra parentesi.
Fare clic sul testo con move collegamento ipertestuale, che consente di passare a una nuova pagina in cui è possibile spostare la risorsa in qualsiasi altro gruppo di risorse all'interno della stessa sottoscrizione. Si noti che lo spostamento della risorsa non cambierà la posizione, anche se il gruppo di risorse di destinazione si trova in una posizione diversa. Se non si spostano risorse tramite il portale di Azure o se si esegue il trasferimento a un gruppo di risorse in una sottoscrizione diversa, i metodi alternativi con ARM sono descritti di seguito.
Spostare i laboratori in una regione diversa
Quando si sposta un lab, è necessario eseguire alcuni passaggi per preparare lo spostamento. Dovrai:
- Preparare la rete virtuale
- Esportare un modello ARM del laboratorio
- Modificare il modello
- Distribuire il modello per trasferire il lab
- Configurare il nuovo lab
- Scambiare i dischi del sistema operativo delle macchine virtuali di calcolo nelle nuove macchine virtuali
- Pulire il lab originale
Preparare la rete virtuale
Per iniziare, esportare e modificare un modello di Resource Manager.
Accedere al portale di Azure.
Se non hai un gruppo di risorse nell'area di destinazione, creane uno ora.
Spostare il Rete virtuale corrente nella nuova area e nel gruppo di risorse seguendo i passaggi inclusi nell'articolo "Spostare una rete virtuale di Azure in un'altra area".
In alternativa, è possibile creare una nuova rete virtuale, se non è necessario mantenere quella originale.
Esportare un modello ARM del laboratorio
Si esporta quindi un modello JSON contenente le impostazioni che descrivono il lab.
Per esportare un modello con il portale di Azure:
Selezionare Tutte le risorse e quindi selezionare il gruppo di risorse per il lab.
Selezionare Esporta modello.
Scegliere Scarica in Esporta modello.
Individuare il file .zip scaricato dal portale e decomprimere il file in una cartella di propria scelta.
Questo file ZIP contiene i file .json che includono il modello e gli script per distribuire il modello. Contiene tutte le risorse nel lab elencate in formato modello ARM, ad eccezione delle risorse della Raccolta immagini condivise.
Modificare il modello
Affinché il template di Resource Manager venga distribuito correttamente nella nuova regione, è necessario modificare alcune parti del template.
Per aggiornare il modello usando portale di Azure:
Nel portale di Azure selezionare Crea una risorsa.
In Cerca nel Marketplace digitare distribuzione modelli e quindi premere INVIO.
Selezionare Distribuzione del modello.
Seleziona Crea.
Selezionare Creare un modello personalizzato nell'editor.
Selezionare Carica file e quindi seguire le istruzioni per caricare il file template.json scaricato nell'ultima sezione.
Nell'editor apportare le modifiche seguenti al file template.json :
Sostituire l'originale
locationcon la nuova area in cui si vuole distribuire, ad esempiowestus2,southeastasiae così via. Per ottenere i codici di località dell'area, vedere Località di Azure. Il codice per un'area è il nome dell'area senza spazi, Stati Uniti =centraluscentrali."variables": {}, "resources": [ { "type": "microsoft.devtestlab/labs", "location": "centralus",Se "Tutte le macchine virtuali in un gruppo di risorse" è impostato nelle "Impostazioni Lab", aggiornare anche i valori seguenti nel modello ARM:
- Aggiornare il
apiVersiondella risorsamicrosoft.devtestlab/labsa2018-10-15-preview. - Aggiungere
vmCreationResourceGroupIdalla sezioneproperties.
"variables": {}, "resources": [ { "type": "microsoft.devtestlab/labs", "apiVersion": "2018-10-15-preview", "name": "[parameters('labs_lj_dtl_rgsettings_name')]", "location": "<regionName>", "properties": { "vmCreationResourceGroupId": "/subscriptions/<subscriptionID>/resourceGroups/<myResourceGroup>", "labStorageType": "Premium",- Aggiornare il
Trova la
"type": "microsoft.devtestlab/labs/users"risorsa. Lì, rimuovere l'intera sezionesecretStore, inclusi i parametrikeyVaultldekeyVaultUri.secretStore": { "keyVaultUri": "<vaultvalue>" "keyVaultld": "<id>" }Trova la
"type": "microsoft.devtestlab/labs/virtualnetworks"risorsa. Se in precedenza in questi passaggi è stata creata una nuova rete virtuale, è necessario aggiungere il nome effettivo della subnet in/subnets/[SUBNET_NAME]. Se si sceglie di spostare la rete virtuale in una nuova area, ignorare questo passaggio.Trova la
"type": "microsoft.devtestlab/labs/virtualmachines"risorsa.Sotto le "proprietà", aggiungere
"password": "RANDOM_PASSWORD"Nota
Per creare una nuova macchina virtuale, è necessaria una proprietà "password". Verrà immessa una password casuale perché in un secondo momento il disco del sistema operativo verrà scambiato con la macchina virtuale originale.
Per Macchine virtuali IP condivisi, aggiungere questo frammento di codice in "properties.networkInterface",
Vm Windows con RDP:
"networkInterface": { "sharedPublicIpAddressConfiguration": { "inboundNatRules": [ { "transportProtocol": "tcp", "backendPort": 3389 } ] } }Vm Linux con SSH:
"networkInterface": { "sharedPublicIpAddressConfiguration": { "inboundNatRules": [ { "transportProtocol": "tcp", "backendPort": 22 } ] } }
Sotto le risorse
microsoft.devtestlab/labs/users/secrets, il seguente parametro è "proprietà". SostituireYOUR_STORED_PASSWORDcon la password.Importante
Usare secureString per i valori delle password.
"value": "YOUR_STORED_PASSWORD"Sotto le
microsoft.devtestlab/labs/artifactsourcesrisorse, il parametro "proprietà" è il seguente. SostituireYOUR_STORED_PASSWORDcon la password. Anche in questo caso, usare secureString per i valori delle password."securityToken": "YOUR_PAT_TOKEN_VALUE"Nell'editor salvare il modello.
Distribuire il modello per trasferire il lab
Distribuire il modello per creare un nuovo lab nell'area di destinazione.
Nella pagina Distribuzione personalizzata aggiornare tutti i parametri con i valori corrispondenti definiti nel modello.
Immettere i valori seguenti:
Nome Valore Abbonamento Selezionare una sottoscrizione di Azure. Gruppo di risorse Selezionare il nome di gruppo di risorse creato nella sezione precedente. Location Selezionare una posizione per il laboratorio. Ad esempio Stati Uniti centrali. Nome lab Deve essere un nome diverso. ID Vnet Deve essere quello spostato, oppure quello nuovo che hai creato. Selezionare Rivedi e crea.
Seleziona Crea.
Selezionare l'icona a forma di campana delle notifiche nella parte superiore della schermata per visualizzare lo stato della distribuzione. Verrà visualizzato lo stato Distribuzione in corso. Attendere il completamento della distribuzione.
Configurare il nuovo lab
Anche se la maggior parte delle risorse del Lab è stata replicata nella nuova regione usando il modello di Azure Resource Manager, è comunque necessario trasferire manualmente alcune modifiche.
- Aggiungere nuovamente la Raccolta di calcolo al lab, se presente nell'originale.
- Aggiungere nuovamente i criteri "Macchine virtuali per utente", "Macchine virtuali per lab" e "Dimensioni consentite delle macchine virtuali" al lab spostato.
Scambiare i dischi del sistema operativo delle macchine virtuali di calcolo nelle nuove macchine virtuali
Si noti che le macchine virtuali nel nuovo lab hanno le stesse specifiche delle macchine virtuali del lab precedente. L'unica differenza sono i dischi del sistema operativo.
Creare un disco vuoto nella nuova area.
Ottenere il nome del disco del sistema operativo della macchina virtuale di calcolo di destinazione nel nuovo lab. È possibile trovare la macchina virtuale di calcolo e il relativo disco nel gruppo di risorse nella pagina Macchina virtuale del lab.
Usare AzCopy per copiare il contenuto del disco precedente nei dischi nuovi/vuoti nella nuova area. È possibile eseguire i comandi di PowerShell da Dev Box o da Azure Cloud Shell.
AzCopy è lo strumento preferito per spostare i dati. È ottimizzato per le prestazioni. Un modo in cui è più veloce, è che i dati vengono copiati direttamente, quindi AzCopy non usa la larghezza di banda di rete del computer. Usare AzCopy nella riga di comando o come parte di uno script personalizzato. Vedere Introduzione ad AzCopy.
# Fill in the source/target disk names and their resource group names $sourceDiskName = "SOURCE_DISK" $sourceRG = "SOURCE_RG" $targetDiskName = "TARGET_DISK" $targetRG = "TARGET_RG" $targetRegion = "TARGET_LOCATION" # Create an empty target disk from the source disk $sourceDisk = Get-AzDisk -ResourceGroupName $sourceRG -DiskName $sourceDiskName $targetDiskconfig = New-AzDiskConfig -SkuName $sourceDisk.Sku.Name -UploadSizeInBytes $($sourceDisk.DiskSizeBytes+512) -Location $targetRegion -OsType $sourceDisk.OsType -CreateOption 'Upload' $targetDisk = New-AzDisk -ResourceGroupName $targetRG -DiskName $targetDiskName -Disk $targetDiskconfig # Copy the disk content from source to target $sourceDiskSas = Grant-AzDiskAccess -ResourceGroupName $sourceRG -DiskName $sourceDiskName -DurationInSecond 1800 -Access 'Read' $targetDiskSas = Grant-AzDiskAccess -ResourceGroupName $targetRG -DiskName $targetDiskName -DurationInSecond 1800 -Access 'Write' azcopy copy $sourceDiskSas.AccessSAS $targetDiskSas.AccessSAS --blob-type PageBlob Revoke-AzDiskAccess -ResourceGroupName $sourceRG -DiskName $sourceDiskName Revoke-AzDiskAccess -ResourceGroupName $targetRG -DiskName $targetDiskNameSuccessivamente, avrai un nuovo disco sotto la nuova regione.
- Scambiare il disco del sistema operativo della macchina virtuale di calcolo nel nuovo lab con il nuovo disco. Per informazioni su come, vedere l'articolo "Modificare il disco del sistema operativo usato da una macchina virtuale di Azure con PowerShell".
Spostare una pianificazione
Esistono due modi per spostare una pianificazione:
- Ricreare manualmente le pianificazioni nelle macchine virtuali spostate. Questo processo può richiedere molto tempo e può essere soggetto a errori. Questo approccio è più utile quando sono presenti alcune pianificazioni e macchine virtuali.
- Esportare e ridistribuire le pianificazioni usando i modelli ARM.
Usare la procedura seguente per esportare e ridistribuire il programma in un'altra area di Azure usando un modello ARM.
Accedere al portale di Azure.
Passare al gruppo di risorse di origine che contiene le macchine virtuali.
Nella pagina Panoramica del gruppo di risorse, in Risorse selezionare Mostra tipi nascosti.
Selezionare tutte le risorse con il tipo microsoft.devtestlab/schedules.
Selezionare Esporta modello.
Nella pagina Esporta modello di gruppo di risorse, seleziona Distribuisci.
Nella pagina Distribuzione personalizzata, selezionare Modifica modello.
Nel codice del modello modificare tutte le istanze di
"location": "<old location>"in"location": "<new location>"e quindi selezionare Salva.Nella pagina Distribuzione personalizzata immettere i valori corrispondenti alla macchina virtuale di destinazione:
Nome Valore Abbonamento Selezionare una sottoscrizione di Azure. Gruppo di risorse Selezionare il nome del gruppo di risorse. Regione Selezionare una posizione per la pianificazione del laboratorio. Ad esempio Stati Uniti centrali. Nome pianificazione Deve essere un nome univoco globale. VirtualMachine_xxx_externalId Deve essere la macchina virtuale di destinazione.
Importante
Ogni pianificazione deve avere un nome univoco globale; sarà necessario modificare il nome della pianificazione per la nuova posizione.
Selezionare Rivedi e crea per creare la distribuzione.
Al termine della distribuzione, verificare che la nuova pianificazione sia configurata correttamente nella nuova macchina virtuale.
Eliminare o pulire
Dopo la distribuzione, se si vuole ricominciare, è possibile eliminare il lab di destinazione e ripetere i passaggi descritti nelle sezioni Preparazione e spostamento di questo articolo.
Per fare il commit delle modifiche e completare lo spostamento, è necessario eliminare il laboratorio originale.
Per rimuovere un lab usando il portale di Azure:
Nella portale di Azure espandere il menu a sinistra per aprire il menu dei servizi e scegliere DevTest Labs per visualizzare l'elenco dei lab.
Individuare il laboratorio di destinazione da eliminare e cliccare con il tasto destro del mouse sul pulsante Altro (...) sul lato destro dell'elenco.
Selezionare Elimina e confermare.
È anche possibile scegliere di pulire le pianificazioni originali se non vengono più usate. Passare al gruppo di risorse di pianificazione originale (in cui sono stati esportati modelli nel passaggio 5 precedente) ed eliminare la risorsa di pianificazione.
Passaggi successivi
In questo articolo è stato spostato DevTest Labs da un'area a un'altra ed è stata eseguita la pulizia delle risorse di origine. Per altre informazioni sullo spostamento di risorse tra aree e sul ripristino di emergenza in Azure, vedere: