Skapa vm-disklagring i Azure Stack Hub

Den här artikeln beskriver hur du skapar disklagring för virtuella datorer med hjälp av Azure Stack Hub-portalen eller med hjälp av PowerShell.

Översikt

Azure Stack Hub stöder användning av hanterade diskar och ohanterade diskar på virtuella datorer, både som operativsystem (OS) och en datadisk.

Hanterade diskar förenklar diskhanteringen för virtuella Azure IaaS-datorer genom att hantera de lagringskonton som är associerade med de virtuella datordiskarna. Du behöver bara ange storleken på disken som du behöver och Azure Stack Hub skapar och hanterar disken åt dig.

Ohanterade diskar kräver att du skapar ett lagringskonto för att lagra diskarna. De diskar som du skapar kallas vm-diskar och lagras i containrar på lagringskontot.

Riktlinjer för bästa praxis

Vi rekommenderar att du använder hanterade diskar för virtuella datorer för enklare hantering och kapacitetsbalans. Du behöver inte förbereda ett lagringskonto och containrar innan du använder hanterade diskar. När du skapar flera hanterade diskar distribueras diskarna till flera volymer, vilket hjälper till att balansera volymernas kapacitet.

För ohanterade diskar rekommenderar vi att du placerar varje ohanterad disk i en separat container för att förbättra prestanda och minska de totala kostnaderna. Även om du kan placera både OS-diskar och datadiskar i samma container är bästa praxis att en container ska innehålla antingen en OS-disk eller en datadisk, men inte båda samtidigt.

Om du lägger till en eller flera datadiskar till en virtuell dator använder du ytterligare containrar som en plats för att lagra dessa diskar. OS-disken för ytterligare virtuella datorer bör också finnas i sina egna containrar.

När du skapar virtuella datorer kan du återanvända samma lagringskonto för varje ny virtuell dator. Endast de containrar som du skapar ska vara unika.

Lägga till nya diskar

I följande tabell sammanfattas hur du lägger till diskar med hjälp av portalen och med hjälp av PowerShell:

Metod Alternativ
Användarportal – Lägg till nya datadiskar till en befintlig virtuell dator. Nya diskar skapas av Azure Stack Hub.

– Lägg till en befintlig diskfil (.vhd) till en tidigare skapad virtuell dator. För att göra det måste du förbereda .vhd och sedan ladda upp filen till Azure Stack Hub.
PowerShell – Skapa en ny virtuell dator med en OS-disk och lägg samtidigt till en eller flera datadiskar till den virtuella datorn.

Använd portalen för att lägga till diskar till en virtuell dator

När du använder portalen för att skapa en virtuell dator för de flesta Marketplace-objekt skapas som standard endast OS-disken.

När du har skapat en virtuell dator kan du använda portalen för att:

  • Skapa en ny datadisk och koppla den till den virtuella datorn.
  • Ladda upp en befintlig datadisk och koppla den till den virtuella datorn.

Placera varje ohanterad disk som du lägger till i en separat container.

Använd portalen för att skapa och koppla en ny datadisk

  1. I portalen väljer du Alla tjänster, sedan Compute och sedan Virtuella datorer. Exempel: Instrumentpanel för virtuell dator

  2. Välj en virtuell dator som tidigare har skapats i listan.

  3. För den virtuella datorn väljer du Diskar och sedan Lägg till datadisk. Skärmbild som visar hur du ansluter en ny disk till den virtuella datorn.

  4. För datadisken:

    • Ange LUN. LUN måste vara ett giltigt tal.
    • Välj Skapa disk. Skärmbild som visar hur du skapar en ny datadisk.
  5. På bladet Skapa hanterad disk :

    • Ange diskens namn .
    • Välj en befintlig resursgrupp eller skapa en ny.
    • Välj Plats. Som standard är platsen inställd på samma container som innehåller OS-disken.
    • Välj Kontotyp. Exempel: Koppla en ny disk till den virtuella datorn

    Anteckning

    Premiumdiskar (SSD) och standarddiskar (HDD) backas upp av samma lagringsinfrastruktur i Azure Stack Hub. De ger samma prestanda.

    • Välj Typ av källa.

      Skapa en disk från en ögonblicksbild av en annan disk, en blob i ett lagringskonto eller skapa en tom disk.

      Ögonblicksbild: Välj en ögonblicksbild om den är tillgänglig. Ögonblicksbilden måste vara tillgänglig i den virtuella datorns prenumeration och plats.

      Lagringsblob:

      • Lägg till URI:n för lagringsbloben som innehåller diskens avbildning.
      • Välj Bläddra för att öppna bladet lagringskonton. Anvisningar finns i Lägga till en datadisk från ett lagringskonto.
      • Välj operativsystemtypen för avbildningen: Windows, Linux eller Ingen (datadisk).
    • Välj Storlek (GiB).

      Diskkostnaderna ökar baserat på diskens storlek.

    • Välj Skapa. Azure Stack Hub skapar och validerar den hanterade disken.

  6. När Azure Stack Hub har skapat disken och ansluter den till den virtuella datorn visas den nya disken i inställningarna för den virtuella datorns disk under Datadiskar.

    Exempel: Visa disk

