Distribuire una macchina virtuale da un'immagine specializzata nel dispositivo AZURE Stack Edge Pro GPU tramite Azure PowerShell
SI APPLICA A: Azure Stack Edge Pro - GPUAzure Stack Edge Pro 2Azure Stack Edge Pro RAzure Stack Edge Mini R
Questo articolo descrive i passaggi necessari per distribuire una macchina virtuale (VM) nel dispositivo Azure Stack Edge Pro GPU da un'immagine specializzata.
Per preparare un'immagine generalizzata per la distribuzione di macchine virtuali in Azure Stack Edge Pro GPU, vedere Preparare un'immagine generalizzata da un disco rigido virtuale Windows o Preparare un'immagine generalizzata da un ISO.
Informazioni sulle immagini delle macchine virtuali
Un disco rigido virtuale Windows o VHDX può essere usato per creare un'immagine specializzata o un'immagine generalizzata . La tabella seguente riepiloga le differenze principali tra le immagini specializzate e le immagini generalizzate .
Tipo di immagine | Generalizzata | Specializzata |
---|---|---|
Destinazione | Distribuito in qualsiasi sistema. | Destinato a un sistema specifico. |
Installazione dopo l'avvio | Installazione necessaria al primo avvio della macchina virtuale. | Nessuna configurazione necessaria. La piattaforma attiva la macchina virtuale. |
Impostazione | Nome host, utente amministratore e altre impostazioni specifiche della macchina virtuale necessarie. | Preconfigurato. |
Usato quando | Creazione di più nuove macchine virtuali dalla stessa immagine. | Migrazione di un computer specifico o ripristino di una macchina virtuale dal backup precedente. |
Workflow
Il flusso di lavoro generale per distribuire una macchina virtuale da un'immagine specializzata è:
- Copiare il disco rigido virtuale in un account di archiviazione locale nel dispositivo Azure Stack Edge Pro GPU.
- Creare un nuovo disco gestito dal disco rigido virtuale.
- Creare una nuova macchina virtuale dal disco gestito e collegare il disco gestito.
Prerequisiti
Prima di poter distribuire una macchina virtuale nel dispositivo tramite PowerShell, assicurarsi che:
- È possibile accedere a un client usato per connettersi al dispositivo.
- Il client esegue un sistema operativo supportato.
- Il client è configurato per connettersi all'istanza locale di Azure Resource Manager del dispositivo in base alle istruzioni riportate in Connettersi ad Azure Resource Manager per il dispositivo.
Verificare la connessione locale di Azure Resource Manager
Verificare che il client possa connettersi all'istanza locale di Azure Resource Manager.
Chiamare le API del dispositivo locale per l'autenticazione:
Login-AzureRMAccount -EnvironmentName <Environment Name>
Specificare il nome utente
EdgeArmUser
e la password da connettere tramite Azure Resource Manager. Se non si richiama la password, reimpostare la password per Azure Resource Manager e usare questa password per accedere.
Distribuire una macchina virtuale da un'immagine specializzata
Le sezioni seguenti contengono istruzioni dettagliate per distribuire una macchina virtuale da un'immagine specializzata.
Copiare il disco rigido virtuale nell'account di archiviazione locale nel dispositivo
Seguire questa procedura per copiare il disco rigido virtuale nell'account di archiviazione locale:
Copiare il disco rigido virtuale di origine in un account di archiviazione BLOB locale in Azure Stack Edge.
Prendere nota dell'URI risultante. Questo URI viene usato in un passaggio successivo.
Per creare e accedere a un account di archiviazione locale, vedere le sezioni Creare un account di archiviazione tramite Caricare un disco rigido virtuale nell'articolo Distribuire macchine virtuali nel dispositivo Azure Stack Edge tramite Azure PowerShell.
Creare un disco gestito dal disco rigido virtuale
Seguire questa procedura per creare un disco gestito da un disco rigido virtuale caricato in precedenza nell'account di archiviazione:
Impostare alcuni parametri.
$VhdURI = <URI of VHD in local storage account> $DiskRG = <managed disk resource group> $DiskName = <managed disk name>
Ecco un esempio di output.
PS C:\WINDOWS\system32> $VHDURI = "https://myasevmsa.blob.myasegpudev.wdshcsso.com/vhds/WindowsServer2016Datacenter.vhd" PS C:\WINDOWS\system32> $DiskRG = "myasevm1rg" PS C:\WINDOWS\system32> $DiskName = "myasemd1"
Creare un nuovo disco gestito.
$StorageAccountId = (Get-AzureRmStorageAccount -ResourceGroupName $ResourceGroupName -Name $StorageAccountName).Id $DiskConfig = New-AzureRmDiskConfig -Location DBELocal -StorageAccountId $StorageAccountId -CreateOption Import -SourceUri "Source URL for your VHD"
Ecco un esempio di output. Il percorso qui è impostato sulla posizione dell'account di archiviazione locale ed è sempre
DBELocal
per tutti gli account di archiviazione locali nel dispositivo Azure Stack Edge Pro GPU.PS C:\WINDOWS\system32> $DiskConfig = New-AzureRmDiskConfig -Location DBELocal -CreateOption Import -SourceUri $VHDURI PS C:\WINDOWS\system32> $disk = New-AzureRMDisk -ResourceGroupName $DiskRG -DiskName $DiskName -Disk $DiskConfig PS C:\WINDOWS\system32>
Creare una macchina virtuale da un disco gestito
Seguire questa procedura per creare una macchina virtuale da un disco gestito:
Impostare alcuni parametri.
$NicRG = <NIC resource group> $NicName = <NIC name> $IPConfigName = <IP config name> $PrivateIP = <IP address> #Optional $VMRG = <VM resource group> $VMName = <VM name> $VMSize = <VM size>
Nota
PrivateIP
è facoltativo. Usare questo parametro per assegnare un indirizzo IP statico. In caso contrario, l'impostazione predefinita è un indirizzo IP dinamico tramite DHCP.Ecco un esempio di output. In questo esempio viene specificato lo stesso gruppo di risorse per tutte le risorse della macchina virtuale, anche se è possibile creare e specificare gruppi di risorse separati per le risorse, se necessario.
PS C:\WINDOWS\system32> $NicRG = "myasevm1rg" PS C:\WINDOWS\system32> $NicName = "myasevmnic1" PS C:\WINDOWS\system32> $IPConfigName = "myaseipconfig1" PS C:\WINDOWS\system32> $VMRG = "myasevm1rg" PS C:\WINDOWS\system32> $VMName = "myasetestvm1" PS C:\WINDOWS\system32> $VMSize = "Standard_D1_v2"
Ottenere le informazioni sulla rete virtuale e creare una nuova interfaccia di rete.
Questo esempio presuppone che si stia creando una singola interfaccia di rete nella rete
ASEVNET
virtuale predefinita associata al gruppoASERG
di risorse predefinito . Se necessario, è possibile specificare una rete virtuale alternativa o creare più interfacce di rete. Per altre informazioni, vedere Aggiungere un'interfaccia di rete a una macchina virtuale tramite il portale di Azure.$armVN = Get-AzureRMVirtualNetwork -Name ASEVNET -ResourceGroupName ASERG $ipConfig = New-AzureRmNetworkInterfaceIpConfig -Name $IPConfigName -SubnetId $armVN.Subnets[0].Id [-PrivateIpAddress $PrivateIP] $nic = New-AzureRmNetworkInterface -Name $NicName -ResourceGroupName $NicRG -Location DBELocal -IpConfiguration $ipConfig
Ecco un esempio di output.
PS C:\WINDOWS\system32> $armVN = Get-AzureRMVirtualNetwork -Name ASEVNET -ResourceGroupName ASERG PS C:\WINDOWS\system32> $ipConfig = New-AzureRmNetworkInterfaceIpConfig -Name $IPConfigName -SubnetId $armVN.Subnets[0].Id PS C:\WINDOWS\system32> $nic = New-AzureRmNetworkInterface -Name $NicName -ResourceGroupName $NicRG -Location DBELocal -IpConfiguration $ipConfig WARNING: The output object type of this cmdlet will be modified in a future release. PS C:\WINDOWS\system32>
Creare un nuovo oggetto di configurazione della macchina virtuale.
$vmConfig = New-AzureRmVMConfig -VMName $VMName -VMSize $VMSize
Aggiungere l'interfaccia di rete alla macchina virtuale.
$vm = Add-AzureRmVMNetworkInterface -VM $vmConfig -Id $nic.Id
Impostare le proprietà del disco del sistema operativo nella macchina virtuale.
$vm = Set-AzureRmVMOSDisk -VM $vm -ManagedDiskId $disk.Id -StorageAccountType StandardLRS -CreateOption Attach –[Windows/Linux]
L'ultimo flag in questo comando sarà
-Windows
o-Linux
a seconda del sistema operativo in uso per la macchina virtuale.Creare la macchina virtuale.
New-AzureRmVM -ResourceGroupName $VMRG -Location DBELocal -VM $vm
Ecco un esempio di output.
PS C:\WINDOWS\system32> $vmConfig = New-AzureRmVMConfig -VMName $VMName -VMSize $VMSize PS C:\WINDOWS\system32> $vm = Add-AzureRmVMNetworkInterface -VM $vmConfig -Id $nic.Id PS C:\WINDOWS\system32> $vm = Set-AzureRmVMOSDisk -VM $vm -ManagedDiskId $disk.Id -StorageAccountType StandardLRS -CreateOption Attach -Windows PS C:\WINDOWS\system32> New-AzureRmVM -ResourceGroupName $VMRG -Location DBELocal -VM $vm WARNING: Since the VM is created using premium storage or managed disk, existing standard storage account, myasevmsa, is used for boot diagnostics. RequestId IsSuccessStatusCode StatusCode ReasonPhrase --------- ------------------- ---------- ------------ True OK OK PS C:\WINDOWS\system32>
Eliminare macchine virtuali e risorse
Questo articolo ha usato un solo gruppo di risorse per creare tutte le risorse della macchina virtuale. L'eliminazione di tale gruppo di risorse elimina la macchina virtuale e tutte le risorse associate.
Visualizzare prima tutte le risorse create nel gruppo di risorse.
Get-AzureRmResource -ResourceGroupName <Resource group name>
Ecco un esempio di output.
PS C:\WINDOWS\system32> Get-AzureRmResource -ResourceGroupName myasevm1rg Name : myasemd1 ResourceGroupName : myasevm1rg ResourceType : Microsoft.Compute/disks Location : dbelocal ResourceId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myasevm1rg/providers/Microsoft.Compute/disk s/myasemd1 Name : myasetestvm1 ResourceGroupName : myasevm1rg ResourceType : Microsoft.Compute/virtualMachines Location : dbelocal ResourceId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myasevm1rg/providers/Microsoft.Compute/virt ualMachines/myasetestvm1 Name : myasevmnic1 ResourceGroupName : myasevm1rg ResourceType : Microsoft.Network/networkInterfaces Location : dbelocal ResourceId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myasevm1rg/providers/Microsoft.Network/netw orkInterfaces/myasevmnic1 Name : myasevmsa ResourceGroupName : myasevm1rg ResourceType : Microsoft.Storage/storageaccounts Location : dbelocal ResourceId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myasevm1rg/providers/Microsoft.Storage/stor ageaccounts/myasevmsa PS C:\WINDOWS\system32>
Eliminare il gruppo di risorse e tutte le risorse associate.
Remove-AzureRmResourceGroup -ResourceGroupName <Resource group name>
Ecco un esempio di output.
PS C:\WINDOWS\system32> Remove-AzureRmResourceGroup -ResourceGroupName myasevm1rg Confirm Are you sure you want to remove resource group 'myasevm1rg' [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): Y True PS C:\WINDOWS\system32>
Verificare che il gruppo di risorse sia stato eliminato. Ottenere tutti i gruppi di risorse esistenti nel dispositivo.
Get-AzureRmResourceGroup
Ecco un esempio di output.
PS C:\WINDOWS\system32> Get-AzureRmResourceGroup ResourceGroupName : ase-image-resourcegroup Location : dbelocal ProvisioningState : Succeeded Tags : ResourceId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ase-image-resourcegroup ResourceGroupName : ASERG Location : dbelocal ProvisioningState : Succeeded Tags : ResourceId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ASERG ResourceGroupName : myaserg Location : dbelocal ProvisioningState : Succeeded Tags : ResourceId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myaserg PS C:\WINDOWS\system32>