Déployer une machine virtuelle à partir d’une image spécialisée sur votre appareil GPU Azure Stack Edge Pro via Azure PowerShell

S’APPLIQUE À :Yes for Pro GPU SKUAzure Stack Edge Pro - GPUYes for Pro 2 SKUAzure Stack Edge Pro 2Yes for Pro R SKUAzure Stack Edge Pro RYes for Mini R SKUAzure Stack Edge Mini R

Cet article décrit les étapes nécessaires pour déployer une machine virtuelle sur votre appareil GPU Azure Stack Edge Pro à partir d’une image spécialisée.

Pour préparer une image généralisée pour le déploiement de machines virtuelles sur un appareil GPU Azure Stack Edge Pro, consultez Préparer une image généralisée à partir d’un disque dur virtuel Windows ou Préparer une image généralisée à partir d’un fichier ISO.

À propos des images de machine virtuelle

Un disque dur virtuel Windows ou un VHDX peut être utilisé pour créer une image spécialisée ou une image généralisée. Le tableau suivant récapitule les principales différences entre les images spécialisées et généralisées.

Type d’image Généralisée Spécialisée
Cible Déployée sur n’importe quel système. Ciblée sur un système spécifique.
Installation après le démarrage Installation requise au premier démarrage de la machine virtuelle. Aucune configuration n’est nécessaire.
La plateforme active la machine virtuelle.
Configuration Nom d’hôte, utilisateur admin et autres paramètres spécifiques à la machine virtuelle obligatoires. Préconfigurée.
Utilisée lors de Création de plusieurs nouvelles machines virtuelles à partir de la même image. Migration d’une machine spécifique ou restauration d’une machine virtuelle à partir d’une sauvegarde précédente.

Workflow

Le flux de travail de haut niveau pour déployer une machine virtuelle à partir d’une image spécialisée est le suivant :

  1. Copiez le disque dur virtuel dans un compte de stockage local sur votre appareil GPU Azure Stack Edge Pro.
  2. Créez un disque managé géré à partir du disque dur virtuel.
  3. Créez une machine virtuelle à partir du disque managé, puis attachez le disque managé.

Prérequis

Avant de pouvoir déployer une machine virtuelle sur votre appareil via PowerShell, vérifiez les éléments suivants :

Vérifier la connexion locale à l’instance Azure Resource Manager

Vérifiez que votre client peut se connecter à l’instance Azure Resource Manager locale.

  1. Appelez les API de l’appareil local pour l’authentification :

    Login-AzureRMAccount -EnvironmentName <Environment Name>
    
  2. Indiquez le nom d’utilisateur EdgeArmUser et le mot de passe pour vous connecter via Azure Resource Manager. Si vous ne rappelez pas le mot de passe, réinitialisez le mot de passe pour Azure Resource Manager et utilisez ce mot de passe pour vous connecter.

Déployer une machine virtuelle à partir d’une image spécialisée

Les sections suivantes contiennent des instructions pas à pas pour déployer une machine virtuelle à partir d’une image spécialisée.

Copier le disque dur virtuel vers le compte de stockage local sur l’appareil

Procédez comme suit pour copier le disque dur virtuel vers le compte de stockage local :

  1. Copiez le disque dur virtuel source dans un compte de stockage blob local sur votre appareil Azure Stack Edge.

  2. Prenez note de l’URI qui en résulte. Vous utilisez cet URI dans une étape ultérieure.

    Pour créer un compte de stockage local et y accéder, consultez les sections Créer un compte de stockage via Charger un disque dur virtuel dans l’article : Déployer des machines virtuelles sur votre appareil Azure Stack Edge via Azure PowerShell.

Créer un disque managé à partir d’un disque dur virtuel

Procédez comme suit pour créer un disque managé à partir d’un disque dur virtuel que vous avez chargé vers le compte de stockage précédemment :

  1. Définissez certains paramètres.

    $VhdURI = <URI of VHD in local storage account>
    $DiskRG = <managed disk resource group>
    $DiskName = <managed disk name>    
    

    Voici un exemple de sortie.

    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"
    
  2. Créez un disque managé.

    $StorageAccountId = (Get-AzureRmStorageAccount -ResourceGroupName $ResourceGroupName -Name $StorageAccountName).Id
    
    $DiskConfig = New-AzureRmDiskConfig -Location DBELocal -StorageAccountId $StorageAccountId -CreateOption Import -SourceUri "Source URL for your VHD"
    
    

    Voici un exemple de sortie. L’emplacement est ici défini sur l’emplacement du compte de stockage local et il s’agit toujours de DBELocal pour tous les comptes de stockage locaux sur votre appareil GPU Azure Stack Edge Pro.

    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>    
    

Créer une machine virtuelle à partir d’un disque managé

