Udostępnij za pośrednictwem


Add-AzureRmVMDataDisk

Dodaje dysk danych do maszyny wirtualnej lub maszyny wirtualnej vmss.

Ostrzeżenie

Moduł AzureRM PowerShell jest oficjalnie przestarzały od 29 lutego 2024 r. Zaleca się migrowanie użytkowników z modułu AzureRM do modułu Az programu PowerShell w celu zapewnienia ciągłej obsługi i aktualizacji.

Mimo że moduł AzureRM może nadal działać, nie jest już utrzymywany ani obsługiwany, umieszczając wszelkie dalsze zastosowania według uznania i ryzyka użytkownika. Zapoznaj się z naszymi zasobami migracji, aby uzyskać wskazówki dotyczące przejścia do modułu Az.

Składnia

Add-AzureRmVMDataDisk
   [-VM] <PSVirtualMachine>
   [[-Name] <String>]
   [[-VhdUri] <String>]
   [[-Caching] <CachingTypes>]
   [[-DiskSizeInGB] <Int32>]
   [-Lun] <Int32>
   [-CreateOption] <String>
   [[-SourceImageUri] <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Add-AzureRmVMDataDisk
   [-VM] <PSVirtualMachine>
   [[-Name] <String>]
   [[-Caching] <CachingTypes>]
   [[-DiskSizeInGB] <Int32>]
   [-Lun] <Int32>
   [-CreateOption] <String>
   [[-ManagedDiskId] <String>]
   [[-StorageAccountType] <String>]
   [-WriteAccelerator]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Add-AzureRmVMDataDisk
   [-VirtualMachineScaleSetVM] <PSVirtualMachineScaleSetVM>
   [[-Caching] <CachingTypes>]
   [[-DiskSizeInGB] <Int32>]
   [-Lun] <Int32>
   [-CreateOption] <String>
   [-ManagedDiskId] <String>
   [[-StorageAccountType] <String>]
   [-WriteAccelerator]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Opis

Polecenie cmdlet Add-AzureRmVMDataDisk dodaje dysk danych do maszyny wirtualnej lub maszyny wirtualnej vmss. Dysk danych można dodać podczas tworzenia maszyny wirtualnej lub dodać dysk danych do istniejącej maszyny wirtualnej.

Przykłady

Przykład 1. Dodawanie dysków danych do nowej maszyny wirtualnej

PS C:\> $VirtualMachine = New-AzureRmVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1"
PS C:\> $DataDiskVhdUri01 = "https://contoso.blob.core.windows.net/test/data1.vhd"
PS C:\> $DataDiskVhdUri02 = "https://contoso.blob.core.windows.net/test/data2.vhd"
PS C:\> $DataDiskVhdUri03 = "https://contoso.blob.core.windows.net/test/data3.vhd"
PS C:\> $VirtualMachine = Add-AzureRmVMDataDisk -VM $VirtualMachine -Name 'DataDisk1' -Caching 'ReadOnly' -DiskSizeInGB 10 -Lun 0 -VhdUri $DataDiskVhdUri01 -CreateOption Empty
PS C:\> $VirtualMachine = Add-AzureRmVMDataDisk -VM $VirtualMachine -Name 'DataDisk2' -Caching 'ReadOnly' -DiskSizeInGB 11 -Lun 1 -VhdUri $DataDiskVhdUri02 -CreateOption Empty
PS C:\> $VirtualMachine = Add-AzureRmVMDataDisk -VM $VirtualMachine -Name 'DataDisk3' -Caching 'ReadOnly' -DiskSizeInGB 12 -Lun 2 -VhdUri $DataDiskVhdUri03 -CreateOption Empty

Pierwsze polecenie tworzy obiekt maszyny wirtualnej, a następnie przechowuje go w zmiennej $VirtualMachine. Polecenie przypisuje nazwę i rozmiar do maszyny wirtualnej. Następne trzy polecenia przypisują ścieżki trzech dysków danych do zmiennych $DataDiskVhdUri 01, $DataDiskVhdUri 02 i $DataDiskVhdUri 03. Takie podejście umożliwia tylko czytelność następujących poleceń. Ostatnie trzy polecenia dodaje dysk danych do maszyny wirtualnej przechowywanej w $VirtualMachine. Polecenie określa nazwę i lokalizację dysku oraz inne właściwości dysku. Identyfikator URI każdego dysku jest przechowywany w $DataDiskVhdUri 01, $DataDiskVhdUri 02 i $DataDiskVhdUri 03.

Przykład 2. Dodawanie dysku danych do istniejącej maszyny wirtualnej

PS C:\> $VirtualMachine = Get-AzureRmVM -ResourceGroupName "ResourceGroup11" -Name "VirtualMachine07"
PS C:\> Add-AzureRmVMDataDisk -VM $VirtualMachine -Name "disk1" -VhdUri "https://contoso.blob.core.windows.net/vhds/diskstandard03.vhd" -LUN 0 -Caching ReadOnly -DiskSizeinGB 1 -CreateOption Empty
PS C:\> Update-AzureRmVM -ResourceGroupName "ResourceGroup11" -VM $VirtualMachine

Pierwsze polecenie pobiera maszynę wirtualną o nazwie VirtualMachine07 przy użyciu polecenia cmdlet Get-AzureRmVM . Polecenie przechowuje maszynę wirtualną w zmiennej $VirtualMachine. Drugie polecenie dodaje dysk danych do maszyny wirtualnej przechowywanej w $VirtualMachine. Ostatnie polecenie aktualizuje stan maszyny wirtualnej przechowywanej w $VirtualMachine w grupie ResourceGroup11.

Przykład 3. Dodawanie dysku danych do nowej maszyny wirtualnej z uogólnionego obrazu użytkownika

PS C:\> $VirtualMachine = New-AzureRmVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1"
PS C:\> $DataImageUri = "https://contoso.blob.core.windows.net/system/Microsoft.Compute/Images/captured/dataimage.vhd"
PS C:\> $DataDiskUri = "https://contoso.blob.core.windows.net/test/datadisk.vhd"
PS C:\> $VirtualMachine = Add-AzureRmVMDataDisk -VM $VirtualMachine -Name "disk1" -SourceImageUri $DataImageUri -VhdUri $DataDiskUri -Lun 0 -DiskSizeinGB 10 -CreateOption FromImage

Pierwsze polecenie tworzy obiekt maszyny wirtualnej i przechowuje go w zmiennej $VirtualMachine. Polecenie przypisuje nazwę i rozmiar do maszyny wirtualnej. Dwa następne polecenia przypisują ścieżki dla obrazów danych i dysków danych do odpowiednio zmiennych $DataImageUri i $DataDiskUri. To podejście służy do poprawy czytelności następujących poleceń. Ostatnie polecenia dodają dysk danych do maszyny wirtualnej przechowywanej w $VirtualMachine. Polecenie określa nazwę i lokalizację dysku oraz inne właściwości dysku.

Przykład 4. Dodawanie dysków danych do nowej maszyny wirtualnej z wyspecjalizowanego obrazu użytkownika

PS C:\> $VirtualMachine = New-AzureRmVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1"
PS C:\> $DataDiskUri = "https://contoso.blob.core.windows.net/test/datadisk.vhd"
PS C:\> $VirtualMachine = Add-AzureRmVMDataDisk -VM $VirtualMachine -Name "dd1" -VhdUri $DataDiskUri -Lun 0 -DiskSizeinGB 10 -CreateOption Attach

Pierwsze polecenie tworzy obiekt maszyny wirtualnej i przechowuje go w zmiennej $VirtualMachine. Polecenie przypisuje nazwę i rozmiar do maszyny wirtualnej. Następne polecenia przypisuje ścieżki dysku danych do zmiennej $DataDiskUri. To podejście służy do poprawy czytelności następujących poleceń. Ostatnie polecenie dodaje dysk danych do maszyny wirtualnej przechowywanej w $VirtualMachine. Polecenie określa nazwę i lokalizację dysku oraz inne właściwości dysku.

Przykład 5. Dodawanie dysku danych zarządzanych do maszyny wirtualnej usługi Vmss.

PS C:\> $disk = Get-AzureRmDisk -ResourceGroupName $rgname -DiskName $diskname0
PS C:\> $VmssVM = Get-AzureRmVmssVM -ResourceGroupName "myrg" -VMScaleSetName "myvmss" -InstanceId 0
PS C:\> $VmssVM = Add-AzureRmVMDataDisk -VirtualMachineScaleSetVM $VmssVM -Lun 0 -DiskSizeInGB 10 -CreateOption Attach -StorageAccountType Standard_LRS -ManagedDiskId $disk.Id
PS C:\> Update-AzureRmVmssVM -VirtualMachineScaleSetVM $VmssVM

Pierwsze polecenie pobiera istniejący dysk zarządzany. Następne polecenie pobiera istniejącą maszynę wirtualną vmss na podstawie nazwy grupy zasobów, nazwy maszyn wirtualnych i identyfikatora wystąpienia. Następne polecenie dodaje dysk zarządzany do maszyny wirtualnej vmss przechowywane lokalnie w $VmssVM. Ostatnie polecenie aktualizuje maszynę wirtualną vmss za pomocą dodanego dysku danych.

Parametry

-Caching

Określa tryb buforowania dysku. Dopuszczalne wartości tego parametru to:

  • Tylko do odczytu
  • ReadWrite
  • Brak Wartość domyślna to ReadWrite. Zmiana tej wartości powoduje ponowne uruchomienie maszyny wirtualnej. To ustawienie wpływa na spójność i wydajność dysku.
Typ:CachingTypes
Dopuszczalne wartości:None, ReadOnly, ReadWrite
Position:3
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-CreateOption

Określa, czy to polecenie cmdlet tworzy dysk na maszynie wirtualnej na podstawie platformy lub obrazu użytkownika, tworzy pusty dysk lub dołącza istniejący dysk. Dopuszczalne wartości tego parametru to:

  • Przymocować. Określ tę opcję, aby utworzyć maszynę wirtualną na podstawie wyspecjalizowanego dysku. Po określeniu tej opcji nie należy określać parametru SourceImageUri . VhdUri to wszystko, co jest potrzebne, aby poinformować platformę Azure o lokalizacji wirtualnego dysku twardego (VHD) do dołączenia jako dysku danych do maszyny wirtualnej.
  • Pusty. Określ to, aby utworzyć pusty dysk danych.
  • FromImage. Określ tę opcję, aby utworzyć maszynę wirtualną na podstawie uogólnionego obrazu lub dysku. Po określeniu tej opcji należy określić parametr SourceImageUri również, aby poinformować platformę Azure o lokalizacji wirtualnego dysku twardego do dołączenia jako dysku danych. Parametr VhdUri jest używany jako lokalizacja identyfikująca, gdzie dysk VHD danych będzie przechowywany, gdy jest używany przez maszynę wirtualną.
Typ:String
Position:6
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

Typ:IAzureContextContainer
Aliasy:AzureRmContext, AzureCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DiskSizeInGB

Określa rozmiar w gigabajtach pustego dysku, który ma zostać dołączony do maszyny wirtualnej.

Typ:Nullable<T>[Int32]
Position:4
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Lun

Określa numer jednostki logicznej (LUN) dla dysku danych.

Typ:Nullable<T>[Int32]
Position:5
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-ManagedDiskId

Określa identyfikator dysku zarządzanego.

Typ:String
Position:8
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Name

Określa nazwę dysku danych do dodania.

Typ:String
Position:1
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-SourceImageUri

Określa źródłowy identyfikator URI dysku, który dołącza to polecenie cmdlet.

Typ:String
Aliasy:SourceImage
Position:7
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-StorageAccountType

Określa typ konta magazynu dysku zarządzanego.

Typ:String
Position:9
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VhdUri

Określa identyfikator URI (Uniform Resource Identifier) dla pliku wirtualnego dysku twardego (VHD), który ma zostać utworzony podczas użycia obrazu platformy lub obrazu użytkownika. To polecenie cmdlet kopiuje obraz binarny duży obiekt (blob) do tej lokalizacji. Jest to lokalizacja, z której ma być uruchamiana maszyna wirtualna.

Typ:String
Position:2
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VirtualMachineScaleSetVM

Określa lokalny obiekt maszyny wirtualnej zestawu skalowania maszyn wirtualnych, do którego ma zostać dodany dysk danych. Aby uzyskać obiekt maszyny wirtualnej zestawu skalowania maszyn wirtualnych, możesz użyć polecenia cmdlet Get-AzureRmVmssVM .

Typ:PSVirtualMachineScaleSetVM
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VM

Określa lokalny obiekt maszyny wirtualnej, do którego ma zostać dodany dysk danych. Aby uzyskać obiekt maszyny wirtualnej, możesz użyć polecenia cmdlet Get-AzureRmVM . Aby utworzyć obiekt maszyny wirtualnej, możesz użyć polecenia cmdlet New-AzureRmVMConfig .

Typ:PSVirtualMachine
Aliasy:VMProfile
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-WriteAccelerator

Określa, czy funkcja WriteAccelerator powinna być włączona, czy wyłączona na dysku danych zarządzanych.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

PSVirtualMachine

PSVirtualMachineScaleSetVM

String

CachingTypes

Nullable<T>[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

Dane wyjściowe

PSVirtualMachine

PSVirtualMachineScaleSetVM