Lägga till en datadisk från ett lagringskonto

Mer information om hur du arbetar med lagringskonton i Azure Stack Hub finns i Introduktion till Azure Stack Hub-lagring.

  1. Välj det lagringskonto som ska användas.

  2. Välj den container där du vill placera datadisken. Från bladet Containrar kan du skapa en ny container om du vill. Du kan sedan ändra platsen för den nya disken till en egen container. När du använder en separat container för varje disk distribuerar du placeringen av datadisken, vilket ger bättre prestanda.

  3. Välj Välj för att spara markeringen.

    Skärmbild som visar hur du väljer en container.

Koppla en befintlig datadisk till en virtuell dator

  1. Förbered en VHD-fil för användning som datadisk för en virtuell dator. Ladda upp VHD-filen till ett lagringskonto som du använder med den virtuella dator som du vill koppla VHD-filen till.

  2. När VHD-filen har laddats upp är du redo att koppla den virtuella hårddisken till en virtuell dator. Välj Virtuella datorer på menyn till vänster.
    Skärmbild som visar de valda virtuella datorerna.

  3. Välj den virtuella datorn i listan.

  4. På sidan för den virtuella datorn väljer du Diskar och sedan Anslut befintlig.

    Exempel: Koppla en befintlig disk

  5. På sidan Anslut befintlig disk väljer du VHD-fil. Sidan Lagringskonton öppnas.

    Exempel: Välj en VHD-fil

  6. Under Lagringskonton väljer du det konto som ska användas och väljer sedan en container som innehåller VHD-filen som du laddade upp tidigare. Välj VHD-filen och välj sedan Välj för att spara markeringen.

    Exempel: Välj en container

  7. Under Anslut befintlig disk visas den valda filen under VHD-fil. Uppdatera inställningen Värdcachelagring för disken och välj sedan OK för att spara den nya diskkonfigurationen för den virtuella datorn.

    Exempel: Bifoga VHD-filen

  8. När Azure Stack Hub har skapat disken och ansluter den till den virtuella datorn visas den nya disken i den virtuella datorns diskinställningar under Datadiskar.

    Exempel: Slutför diskanslutningen

Använda PowerShell för att lägga till flera diskar till en virtuell dator

Du kan använda PowerShell för att etablera en virtuell dator och lägga till nya datadiskar, eller koppla en befintlig hanterad disk eller VHD-fil som en datadisk.

Cmdleten Add-AzVMDataDisk lägger till en datadisk till en virtuell dator. Du kan lägga till en datadisk när du skapar en virtuell dator eller lägga till en datadisk till en befintlig virtuell dator. För en ohanterad disk anger du VhdUri-parametern för att distribuera diskarna till olika containrar.

Lägga till datadiskar till en ny virtuell dator

I följande exempel används PowerShell-kommandon för att skapa en virtuell dator med tre datadiskar. Kommandona tillhandahålls med flera delar på grund av de mindre skillnaderna när du använder hanterade diskar eller ohanterade diskar.

Skapa konfiguration av virtuella datorer och nätverksresurser