Pour créer une machine virtuelle à partir d’un disque managé, procédez comme suit :

  1. Définissez certains paramètres.

    $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> 
    

    Remarque

    Le paramètre PrivateIP est facultatif. Utilisez ce paramètre pour affecter une adresse IP statique, sans quoi la valeur par défaut est une adresse IP dynamique utilisant DHCP.

    Voici un exemple de sortie. Dans cet exemple, le même groupe de ressources est spécifié pour toutes les ressources de machine virtuelle, mais vous pouvez créer et spécifier des groupes de ressources distincts pour les ressources, si nécessaire.

    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"   
    
  2. Obtenez les informations sur le réseau virtuel et créez une interface réseau.

    Cet exemple part du principe que vous créez une seule interface réseau sur le réseau ASEVNET virtuel par défaut associé au groupe ASERGde ressources par défaut. Si nécessaire, vous pouvez spécifier un autre réseau virtuel ou créer plusieurs interfaces réseau. Pour plus d’informations, consultez Ajouter une interface réseau à une machine virtuelle via le portail 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
    

    Voici un exemple de sortie.

    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>    
    
  3. Créez un objet de configuration de machine virtuelle.

    $vmConfig = New-AzureRmVMConfig -VMName $VMName -VMSize $VMSize
    
  4. Ajoutez l’interface réseau à la machine virtuelle.

    $vm = Add-AzureRmVMNetworkInterface -VM $vmConfig -Id $nic.Id
    
  5. Définissez les propriétés du disque du système d’exploitation sur la machine virtuelle.

    $vm = Set-AzureRmVMOSDisk -VM $vm -ManagedDiskId $disk.Id -StorageAccountType StandardLRS -CreateOption Attach –[Windows/Linux]
    

    Le dernier indicateur de cette commande sera soit -Windows-Linux selon le système d’exploitation que vous utilisez pour votre machine virtuelle.

  6. Créez la machine virtuelle.

    New-AzureRmVM -ResourceGroupName $VMRG -Location DBELocal -VM $vm 
    

    Voici un exemple de sortie.

    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>
    

Supprimer la machine virtuelle et les ressources

Cet article a utilisé un seul groupe de ressources pour créer toutes les ressources de machine virtuelle. La suppression de ce groupe de ressources supprime la machine virtuelle et toutes les ressources associées.

  1. Tout d’abord, affichez toutes les ressources créées sous le groupe de ressources.

    Get-AzureRmResource -ResourceGroupName <Resource group name>
    

    Voici un exemple de sortie.

    PS C:\WINDOWS\system32> Get-AzureRmResource -ResourceGroupName myasevm1rg
    
    
    Name              : myasemd1
    ResourceGroupName : myasevm1rg
    ResourceType      : Microsoft.Compute/disks
    Location          : dbelocal
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myasevm1rg/providers/Microsoft.Compute/disk
                        s/myasemd1
    
    Name              : myasetestvm1
    ResourceGroupName : myasevm1rg
    ResourceType      : Microsoft.Compute/virtualMachines
    Location          : dbelocal
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myasevm1rg/providers/Microsoft.Compute/virt
                        ualMachines/myasetestvm1
    
    Name              : myasevmnic1
    ResourceGroupName : myasevm1rg
    ResourceType      : Microsoft.Network/networkInterfaces
    Location          : dbelocal
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myasevm1rg/providers/Microsoft.Network/netw
                        orkInterfaces/myasevmnic1
    
    Name              : myasevmsa
    ResourceGroupName : myasevm1rg
    ResourceType      : Microsoft.Storage/storageaccounts
    Location          : dbelocal
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myasevm1rg/providers/Microsoft.Storage/stor
                        ageaccounts/myasevmsa
    
    PS C:\WINDOWS\system32>
    
  2. Supprimez le groupe de ressources et toutes les ressources associées.

    Remove-AzureRmResourceGroup -ResourceGroupName <Resource group name>
    

    Voici un exemple de sortie.

    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>
    
  3. Vérifiez que le groupe de ressources a été supprimé. Récupérez tous les groupes de ressources qui existent sur l’appareil.

    Get-AzureRmResourceGroup
    

    Voici un exemple de sortie.

    PS C:\WINDOWS\system32> Get-AzureRmResourceGroup
    
    ResourceGroupName : ase-image-resourcegroup
    Location          : dbelocal
    ProvisioningState : Succeeded
    Tags              :
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/ase-image-resourcegroup
    
    ResourceGroupName : ASERG
    Location          : dbelocal
    ProvisioningState : Succeeded
    Tags              :
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/ASERG
    
    ResourceGroupName : myaserg
    Location          : dbelocal
    ProvisioningState : Succeeded
    Tags              :
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myaserg
    
    PS C:\WINDOWS\system32>
    

Étapes suivantes