VHD feltöltése az Azure-ba vagy felügyelt lemez másolása egy másik régióba – Azure PowerShell
A következőkre vonatkozik: ✔️ Windows rendszerű virtuális gépek
Ez a cikk bemutatja, hogyan tölthet fel virtuális merevlemezt a helyi gépről egy Azure-beli felügyelt lemezre, vagy hogyan másolhat egy felügyelt lemezt egy másik régióba az Azure PowerShell-modul használatával. A felügyelt lemezek feltöltésének folyamata( más néven közvetlen feltöltés) lehetővé teszi, hogy akár 32 TiB méretű VHD-t közvetlenül egy felügyelt lemezre töltsön fel. Jelenleg a közvetlen feltöltés támogatott az Ultra Disks, a Premium SSD v2, a Premium SSD, a Standard SSD és a Standard HDD esetében.
Ha biztonsági mentési megoldást biztosít az Azure-beli IaaS virtuális gépekhez, a közvetlen feltöltéssel visszaállíthatja az ügyfelek biztonsági mentéseit a felügyelt lemezekre. Ha egy VHD-t külső forrásból tölt fel az Azure-ba, a sebesség a helyi sávszélességtől függ. Azure-beli virtuális gépről való feltöltéskor vagy másoláskor a sávszélesség megegyezik a standard HDD-kkel.
Biztonságos feltöltések a Microsoft Entra-azonosítóval
Ha a Microsoft Entra ID-t használja az erőforrás-hozzáférés szabályozásához, mostantól korlátozhatja az Azure-beli felügyelt lemezek feltöltését. Ez a funkció ga-ajánlatként érhető el minden régióban. Amikor egy felhasználó megpróbál feltölteni egy lemezt, az Azure ellenőrzi a kérelmező felhasználó identitását a Microsoft Entra-azonosítóban, és megerősíti, hogy a felhasználó rendelkezik a szükséges engedélyekkel. Magasabb szinten a rendszergazda beállíthat egy szabályzatot az Azure-fiók vagy az előfizetés szintjén annak biztosítása érdekében, hogy a Microsoft Entra-identitás rendelkezzen a feltöltéshez szükséges engedélyekkel, mielőtt lehetővé tenné a lemez vagy a lemez pillanatképének feltöltését. Ha kérdése van a Feltöltések Microsoft Entra-azonosítóval történő biztonságossá tételével kapcsolatban, lépjen kapcsolatba a következő e-mail-címmel: azuredisks@microsoft .com
Előfeltételek
- Telepítse a legújabb Azure PowerShell-modult.
Korlátozások
- A virtuális merevlemezek nem tölthetők fel üres pillanatképekbe.
- Az Azure Backup jelenleg nem támogatja a Microsoft Entra-azonosítóval védett lemezeket.
- Az Azure Site Recovery jelenleg nem támogatja a Microsoft Entra-azonosítóval védett lemezeket.
RBAC-szerepkör hozzárendelése
A Microsoft Entra-azonosítóval védett felügyelt lemezek eléréséhez a kérelmező felhasználónak rendelkeznie kell a felügyelt lemezek adatszolgáltatói szerepkörével, vagy egy egyéni szerepkörrel, amely a következő engedélyekkel rendelkezik:
- Microsoft.Compute/disks/download/action
- Microsoft.Compute/disks/upload/action
- Microsoft.Compute/snapshots/download/action
- Microsoft.Compute/snapshots/upload/action
A szerepkörök hozzárendelésének részletes lépéseit az Azure-szerepkörök hozzárendelése az Azure PowerShell használatával című témakörben találja. Egyéni szerepkörök létrehozásához vagy frissítéséhez lásd : Egyéni Azure-szerepkörök létrehozása vagy frissítése az Azure PowerShell használatával.
Első lépések
A VHD-t kétféleképpen töltheti fel az Azure PowerShell-modullal: használhatja az Add-AzVHD parancsot, amely automatizálja a folyamat nagy részét, vagy manuálisan is végrehajthatja a feltöltést az AzCopy használatával.
Prémium SSD-k, Standard SSD-k és Standard HDD-k esetén általában az Add-AzVHD-t kell használnia. Ha azonban ultralemezre vagy Prémium SSD v2-re tölt fel, vagy 50 GiB-nél nagyobb VHD-t kell feltöltenie, manuálisan kell feltöltenie a VHD-t vagy a VHDX-et az AzCopyval. Az 50 GiB-es és nagyobb méretű VHD-k az AzCopy és az Add-AzVhd használatával jelenleg nem támogatják az Ultra Disk-be vagy prémium SSD-2-be való feltöltést.
A felügyelt lemezek egyik régióból a másikba történő másolásáról a Felügyelt lemez másolása című témakörben talál útmutatást.
Az Add-AzVHD használata
Előfeltételek
- Telepítse az Azure PowerShell-modult.
- A VHD-t előkészítették az Azure-hoz, helyileg tárolva.
- Windows rendszeren: Nem kell VHD-t VHDx-gé konvertálnia, rögzített méretűre konvertálnia, vagy átméreteznie, hogy belefoglalja az 512 bájtos eltolást.
Add-AZVHD
végrehajtja ezeket a függvényeket.- A Hyper-V-t engedélyezni kell ahhoz, hogy az Add-AzVHD végrehajtsa ezeket a függvényeket.
- Linuxon: Ezeket a műveleteket manuálisan kell végrehajtania. Részletekért tekintse meg a virtuális merevlemezek átméretezését ismertető cikket.
- Windows rendszeren: Nem kell VHD-t VHDx-gé konvertálnia, rögzített méretűre konvertálnia, vagy átméreteznie, hogy belefoglalja az 512 bájtos eltolást.
VHD feltöltése
(Nem kötelező) Hozzáférés biztosítása a lemezhez
Ha a Microsoft Entra-azonosítót egy előfizetés vagy a fiók szintjén történő feltöltési korlátozások kényszerítésére használják, az Add-AzVHD csak akkor sikeres, ha egy megfelelő RBAC-szerepkörrel vagy szükséges engedélyekkel rendelkező felhasználó próbálkozik. RBAC-engedélyeket kell hozzárendelnie a lemezhez való hozzáférés biztosításához és egy írható SAS létrehozásához.
New-AzRoleAssignment -SignInName <emailOrUserprincipalname> `
-RoleDefinitionName "Data Operator for Managed Disks" `
-Scope /subscriptions/<subscriptionId>
Az Add-AzVHD használata
Az alábbi példa egy VHD-t tölt fel a helyi gépről egy új Azure-beli felügyelt lemezre az Add-AzVHD használatával. Cserélje le <your-filepath-here>
a , <your-resource-group-name>
,<desired-region>
, és <desired-managed-disk-name>
a paramétereket:
Feljegyzés
Ha Microsoft Entra-azonosítót használ a feltöltési korlátozások kényszerítéséhez, adja hozzá DataAccessAuthMode 'AzureActiveDirectory'
a parancs végéhez Add-AzVhd
.
# Required parameters
$path = <your-filepath-here>.vhd
$resourceGroup = <your-resource-group-name>
$location = <desired-region>
$name = <desired-managed-disk-name>
# Optional parameters
# $Zone = <desired-zone>
# $sku=<desired-SKU>
# -DataAccessAuthMode 'AzureActiveDirectory'
# -DiskHyperVGeneration = V1 or V2. This applies only to OS disks.
# To use $Zone or #sku, add -Zone or -DiskSKU parameters to the command
Add-AzVhd -LocalFilePath $path -ResourceGroupName $resourceGroup -Location $location -DiskName $name
Manuális feltöltés
Előfeltételek
- Töltse le az AzCopy v10 legújabb verzióját.
- Telepítse az Azure PowerShell-modult.
- Az Azure-hoz előkészített, helyileg tárolt, rögzített méretű VHD.
A VHD Azure-ba való feltöltéséhez létre kell hoznia egy üres felügyelt lemezt, amely konfigurálva van ehhez a feltöltési folyamathoz. A létrehozás előtt további információkat kell tudnia ezekről a lemezekről.
Az ilyen típusú felügyelt lemeznek két egyedi állapota van:
- ReadyToUpload, ami azt jelenti, hogy a lemez készen áll a feltöltés fogadására, de nem lett létrehozva biztonságos hozzáférési aláírás (SAS ).
- ActiveUpload, ami azt jelenti, hogy a lemez készen áll a feltöltés fogadására, és létrejött az SAS.
Feljegyzés
A felügyelt lemezt a rendszer a lemez tényleges típusától függetlenül standard HDD-díjszabással számlázja. A P10-ek például S10-ként lesznek számlázva. Ez mindaddig igaz lesz, amíg revoke-access
a rendszer nem hívja meg a felügyelt lemezt, ami a lemez virtuális géphez való csatlakoztatásához szükséges.
Üres felügyelt lemez létrehozása
Mielőtt létrehozna egy üres standard HDD-t a feltöltéshez, szüksége lesz a feltölteni kívánt virtuális merevlemez fájlméretére bájtban. A példakód ezt fogja megkapni, de saját maga is használhatja: $vhdSizeBytes = (Get-Item "<fullFilePathHere>").length
. Ez az érték az -UploadSizeInBytes paraméter megadásakor használatos.
Most a helyi rendszerhéjon hozzon létre egy üres standard HDD-t a feltöltéshez a -CreateOption paraméter feltöltési beállításának, valamint a New-AzDiskConfig parancsmag -UploadSizeInBytes paraméterének megadásával. Ezután hívja meg a New-AzDisket a lemez létrehozásához.
Cserélje le <yourdiskname>
, <yourresourcegroupname>
majd <yourregion>
futtassa a következő parancsokat:
Fontos
Ha operációsrendszer-lemezt hoz létre, adja hozzá a fájlhoz -HyperVGeneration '<yourGeneration>'
New-AzDiskConfig
.
Ha Microsoft Entra-azonosítót használ a feltöltések biztonságossá tételéhez, adja hozzá -dataAccessAuthMode 'AzureActiveDirectory'
a következőhöz New-AzDiskConfig
: .
Ultralemezre vagy Prémium SSD v2-be való feltöltéskor ki kell választania a céllemez megfelelő szektorméretét. Ha 4k logikai szektorméretű VHDX-fájlt használ, a céllemezt 4k értékre kell állítani. Ha 512 logikai szektorméretű VHD-fájlt használ, a céllemeznek 512-re kell állítania.
Az 512k logikai szektorméretű VHDX-fájlok nem támogatottak.
$vhdSizeBytes = (Get-Item "<fullFilePathHere>").length
## For Ultra Disks or Premium SSD v2, add -LogicalSectorSize and specify either 4096 or 512, depending on if you're using a VHDX or a VHD
$diskconfig = New-AzDiskConfig -SkuName 'Standard_LRS' -OsType 'Windows' -UploadSizeInBytes $vhdSizeBytes -Location '<yourregion>' -CreateOption 'Upload'
New-AzDisk -ResourceGroupName '<yourresourcegroupname>' -DiskName '<yourdiskname>' -Disk $diskconfig
Ha másik lemeztípust szeretne feltölteni, cserélje le Standard_LRS Premium_LRS, Premium_ZRS, StandardSSD_ZRS, StandardSSD_LRS vagy UltraSSD_LRS.
Írható SAS létrehozása
Most, hogy létrehozott egy üres felügyelt lemezt, amely konfigurálva van a feltöltési folyamathoz, feltölthet hozzá egy virtuális merevlemezt. A VHD lemezre való feltöltéséhez írható SAS-ra lesz szüksége, hogy hivatkozzon rá a feltöltés céljaként.
Fontos
2025. február 15-én a lemezek és pillanatképek közös hozzáférésű jogosultságkódjának (SAS) hozzáférési ideje legfeljebb 60 napra lesz korlátozva. Ha 60 napnál hosszabb lejáratú SAS-t próbál létrehozni, az hibát eredményez. A 60 napnál hosszabb lejárattal létrehozott meglévő lemez vagy pillanatkép SAS a létrehozás után 60 nappal leállhat, és az engedélyezés során 403-as hibát eredményez.
Ha egy felügyelt lemez vagy pillanatkép SAS lejárata 60 napnál hosszabb, vonja vissza a hozzáférést, és hozzon létre egy új SAS-t, amely 60 napig (5 184 000 másodpercig) vagy annál rövidebb ideig kéri a hozzáférést. Az SAS rövidebb lejárati dátumokkal történő használatával javíthatja az általános biztonságot. Végezze el ezeket a módosításokat 2025. február 15-ig a szolgáltatás megszakításának megakadályozása érdekében. Az alábbi hivatkozások segítségével kereshet, vonhat vissza és kérhet új SAS-t.
- Annak ellenőrzéséhez, hogy egy lemez rendelkezik-e aktív SAS-vel, használhatja a REST API-t, az Azure CLI-t vagy az Azure PowerShell-modult, és megvizsgálhatja a DiskState tulajdonságot.
- Az SAS visszavonásához használhatja a REST API-t, az Azure CLI-t vagy az Azure PowerShell-modult.
- SAS létrehozásához használhatja a REST API-t, az Azure CLI-t vagy az Azure PowerShell-modult, és beállíthatja a hozzáférési időtartamot 5 184 000 másodpercre vagy annál rövidebbre.
Ha írható SAS-t szeretne létrehozni az üres felügyelt lemezről, cserélje le <yourdiskname>
és <yourresourcegroupname>
használja a következő parancsokat:
$diskSas = Grant-AzDiskAccess -ResourceGroupName '<yourresourcegroupname>' -DiskName '<yourdiskname>' -DurationInSecond 86400 -Access 'Write'
$disk = Get-AzDisk -ResourceGroupName '<yourresourcegroupname>' -DiskName '<yourdiskname>'
VHD vagy VHDX feltöltése
Most, hogy rendelkezik sassal az üres felügyelt lemezhez, beállíthatja a felügyelt lemezt a feltöltési parancs célhelyeként.
Az AzCopy v10 használatával feltöltheti a helyi VHD- vagy VHDX-fájlt egy felügyelt lemezre a létrehozott SAS URI megadásával.
Ez a feltöltés ugyanolyan átviteli sebességgel rendelkezik, mint az egyenértékű standard HDD. Ha például S4-nek felel meg a mérete, akár 60 MiB/s átviteli sebességgel is rendelkezhet. Ha azonban S70-nek felel meg a mérete, akár 500 MiB/s átviteli sebességgel is rendelkezhet.
AzCopy.exe copy "c:\somewhere\mydisk.vhd" $diskSas.AccessSAS --blob-type PageBlob
Miután a feltöltés befejeződött, és már nem kell további adatokat írnia a lemezre, vonja vissza az SAS-t. Az SAS visszavonása megváltoztatja a felügyelt lemez állapotát, és lehetővé teszi, hogy a lemezt egy virtuális géphez csatolja.
Cserélje le <yourdiskname>
és <yourresourcegroupname>
futtassa a következő parancsot:
Revoke-AzDiskAccess -ResourceGroupName '<yourresourcegroupname>' -DiskName '<yourdiskname>'
Felügyelt lemez másolása
A közvetlen feltöltés leegyszerűsíti a felügyelt lemezek másolásának folyamatát is. Másolhat ugyanazon a régión belül, vagy átmásolhatja a felügyelt lemezt egy másik régióba.
Az alábbi szkript ezt teszi ön helyett, a folyamat hasonló a korábban ismertetett lépésekhez, néhány különbséggel, mivel egy meglévő lemezzel dolgozik.
Fontos
512-es eltolást kell hozzáadnia, ha a lemezméretet egy felügyelt lemez bájtjában adja meg az Azure-ból. Ennek az az oka, hogy az Azure kihagyja az élőlábat a lemezméret visszaadásakor. Ha ezt nem teszi meg, a másolat sikertelen lesz. Az alábbi szkript már elvégzi ezt Önnek.
Cserélje le a <sourceResourceGroupHere>
, <sourceDiskNameHere>
, <targetDiskNameHere>
, <yourOSTypeHere>
<targetResourceGroupHere>
és <yourTargetLocationHere>
(például egy helyértékre a uswest2) értéket, majd futtassa a következő szkriptet egy felügyelt lemez másolásához.
Tipp.
Ha operációsrendszer-lemezt hoz létre, adja hozzá a következőhöz -HyperVGeneration '<yourGeneration>'
New-AzDiskConfig
: .
$sourceRG = <sourceResourceGroupHere>
$sourceDiskName = <sourceDiskNameHere>
$targetDiskName = <targetDiskNameHere>
$targetRG = <targetResourceGroupHere>
$targetLocate = <yourTargetLocationHere>
$targetVmGeneration = "V1" # either V1 or V2
#Expected value for OS is either "Windows" or "Linux"
$targetOS = <yourOSTypeHere>
$sourceDisk = Get-AzDisk -ResourceGroupName $sourceRG -DiskName $sourceDiskName
# Adding the sizeInBytes with the 512 offset, and the -Upload flag
$targetDiskconfig = New-AzDiskConfig -SkuName 'Standard_LRS' -osType $targetOS -UploadSizeInBytes $($sourceDisk.DiskSizeBytes+512) -Location $targetLocate -CreateOption 'Upload' -HyperVGeneration $targetVmGeneration
$targetDisk = New-AzDisk -ResourceGroupName $targetRG -DiskName $targetDiskName -Disk $targetDiskconfig
$sourceDiskSas = Grant-AzDiskAccess -ResourceGroupName $sourceRG -DiskName $sourceDiskName -DurationInSecond 86400 -Access 'Read'
$targetDiskSas = Grant-AzDiskAccess -ResourceGroupName $targetRG -DiskName $targetDiskName -DurationInSecond 86400 -Access 'Write'
azcopy copy $sourceDiskSas.AccessSAS $targetDiskSas.AccessSAS --blob-type PageBlob
Revoke-AzDiskAccess -ResourceGroupName $sourceRG -DiskName $sourceDiskName
Revoke-AzDiskAccess -ResourceGroupName $targetRG -DiskName $targetDiskName
Következő lépések
Most, hogy sikeresen feltöltött egy virtuális merevlemezt egy felügyelt lemezre, csatlakoztathatja a lemezt egy virtuális géphez, és megkezdheti a használatát.
Ha tudni szeretné, hogyan csatolhat adatlemezt egy virtuális géphez, tekintse meg a következő témakört: Adatlemez csatolása Windows rendszerű virtuális géphez a PowerShell-lel. A lemez operációsrendszer-lemezként való használatához lásd : Windows rendszerű virtuális gép létrehozása speciális lemezről.
Ha további kérdései merülnek fel, tekintse meg a felügyelt lemezek feltöltéséről szóló szakaszt a gyakori kérdések között.