Een VHD uploaden naar Azure of een beheerde schijf kopiëren naar een andere regio - Azure CLI
Van toepassing op: ✔️ Virtuele Linux-machines voor Windows-VM's ✔️ ✔️ Flexibele schaalsets
In dit artikel wordt uitgelegd hoe u een VHD uploadt van uw lokale computer naar een beheerde Azure-schijf of hoe u een beheerde schijf kopieert naar een andere regio met behulp van AzCopy. Met dit proces, direct uploaden, kunt u een VHD tot 32 TiB rechtstreeks uploaden naar een beheerde schijf. Momenteel wordt direct uploaden ondersteund voor Ultra Disks, Premium SSD v2, Premium SSD, Standard SSD en Standard HDD.
Als u een back-upoplossing biedt voor IaaS-VM's in Azure, moet u direct uploaden gebruiken om back-ups van klanten te herstellen naar beheerde schijven. Bij het uploaden van een VHD vanuit een externe bron naar Azure zijn snelheden afhankelijk van uw lokale bandbreedte. Wanneer u een Virtuele Azure-machine uploadt of kopieert, is uw bandbreedte hetzelfde als standaard-HDD's.
Uploads beveiligen met Microsoft Entra-id
Als u Microsoft Entra-id gebruikt om de toegang tot resources te beheren, kunt u deze nu gebruiken om het uploaden van beheerde Azure-schijven te beperken. Deze functie is beschikbaar als ga-aanbieding in alle regio's. Wanneer een gebruiker een schijf probeert te uploaden, valideert Azure de identiteit van de aangevraagde gebruiker in Microsoft Entra ID en bevestigt dat de gebruiker over de vereiste machtigingen beschikt. Op een hoger niveau kan een systeembeheerder een beleid instellen op het niveau van het Azure-account of -abonnement, om ervoor te zorgen dat een Microsoft Entra-identiteit over de benodigde machtigingen beschikt voor het uploaden van een schijf of een momentopname van een schijf. Als u vragen hebt over het beveiligen van uploads met Microsoft Entra ID, neemt u contact op met deze e-mail: azuredisks@microsoft .com
Vereisten
Beperkingen
- VHD's kunnen niet worden geüpload naar lege momentopnamen.
- Azure Backup biedt momenteel geen ondersteuning voor schijven die zijn beveiligd met Microsoft Entra-id.
- Azure Site Recovery biedt momenteel geen ondersteuning voor schijven die zijn beveiligd met Microsoft Entra-id.
RBAC-rol toewijzen
Voor toegang tot beheerde schijven die zijn beveiligd met Microsoft Entra-id, moet de aanvragende gebruiker de rol Gegevensoperator voor beheerde schijven hebben of een aangepaste rol met de volgende machtigingen:
- Microsoft.Compute/disks/download/action
- Microsoft.Compute/disks/upload/action
- Microsoft.Compute/snapshots/download/action
- Microsoft.Compute/snapshots/upload/action
Zie Azure-rollen toewijzen met behulp van Azure CLI voor gedetailleerde stappen voor het toewijzen van een rol. Als u een aangepaste rol wilt maken of bijwerken, raadpleegt u Aangepaste Azure-rollen maken of bijwerken met behulp van Azure CLI.
Aan de slag
Als u liever schijven wilt uploaden via een GUI, kunt u dit doen met behulp van Azure Storage Explorer. Raadpleeg voor meer informatie: Azure Storage Explorer gebruiken om beheerde Azure-schijven te beheren
Vereisten
- Download de nieuwste versie van AzCopy v10.
- Installeer de Azure CLI.
- Als u van plan bent om een VHD vanaf on-premises te uploaden: een VHD met een vaste grootte die is voorbereid voor Azure, lokaal opgeslagen.
- Of een beheerde schijf in Azure, als u een kopieeractie wilt uitvoeren.
Als u uw VHD wilt uploaden naar Azure, moet u een lege beheerde schijf maken die is geconfigureerd voor dit uploadproces. Voordat u er een maakt, moet u meer informatie over deze schijven weten.
Dit type beheerde schijf heeft twee unieke statussen:
- ReadToUpload, wat betekent dat de schijf klaar is om een upload te ontvangen, maar dat er geen SAS (Secure Access Signature) is gegenereerd.
- ActiveUpload, wat betekent dat de schijf gereed is voor het ontvangen van een upload en dat de SAS is gegenereerd.
Notitie
In een van deze statussen wordt de beheerde schijf gefactureerd tegen standaard HDD-prijzen, ongeacht het werkelijke type schijf. Een P10 wordt bijvoorbeeld gefactureerd als een S10. Dit geldt totdat revoke-access
deze wordt aangeroepen op de beheerde schijf. Dit is vereist om de schijf aan een virtuele machine te koppelen.
Een lege beheerde schijf maken
Voordat u een lege standaard-HDD kunt maken voor uploaden, hebt u de bestandsgrootte nodig van de VHD die u wilt uploaden, in bytes. Om dat te krijgen, kunt u gebruiken wc -c <yourFileName>.vhd
of ls -al <yourFileName>.vhd
. Deze waarde wordt gebruikt bij het opgeven van de parameter --upload-size-bytes .
Maak een lege standaard-HDD voor uploaden door zowel de parameter --for-upload als de parameter --upload-size-bytes in een cmdlet voor schijf maken op te geven:
Vervang , <yourresourcegroupname>
<yourregion>
door <yourdiskname>
waarden van uw keuze. De --upload-size-bytes
parameter bevat een voorbeeldwaarde van 34359738880
, vervang deze door een waarde die geschikt is voor u.
Belangrijk
Als u een besturingssysteemschijf maakt, voegt u deze toe--hyper-v-generation <yourGeneration>
.az disk create
Als u Microsoft Entra ID gebruikt om schijfuploads te beveiligen, voegt u dit toe -dataAccessAuthmode 'AzureActiveDirectory'
.
Wanneer u uploadt naar een Ultra Disk of Premium SSD v2, moet u de juiste sectorgrootte van de doelschijf selecteren. Als u een VHDX-bestand met een 4k logische sectorgrootte gebruikt, moet de doelschijf zijn ingesteld op 4k. Als u een VHD-bestand met een logische sectorgrootte van 512 gebruikt, moet de doelschijf zijn ingesteld op 512.
VHDX-bestanden met een logische sectorgrootte van 512k worden niet ondersteund.
##For Ultra Disk or Premium SSD v2, add --logical-sector-size and specify either 512 or 4096, depending on if you're using a VHD or VHDX
az disk create -n <yourdiskname> -g <yourresourcegroupname> -l <yourregion> --os-type Linux --for-upload --upload-size-bytes 34359738880 --sku standard_lrs
Als u een ander schijftype wilt uploaden, vervangt u standard_lrs door premium_lrs, premium_zrs, standardssd_lrs, standardssd_zrs, premiumv2_lrs of ultrassd_lrs.
(Optioneel) Toegang verlenen tot de schijf
Als u Microsoft Entra-id gebruikt om uploads te beveiligen, moet u RBAC-machtigingen toewijzen om toegang te verlenen tot de schijf en een schrijfbare SAS genereren.
az role assignment create --assignee "{assignee}" \
--role "{Data Operator for Managed Disks}" \
--scope "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceSubType}/{diskName}"
Schrijfbare SAS genereren
Nu u een lege beheerde schijf hebt gemaakt die is geconfigureerd voor het uploadproces, kunt u er een VHD naar uploaden. Als u een VHD naar de schijf wilt uploaden, hebt u een schrijfbare SAS nodig, zodat u ernaar kunt verwijzen als de bestemming voor uw upload.
Belangrijk
Op 15 februari 2025 is de SAS-toegangstijd (Shared Access Signature) voor schijven en momentopnamen beperkt tot maximaal 60 dagen. Als u probeert een SAS te genereren met een vervaldatum die langer dan 60 dagen duurt, treedt er een fout op. Een bestaande schijf of momentopname-SAS die is gemaakt met een vervaldatum die langer dan 60 dagen duurt, werkt mogelijk niet meer 60 dagen na de datum van het maken en resulteert in een 403-fout tijdens de autorisatie.
Als de vervaldatum van een beheerde schijf of momentopname van SAS langer is dan 60 dagen, trekt u de toegang in en genereert u een nieuwe SAS die 60 dagen (5.184.000 seconden) of minder toegang aanvraagt. Verbeter uw algehele beveiliging met behulp van SAS met kortere vervaldatums. Breng deze wijzigingen aan vóór 15 februari 2025 om te voorkomen dat de service wordt onderbroken. De volgende koppelingen kunnen worden gebruikt om een nieuwe SAS te zoeken, in te trekken en aan te vragen.
- Als u wilt controleren of een schijf een actieve SAS heeft, kunt u de REST API, de Azure CLI of de Azure PowerShell-module gebruiken en de eigenschap DiskState onderzoeken.
- Als u een SAS wilt intrekken, kunt u de REST API, de Azure CLI of de Azure PowerShell-module gebruiken.
- Als u een SAS wilt maken, kunt u de REST API, de Azure CLI of de Azure PowerShell-module gebruiken en de toegangsduur instellen op 5.184.000 seconden of minder.
Als u een schrijfbare SAS van uw lege beheerde schijf wilt genereren, vervangt <yourdiskname>
u deze en <yourresourcegroupname>
gebruikt u de volgende opdracht:
az disk grant-access -n <yourdiskname> -g <yourresourcegroupname> --access-level Write --duration-in-seconds 86400
Voorbeeld van geretourneerde waarde:
{
"accessSas": "https://md-impexp-t0rdsfgsdfg4.blob.core.windows.net/w2c3mj0ksfgl/abcd?sv=2017-04-17&sr=b&si=600a9281-d39e-4cc3-91d2-923c4a696537&sig=xXaT6mFgf139ycT87CADyFxb%2BnPXBElYirYRlbnJZbs%3D"
}
Een VHD of VHDX uploaden
Nu u een SAS voor uw lege beheerde schijf hebt, kunt u deze gebruiken om uw beheerde schijf in te stellen als de bestemming voor uw uploadopdracht.
Gebruik AzCopy v10 om uw lokale VHD- of VHDX-bestand te uploaden naar een beheerde schijf door de SAS-URI op te geven die u hebt gegenereerd.
Deze upload heeft dezelfde doorvoer als de equivalente standaard-HDD. Als u bijvoorbeeld een grootte hebt die gelijk is aan S4, hebt u een doorvoer van maximaal 60 MiB/s. Maar als u een grootte hebt die gelijk is aan S70, hebt u een doorvoer van maximaal 500 MiB/s.
AzCopy.exe copy "c:\somewhere\mydisk.vhd" "sas-URI" --blob-type PageBlob
Nadat het uploaden is voltooid en u geen gegevens meer naar de schijf hoeft te schrijven, trekt u de SAS in. Als u de SAS inroept, wordt de status van de beheerde schijf gewijzigd en kunt u de schijf koppelen aan een virtuele machine.
Vervang <yourdiskname>
en <yourresourcegroupname>
gebruik vervolgens de volgende opdracht om de schijf bruikbaar te maken:
az disk revoke-access -n <yourdiskname> -g <yourresourcegroupname>
Een beheerde schijf kopiëren
Direct uploaden vereenvoudigt ook het kopiëren van een beheerde schijf. U kunt kopiëren binnen dezelfde regio of tussen regio's (naar een andere regio).
Het volgende script doet dit voor u. Het proces is vergelijkbaar met de stappen die eerder zijn beschreven, met enkele verschillen omdat u met een bestaande schijf werkt.
Belangrijk
U moet een offset van 512 toevoegen wanneer u de schijfgrootte in bytes van een beheerde schijf van Azure oplevert. Dit komt doordat Azure de voettekst weglaat bij het retourneren van de schijfgrootte. Het kopiëren mislukt als u dit niet doet. Het volgende script doet dit al voor u.
Vervang de <sourceResourceGroupHere>
, <sourceDiskNameHere>
, <targetDiskNameHere>
, , en <yourTargetLocationHere>
<targetResourceGroupHere>
(een voorbeeld van een locatiewaarde zou uswest2 zijn) door uw waarden en voer vervolgens het volgende script uit om een beheerde schijf te kopiëren.
Tip
Als u een besturingssysteemschijf maakt, voegt u deze toe--hyper-v-generation <yourGeneration>
.az disk create
sourceDiskName=<sourceDiskNameHere>
sourceRG=<sourceResourceGroupHere>
targetDiskName=<targetDiskNameHere>
targetRG=<targetResourceGroupHere>
targetLocation=<yourTargetLocationHere>
#Expected value for OS is either "Windows" or "Linux"
targetOS=<yourOSTypeHere>
sourceDiskSizeBytes=$(az disk show -g $sourceRG -n $sourceDiskName --query '[diskSizeBytes]' -o tsv)
az disk create -g $targetRG -n $targetDiskName -l $targetLocation --os-type $targetOS --for-upload --upload-size-bytes $(($sourceDiskSizeBytes+512)) --sku standard_lrs
targetSASURI=$(az disk grant-access -n $targetDiskName -g $targetRG --access-level Write --duration-in-seconds 86400 --query [accessSas] -o tsv)
sourceSASURI=$(az disk grant-access -n $sourceDiskName -g $sourceRG --duration-in-seconds 86400 --query [accessSas] -o tsv)
azcopy copy $sourceSASURI $targetSASURI --blob-type PageBlob
az disk revoke-access -n $sourceDiskName -g $sourceRG
az disk revoke-access -n $targetDiskName -g $targetRG
Volgende stappen
Nu u een VHD hebt geüpload naar een beheerde schijf, kunt u de schijf als gegevensschijf koppelen aan een bestaande VIRTUELE machine of de schijf als besturingssysteemschijf koppelen aan een virtuele machine om een nieuwe VIRTUELE machine te maken.
Als u meer vragen hebt, raadpleegt u de sectie over het uploaden van een beheerde schijf in de veelgestelde vragen.