Följande skript skapar ett VM-objekt och lagrar det sedan i variabeln $VirtualMachine . Kommandona tilldelar ett namn och en storlek till den virtuella datorn och skapar sedan nätverksresurserna (virtuellt nätverk, undernät, virtuellt nätverkskort, NSG och offentlig IP-adress) för den virtuella datorn.

# Create new virtual machine configuration
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine" `
                                      -VMSize "Standard_A2"

# Set variables
$rgName = "myResourceGroup"
$location = "local"

# Create a subnet configuration
$subnetName = "mySubNet"
$singleSubnet = New-AzVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix 10.0.0.0/24

# Create a vnet configuration
$vnetName = "myVnetName"
$vnet = New-AzVirtualNetwork -Name $vnetName -ResourceGroupName $rgName -Location $location `
                                  -AddressPrefix 10.0.0.0/16 -Subnet $singleSubnet

# Create a public IP
$ipName = "myIP"
$pip = New-AzPublicIpAddress -Name $ipName -ResourceGroupName $rgName -Location $location `
                                  -AllocationMethod Dynamic

# Create a network security group configuration
$nsgName = "myNsg"
$rdpRule = New-AzNetworkSecurityRuleConfig -Name myRdpRule -Description "Allow RDP" `
                                                -Access Allow -Protocol Tcp -Direction Inbound -Priority 110 `
                                                -SourceAddressPrefix Internet -SourcePortRange * `
                                                -DestinationAddressPrefix * -DestinationPortRange 3389
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $rgName -Location $location `
                                       -Name $nsgName -SecurityRules $rdpRule

# Create a NIC configuration
$nicName = "myNicName"
$nic = New-AzNetworkInterface -Name $nicName -ResourceGroupName $rgName `
                                   -Location $location -SubnetId $vnet.Subnets[0].Id `
                                   -NetworkSecurityGroupId $nsg.Id -PublicIpAddressId $pip.Id

Lägga till hanterade diskar

Följande tre kommandon lägger till hanterade datadiskar till den virtuella datorn som lagras i $VirtualMachine. Varje kommando anger diskens namn och ytterligare egenskaper.

$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk1' `
                                        -Caching 'ReadOnly' -DiskSizeInGB 10 -Lun 0 `
                                        -CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk2' `
                                        -Caching 'ReadOnly' -DiskSizeInGB 11 -Lun 1 `
                                        -CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk3' `
                                        -Caching 'ReadOnly' -DiskSizeInGB 12 -Lun 2 `
                                        -CreateOption Empty

Följande kommando lägger till en OS-disk som en hanterad disk till den virtuella datorn som lagras i $VirtualMachine.

# Set OS Disk
$osDiskName = "osDisk"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name $osDiskName  `
                                      -CreateOption FromImage -Windows

Lägga till ohanterade diskar

De följande tre kommandona tilldelar sökvägar till tre ohanterade datadiskar till variablerna $DataDiskVhdUri01, $DataDiskVhdUri02och $DataDiskVhdUri03 . Definiera ett annat sökvägsnamn i URL:en för att distribuera diskarna till olika containrar:

$DataDiskVhdUri01 = "https://contoso.blob.local.azurestack.external/test1/data1.vhd"
$DataDiskVhdUri02 = "https://contoso.blob.local.azurestack.external/test2/data2.vhd"
$DataDiskVhdUri03 = "https://contoso.blob.local.azurestack.external/test3/data3.vhd"

Följande tre kommandon lägger till datadiskar till den virtuella datorn som lagras i $VirtualMachine. Varje kommando anger namn och ytterligare egenskaper för disken. URI:n för varje disk lagras i $DataDiskVhdUri01, $DataDiskVhdUri02och $DataDiskVhdUri03.

