Vm-schijfopslag maken in Azure Stack Hub
In dit artikel wordt beschreven hoe u schijfopslag voor virtuele machines (VM's) maakt met behulp van de Azure Stack Hub-portal of met behulp van PowerShell.
Overzicht
Azure Stack Hub ondersteunt het gebruik van beheerde schijven en niet-beheerde schijven in VM's, als zowel een besturingssysteem als een gegevensschijf.
Beheerde schijven vereenvoudigen schijfbeheer voor Azure IaaS-VM's door de opslagaccounts te beheren die zijn gekoppeld aan de VM-schijven. U hoeft alleen de schijfgrootte op te geven die u nodig hebt en Azure Stack Hub maakt en beheert de schijf voor u.
Voor niet-beheerde schijven moet u een opslagaccount maken om de schijven op te slaan. De schijven die u maakt, worden VM-schijven genoemd en worden opgeslagen in containers in het opslagaccount.
Richtlijnen voor aanbevolen procedures
Het wordt aanbevolen beheerde schijven te gebruiken voor VM's voor eenvoudiger beheer en capaciteitsbalans. U hoeft geen opslagaccount en containers voor te bereiden voordat u beheerde schijven gebruikt. Bij het maken van meerdere beheerde schijven worden de schijven gedistribueerd naar meerdere volumes, wat helpt bij het verdelen van de capaciteit van volumes.
Voor niet-beheerde schijven, om de prestaties te verbeteren en de totale kosten te verlagen, raden we u aan om elke niet-beheerde schijf in een afzonderlijke container te plaatsen. Hoewel u zowel besturingssysteemschijven als gegevensschijven in dezelfde container kunt plaatsen, is het raadzaam dat één container een besturingssysteemschijf of een gegevensschijf moet bevatten, maar niet beide tegelijk.
Als u een of meer gegevensschijven aan een virtuele machine toevoegt, gebruikt u extra containers als locatie om deze schijven op te slaan. De besturingssysteemschijf voor extra VM's moet zich ook in hun eigen containers bevinden.
Wanneer u VIRTUELE machines maakt, kunt u hetzelfde opslagaccount voor elke nieuwe virtuele machine opnieuw gebruiken. Alleen de containers die u maakt, moeten uniek zijn.
Nieuwe schijven toevoegen
De volgende tabel bevat een overzicht van het toevoegen van schijven met behulp van de portal en met behulp van PowerShell:
Wijze | Opties |
---|---|
Gebruikersportal | - Nieuwe gegevensschijven toevoegen aan een bestaande VIRTUELE machine. Nieuwe schijven worden gemaakt door Azure Stack Hub. - Voeg een bestaand schijfbestand (.vhd) toe aan een eerder gemaakte VM. Hiervoor moet u de VHD voorbereiden en vervolgens het bestand uploaden naar Azure Stack Hub. |
Powershell | - Maak een nieuwe VIRTUELE machine met een besturingssysteemschijf en voeg tegelijkertijd een of meer gegevensschijven toe aan die VM. |
De portal gebruiken om schijven toe te voegen aan een virtuele machine
Wanneer u de portal gebruikt om een virtuele machine te maken voor de meeste Marketplace-items, wordt standaard alleen de besturingssysteemschijf gemaakt.
Nadat u een virtuele machine hebt gemaakt, kunt u de portal gebruiken om het volgende te doen:
- Maak een nieuwe gegevensschijf en koppel deze aan de virtuele machine.
- Upload een bestaande gegevensschijf en koppel deze aan de virtuele machine.
Plaats elke niet-beheerde schijf die u toevoegt aan een afzonderlijke container.
De portal gebruiken om een nieuwe gegevensschijf te maken en te koppelen
Selecteer alle services in de portal, vervolgens Compute en vervolgens Virtuele machines.
Selecteer een virtuele machine die eerder is gemaakt in de lijst.
Voor de virtuele machine selecteert u Schijven en voegt u vervolgens gegevensschijf toe.
Voor de gegevensschijf:
- Voer de LUN in. De LUN moet een geldig getal zijn.
- Selecteer Schijf maken.
Op de blade Beheerde schijf maken:
- Voer de naam van de schijf in.
- Selecteer een bestaande resourcegroep of maak een nieuwe.
- Selecteer de locatie. De locatie is standaard ingesteld op dezelfde container die de besturingssysteemschijf bevat.
- Selecteer het accounttype.
Notitie
Premium-schijven (SSD) en standardschijven (HDD) worden ondersteund door dezelfde opslaginfrastructuur in Azure Stack Hub. Ze bieden dezelfde prestaties.
Selecteer het brontype.
Maak een schijf op basis van een momentopname van een andere schijf, een blob in een opslagaccount of maak een lege schijf.
Momentopname: Selecteer een momentopname als deze beschikbaar is. De momentopname moet beschikbaar zijn in het abonnement en de locatie van de virtuele machine.
Opslagblob:
- Voeg de URI toe van de opslagblob die de schijfinstallatiekopieën bevat.
- Selecteer Bladeren om de blade Opslagaccounts te openen. Zie Een gegevensschijf toevoegen vanuit een opslagaccount voor instructies.
- Selecteer het type besturingssysteem van de installatiekopie: Windows, Linux of None (gegevensschijf).
Selecteer de grootte (GiB).
Schijfkosten stijgen op basis van de grootte van de schijf.
Selecteer Maken. Azure Stack Hub maakt en valideert de beheerde schijf.
Nadat Azure Stack Hub de schijf heeft gemaakt en gekoppeld aan de virtuele machine, wordt de nieuwe schijf vermeld in de instellingen voor de VM-schijf onder Gegevensschijven.
Een gegevensschijf toevoegen vanuit een opslagaccount
Zie Inleiding tot Azure Stack Hub-opslag voor meer informatie over het werken met opslagaccounts in Azure Stack Hub.
Selecteer het opslagaccount dat u wilt gebruiken.
Selecteer de container waarin u de gegevensschijf wilt plaatsen. Op de blade Containers kunt u desgewenst een nieuwe container maken. Vervolgens kunt u de locatie voor de nieuwe schijf wijzigen in een eigen container. Wanneer u voor elke schijf een afzonderlijke container gebruikt, distribueert u de plaatsing van de gegevensschijf, waardoor de prestaties worden verbeterd.
Kies Selecteren om de selectie op te slaan.
Een bestaande gegevensschijf koppelen aan een VIRTUELE machine
Bereid een VHD-bestand voor voor gebruik als gegevensschijf voor een virtuele machine. Upload dat VHD-bestand naar een opslagaccount dat u gebruikt met de VM waaraan u het VHD-bestand wilt koppelen.
- Plan een andere container te gebruiken om het VHD-bestand op te slaan dan de container met de besturingssysteemschijf.
- Voordat u een VHD naar Azure uploadt, moet u een Windows-VHD of VHDX volgen om te uploaden naar Azure.
- Bekijk het plan voor de migratie naar Managed Disks voordat u de migratie naar Managed Disks start.
Nadat het VHD-bestand is geüpload, kunt u de VHD koppelen aan een virtuele machine. Selecteer Virtuele machines in het menu aan de linkerkant.
Kies de VIRTUELE machine in de lijst.
Selecteer schijven op de pagina voor de virtuele machine en selecteer vervolgens Bestaande koppelen.
Selecteer VHD-bestand op de pagina Bestaande schijf koppelen. De pagina Opslagaccounts wordt geopend.
Selecteer onder Opslagaccounts het account dat u wilt gebruiken en kies vervolgens een container met het VHD-bestand dat u eerder hebt geüpload. Selecteer het VHD-bestand en kies Selecteren om de selectie op te slaan.
Onder Bestaande schijf bijvoegen wordt het bestand dat u hebt geselecteerd weergegeven onder VHD-bestand. Werk de hostcache-instelling van de schijf bij en selecteer vervolgens OK om de nieuwe schijfconfiguratie voor de VIRTUELE machine op te slaan.
Nadat Azure Stack Hub de schijf heeft gemaakt en gekoppeld aan de virtuele machine, wordt de nieuwe schijf vermeld in de schijfinstellingen van de virtuele machine onder Gegevensschijven.
PowerShell gebruiken om meerdere schijven toe te voegen aan een virtuele machine
U kunt PowerShell gebruiken om een virtuele machine in te richten en nieuwe gegevensschijven toe te voegen, of een bestaand beheerd schijf- of VHD-bestand als gegevensschijf te koppelen.
De cmdlet Add-AzVMDataDisk voegt een gegevensschijf toe aan een virtuele machine. U kunt een gegevensschijf toevoegen wanneer u een virtuele machine maakt of u kunt een gegevensschijf toevoegen aan een bestaande VIRTUELE machine. Geef voor een niet-beheerde schijf de VhdUri-parameter op om de schijven naar verschillende containers te distribueren.
Gegevensschijven toevoegen aan een nieuwe VIRTUELE machine
In de volgende voorbeelden worden PowerShell-opdrachten gebruikt om een virtuele machine met drie gegevensschijven te maken. De opdrachten worden geleverd met verschillende onderdelen vanwege de kleine verschillen bij het gebruik van beheerde schijven of onbeheerde schijven.
Configuratie en netwerkbronnen voor virtuele machines maken
Met het volgende script wordt een VM-object gemaakt en vervolgens opgeslagen in de $VirtualMachine
variabele. De opdrachten wijzen een naam en grootte toe aan de VIRTUELE machine en maken vervolgens de netwerkbronnen (virtueel netwerk, subnet, virtuele netwerkadapter, NSG en openbaar IP-adres) voor de virtuele machine.
# 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
Beheerde schijven toevoegen
Met de volgende drie opdrachten worden beheerde gegevensschijven toegevoegd aan de virtuele machine die is opgeslagen in $VirtualMachine
. Elke opdracht geeft de naam en aanvullende eigenschappen van de schijf.
$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
Met de volgende opdracht wordt een besturingssysteemschijf als een beheerde schijf toegevoegd aan de virtuele machine die is opgeslagen in $VirtualMachine
.
# Set OS Disk
$osDiskName = "osDisk"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name $osDiskName `
-CreateOption FromImage -Windows
Niet-beheerde schijven toevoegen
Met de volgende drie opdrachten worden paden van drie niet-beheerde gegevensschijven toegewezen aan de $DataDiskVhdUri01
, $DataDiskVhdUri02
en $DataDiskVhdUri03
variabelen. Definieer een andere padnaam in de URL om de schijven naar verschillende containers te distribueren:
$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"
Met de volgende drie opdrachten voegt u gegevensschijven toe aan de virtuele machine die is opgeslagen in $VirtualMachine
. Met elke opdracht geeft u de naam en aanvullende eigenschappen van de schijf op. De URI van elke schijf wordt opgeslagen in $DataDiskVhdUri01
, $DataDiskVhdUri02
en $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
Met de volgende opdrachten voegt u een niet-beheerde besturingssysteemschijf toe aan de virtuele machine die is opgeslagen in $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
Nieuwe virtuele machine maken
Gebruik de volgende PowerShell-opdrachten om de installatiekopieën van het besturingssysteem in te stellen, netwerkconfiguratie toe te voegen aan de VIRTUELE machine en de nieuwe VIRTUELE machine te starten.
#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
Gegevensschijven toevoegen aan een bestaande VIRTUELE machine
In de volgende voorbeelden worden PowerShell-opdrachten gebruikt om drie gegevensschijven toe te voegen aan een bestaande VM:
Virtuele machine ophalen
Met de eerste opdracht wordt de virtuele machine met de naam VirtualMachine opgehaald met behulp van de Get-AzVM-cmdlet . Met de opdracht wordt de virtuele machine opgeslagen in de $VirtualMachine
variabele:
$VirtualMachine = Get-AzVM -ResourceGroupName "myResourceGroup" `
-Name "VirtualMachine"
Beheerde schijf toevoegen
Met de volgende drie opdrachten worden de beheerde gegevensschijven toegevoegd aan de virtuele machine die is opgeslagen in de $VirtualMachine
variabele. Elke opdracht geeft de naam en aanvullende eigenschappen van de schijf.
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
Niet-beheerde schijf toevoegen
Met de volgende drie opdrachten worden paden voor drie gegevensschijven toegewezen aan de $DataDiskVhdUri01
, $DataDiskVhdUri02
en $DataDiskVhdUri03
variabelen. De verschillende padnamen in de VHD-URI's geven verschillende containers voor de schijfplaatsing aan:
$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"
Met de volgende drie opdrachten worden de gegevensschijven toegevoegd aan de virtuele machine die is opgeslagen in de $VirtualMachine
variabele. Met elke opdracht geeft u de naam, locatie en aanvullende eigenschappen van de schijf op. De URI van elke schijf wordt opgeslagen in $DataDiskVhdUri01
, $DataDiskVhdUri02
en $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
Status van virtuele machine bijwerken
Met deze opdracht wordt de status bijgewerkt van de VM die is opgeslagen in $VirtualMachine
-ResourceGroupName
:
Update-AzVM -ResourceGroupName "myResourceGroup" -VM $VirtualMachine