Add-AzVhd

將虛擬硬碟從內部部署計算機上傳至 Azure(受控磁碟或 Blob)。

Syntax

Add-AzVhd
   [-ResourceGroupName] <String>
   [-Destination] <Uri>
   [-LocalFilePath] <FileInfo>
   [[-NumberOfUploaderThreads] <Int32>]
   [[-BaseImageUriToPatch] <Uri>]
   [-OverWrite]
   [-SkipResizing]
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Add-AzVhd
   [-ResourceGroupName] <String>
   [-LocalFilePath] <FileInfo>
   -DiskName <String>
   [-Location] <String>
   [-DiskSku <String>]
   [-DiskZone <String[]>]
   [-DiskHyperVGeneration <String>]
   [-DiskOsType <OperatingSystemTypes>]
   [[-NumberOfUploaderThreads] <Int32>]
   [-DataAccessAuthMode <String>]
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

Add-AzVhd Cmdlet 會將內部部署虛擬硬碟上傳至受控磁碟或 Blob 記憶體帳戶。

上傳的虛擬硬碟必須是 .vhd 檔案,大小為 N * Mib + 512 位元組。 使用 Hyper-V 功能, Add-AzVhd 會將任何 .vhdx 檔案轉換成 .vhd 檔案,並在上傳之前重設大小。 若要允許這項功能,您必須 啟用 Hyper-V。 如果您使用 Linux 計算機,或選擇不使用此功能,則必須 手動調整 VHD 檔案的大小。 此外, Add-AzVhd 會在上傳期間將動態大小的 VHD 檔案轉換成固定大小。 使用 -Verbose 來遵循所有程式。

針對預設參數集 (上傳至 Blob),也支援上傳已修補的內部部署 .vhd 檔案版本。 上傳基底虛擬硬碟時,您可以上傳使用基底映射作為父系的不同磁碟。 也支持共用存取簽章 (SAS) URI。

針對直接上傳至受控磁碟參數集,參數:ResourceGroupName、DiskName、Location、DiskSku 和 Zone 將用來建立新的磁碟,然後將虛擬硬碟上傳至該磁碟。

使用 Add-AzVhd 直接上傳至受控磁碟的詳細資訊

對於大於 50 GB 的 VHD 檔案,我們建議使用 AzCopy 來加快上傳速度。

範例

範例 1:將 VHD 檔案新增至 Blob

Add-AzVhd -Destination "http://contosoaccount.blob.core.windows.net/vhdstore/win7baseimage.vhd" -LocalFilePath "C:\vhd\Win7Image.vhd"

此命令會將 .vhd 檔案新增至記憶體帳戶。

範例 2:將 VHD 檔案新增至 Blob 並覆寫目的地

Add-AzVhd -Destination "http://contosoaccount.blob.core.windows.net/vhdstore/win7baseimage.vhd" -LocalFilePath "C:\vhd\Win7Image.vhd" -Overwrite

此命令會將 .vhd 檔案新增至記憶體帳戶。 命令會覆寫現有的檔案。

範例 3:將 VHD 檔案新增至具有指定線程數目的 Blob

Add-AzVhd -Destination "http://contosoaccount.blob.core.windows.net/vhdstore/win7baseimage.vhd" -LocalFilePath "C:\vhd\Win7Image.vhd" -NumberOfUploaderThreads 32

此命令會將 .vhd 檔案新增至記憶體帳戶。 命令會指定要用來上傳檔案的線程數目。

範例 4:將 VHD 檔案新增至 Blob 並指定 SAS URI

Add-AzVhd -Destination "http://contosoaccount.blob.core.windows.net/vhdstore/win7baseimage.vhd?st=2013-01 -09T22%3A15%3A49Z&se=2013-01-09T23%3A10%3A49Z&sr=b&sp=w&sig=13T9Ow%2FRJAMmhfO%2FaP3HhKKJ6AY093SmveO SIV4%2FR7w%3D" -LocalFilePath "C:\vhd\win7baseimage.vhd"

此命令會將 .vhd 檔案新增至記憶體帳戶,並指定 SAS URI。

範例 5:將 VHD 檔案直接新增至受控磁碟。

Add-AzVhd -LocalFilePath C:\data.vhd -ResourceGroupName rgname -Location eastus -DiskName newDisk

此命令會建立具有指定 ResourceGroupName、Location 和 DiskName 的受控磁碟;並將 VHD 檔案上傳至該檔案。

範例 6:將 VHD 檔案直接新增至已設定的磁碟。

Add-AzVhd -LocalFilePath C:\Data.vhdx -ResourceGroupName rgname -Location eastus -DiskName newDisk -Zone 1 -DiskSku Premium_LRS

此命令會嘗試先使用 Hyper-V 將 vhdx 檔案轉換成 vhd 檔案。 如果找不到 Hyper-V,則會傳回要求使用 vhd 檔案的錯誤。 成功轉換之後,它會建立具有所提供參數的受控磁碟,然後上傳 vhd 檔案。

參數

-AsJob

在背景執行 Cmdlet,並傳回作業以追蹤進度。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BaseImageUriToPatch

指定 Azure Blob 儲存體 中基底映射 Blob 的 URI。 SAS 可以指定為此參數的值。

Type:Uri
Aliases:bs
Position:4
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DataAccessAuthMode

匯出或上傳至磁碟或快照集時的其他驗證需求。 可能的選項包括:「AzureActiveDirectory」 和 「None」。。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶。

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Destination

指定 Blob 儲存體 中 Blob 的 URI。 雖然修補案例目的地不能是 SAS URI,但 參數支援 SAS URI。

Type:Uri
Aliases:dst
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DiskHyperVGeneration

虛擬機的 Hypervisor 產生。 僅適用於OS磁碟。 可取的值包括:『V1』、『V2』。

Type:String
Aliases:HyperVGeneration
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskName

新受控磁碟的名稱

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DiskOsType

受控磁碟的操作系統類型。 可能的值為:『Windows』、『Linux』。

Type:OperatingSystemTypes
Aliases:OsType
Accepted values:Windows, Linux
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskSku

受控磁碟的Sku。 選項:Standard_LRS、進階版_LRS、StandardSSD_LRS、UltraSSD_LRS

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskZone

磁碟的邏輯區域清單。

Type:String[]
Aliases:Zone
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-LocalFilePath

指定本機 .vhd 檔案的路徑。

Type:FileInfo
Aliases:lf
Position:2
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Location

新受控磁碟的位置

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NumberOfUploaderThreads

指定上傳 .vhd 檔案時要使用的上傳程式線程數目。

Type:Nullable<T>[Int32]
Aliases:th
Position:3
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-OverWrite

指出如果存在,此 Cmdlet 會覆寫指定目的地 URI 中的現有 Blob。

Type:SwitchParameter
Aliases:o
Position:5
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ResourceGroupName

指定虛擬機的資源群組名稱。

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SkipResizing

略過 VHD 檔案的大小調整。 想要將 VHD 檔案的大小錯誤(不是 N * Mib + 512 個字節)上傳至 Blob 的使用者,可以使用此參數參數。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

String

Uri

FileInfo

Nullable<T>[[System.Int32, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

SwitchParameter

輸出

VhdUploadContext