$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk1' `
                                        -Caching 'ReadOnly' -DiskSizeInGB 10 -Lun 0 `
                                        -VhdUri $DataDiskVhdUri01 -CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk2' `
                                        -Caching 'ReadOnly' -DiskSizeInGB 11 -Lun 1 `
                                        -VhdUri $DataDiskVhdUri02 -CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk3' `
                                        -Caching 'ReadOnly' -DiskSizeInGB 12 -Lun 2 `
                                        -VhdUri $DataDiskVhdUri03 -CreateOption Empty

Följande kommandon lägger till en ohanterad OS-disk till den virtuella datorn som lagras i $VirtualMachine.

# Set OS Disk
$osDiskUri = "https://contoso.blob.local.azurestack.external/vhds/osDisk.vhd"
$osDiskName = "osDisk"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name $osDiskName -VhdUri $osDiskUri `
                                      -CreateOption FromImage -Windows

Skapa en ny virtuell dator

Använd följande PowerShell-kommandon för att ange OS-avbildning, lägga till nätverkskonfiguration till den virtuella datorn och starta sedan den nya virtuella datorn.

#Create the new VM
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName VirtualMachine -ProvisionVMAgent | `
                  Set-AzVMSourceImage -PublisherName MicrosoftWindowsServer -Offer WindowsServer `
                  -Skus 2016-Datacenter -Version latest | Add-AzVMNetworkInterface -Id $nic.Id

New-AzVM -ResourceGroupName $rgName -Location $location -VM $VirtualMachine

Lägga till datadiskar till en befintlig virtuell dator

I följande exempel används PowerShell-kommandon för att lägga till tre datadiskar till en befintlig virtuell dator:

Hämta virtuell dator

Det första kommandot hämtar den virtuella datorn med namnet VirtualMachine med hjälp av cmdleten Get-AzVM . Kommandot lagrar den virtuella datorn i variabeln $VirtualMachine :

$VirtualMachine = Get-AzVM -ResourceGroupName "myResourceGroup" `
                                -Name "VirtualMachine"

Lägga till hanterad disk

De följande tre kommandona lägger till de hanterade datadiskarna till den virtuella dator som lagras i variabeln $VirtualMachine . Varje kommando anger diskens namn och ytterligare egenskaper.

Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk1" -Lun 0 `
                      -Caching ReadOnly -DiskSizeinGB 10 -CreateOption Empty
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk2" -Lun 1 `
                      -Caching ReadOnly -DiskSizeinGB 11 -CreateOption Empty
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk3" -Lun 2 `
                      -Caching ReadOnly -DiskSizeinGB 12 -CreateOption Empty

Lägg till ohanterad disk

De följande tre kommandona tilldelar sökvägar för tre datadiskar till variablerna $DataDiskVhdUri01, $DataDiskVhdUri02och $DataDiskVhdUri03 . De olika sökvägsnamnen i VHD-URI:erna anger olika containrar för diskplaceringen:

$DataDiskVhdUri01 = "https://contoso.blob.local.azurestack.external/test1/data1.vhd"
$DataDiskVhdUri02 = "https://contoso.blob.local.azurestack.external/test2/data2.vhd"
$DataDiskVhdUri03 = "https://contoso.blob.local.azurestack.external/test3/data3.vhd"

De följande tre kommandona lägger till datadiskarna på den virtuella datorn som lagras i variabeln $VirtualMachine . Varje kommando anger namn, plats och ytterligare egenskaper för disken. URI:n för varje disk lagras i $DataDiskVhdUri01, $DataDiskVhdUri02och $DataDiskVhdUri03.

Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk1" `
                      -VhdUri $DataDiskVhdUri01 -LUN 0 `
                      -Caching ReadOnly -DiskSizeinGB 10 -CreateOption Empty
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk2" `
                      -VhdUri $DataDiskVhdUri02 -LUN 1 `
                      -Caching ReadOnly -DiskSizeinGB 11 -CreateOption Empty
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk3" `
                      -VhdUri $DataDiskVhdUri03 -LUN 2 `
                      -Caching ReadOnly -DiskSizeinGB 12 -CreateOption Empty

Uppdatera tillstånd för virtuell dator

Det här kommandot uppdaterar tillståndet för den virtuella datorn som lagras i $VirtualMachine i -ResourceGroupName:

Update-AzVM -ResourceGroupName "myResourceGroup" -VM $VirtualMachine

Nästa steg

Mer information om virtuella Azure Stack Hub-datorer finns i Överväganden för Virtual Machines i Azure Stack Hub.