Partilhar via


Add-AzureRmVMDataDisk

Adiciona um disco de dados a uma máquina virtual ou a uma VM Vmss.

Aviso

O módulo AzureRM do PowerShell foi oficialmente preterido a partir de 29 de fevereiro de 2024. Os usuários são aconselhados a migrar do AzureRM para o módulo Az PowerShell para garantir suporte e atualizações contínuos.

Embora o módulo AzureRM ainda possa funcionar, ele não é mais mantido ou suportado, colocando qualquer uso continuado a critério e risco do usuário. Consulte nossos recursos de migração para obter orientação sobre a transição para o módulo Az.

Sintaxe

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>]

Description

O cmdlet Add-AzureRmVMDataDisk adiciona um disco de dados a uma máquina virtual ou a uma VM Vmss. Você pode adicionar um disco de dados ao criar uma máquina virtual ou pode adicionar um disco de dados a uma máquina virtual existente.

Exemplos

Exemplo 1: Adicionar discos de dados a uma nova máquina virtual

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

O primeiro comando cria um objeto de máquina virtual e, em seguida, armazena-o na variável $VirtualMachine. O comando atribui um nome e um tamanho à máquina virtual. Os próximos três comandos atribuem caminhos de três discos de dados às variáveis $DataDiskVhdUri 01, $DataDiskVhdUri 02 e $DataDiskVhdUri 03. Esta abordagem é apenas para legibilidade dos seguintes comandos. Cada um dos três comandos finais adiciona um disco de dados à máquina virtual armazenada no $VirtualMachine. O comando especifica o nome e o local do disco e outras propriedades do disco. O URI de cada disco é armazenado em $DataDiskVhdUri 01, $DataDiskVhdUri 02 e $DataDiskVhdUri 03.

Exemplo 2: Adicionar um disco de dados a uma máquina virtual existente

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

O primeiro comando obtém a máquina virtual chamada VirtualMachine07 usando o cmdlet Get-AzureRmVM . O comando armazena a máquina virtual na variável $VirtualMachine. O segundo comando adiciona um disco de dados à máquina virtual armazenada no $VirtualMachine. O comando final atualiza o estado da máquina virtual armazenada em $VirtualMachine em ResourceGroup11.

Exemplo 3: Adicionar um disco de dados a uma nova máquina virtual a partir de uma imagem de usuário generalizada

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

O primeiro comando cria um objeto de máquina virtual e o armazena na variável $VirtualMachine. O comando atribui um nome e um tamanho à máquina virtual. Os dois comandos seguintes atribuem caminhos para a imagem de dados e discos de dados para as variáveis $DataImageUri e $DataDiskUri, respectivamente. Essa abordagem é usada para melhorar a legibilidade dos comandos a seguir. Os comandos finais adicionam um disco de dados à máquina virtual armazenada no $VirtualMachine. O comando especifica o nome e o local do disco e outras propriedades do disco.

Exemplo 4: Adicionar discos de dados a uma nova máquina virtual a partir de uma imagem de usuário especializada

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

O primeiro comando cria um objeto de máquina virtual e o armazena na variável $VirtualMachine. O comando atribui um nome e um tamanho à máquina virtual. Os comandos seguintes atribuem caminhos do disco de dados à variável $DataDiskUri. Essa abordagem é usada para melhorar a legibilidade dos comandos a seguir. O comando final adiciona um disco de dados à máquina virtual armazenada no $VirtualMachine. O comando especifica o nome e o local do disco e outras propriedades do disco.

Exemplo 5: Adicionar um disco de dados gerenciado a uma VM 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

O primeiro comando obtém um disco gerenciado existente. O próximo comando obtém uma VM Vmss existente fornecida pelo nome do grupo de recursos, o nome vmss e o ID da instância. O próximo comando adiciona o disco gerenciado à VM Vmss armazenada localmente no $VmssVM. O comando final atualiza a VM Vmss com disco de dados adicionado.

Parâmetros

-Caching

Especifica o modo de cache do disco. Os valores aceitáveis para este parâmetro são:

  • ReadOnly
  • ReadWrite
  • Nenhum O valor padrão é ReadWrite. Alterar esse valor faz com que a máquina virtual seja reiniciada. Essa configuração afeta a consistência e o desempenho do disco.
Tipo:CachingTypes
Valores aceites:None, ReadOnly, ReadWrite
Position:3
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-CreateOption

Especifica se esse cmdlet cria um disco na máquina virtual a partir de uma plataforma ou imagem de usuário, cria um disco vazio ou anexa um disco existente. Os valores aceitáveis para este parâmetro são:

  • Anexar. Especifique esta opção para criar uma máquina virtual a partir de um disco especializado. Ao especificar essa opção, não especifique o parâmetro SourceImageUri . O VhdUri é tudo o que é necessário para informar à plataforma Azure o local do disco rígido virtual (VHD) a ser anexado como um disco de dados à máquina virtual.
  • Vazio. Especifique isso para criar um disco de dados vazio.
  • FromImage. Especifique esta opção para criar uma máquina virtual a partir de uma imagem ou disco generalizado. Ao especificar essa opção, você deve especificar o parâmetro SourceImageUri também para informar à plataforma Azure o local do VHD a ser anexado como um disco de dados. O parâmetro VhdUri é usado como o local que identifica onde o VHD do disco de dados será armazenado quando for usado pela máquina virtual.
Tipo:String
Position:6
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para comunicação com o azure.

Tipo:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-DiskSizeInGB

Especifica o tamanho, em gigabytes, de um disco vazio a ser anexado a uma máquina virtual.

Tipo:Nullable<T>[Int32]
Position:4
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Lun

Especifica o número da unidade lógica (LUN) de um disco de dados.

Tipo:Nullable<T>[Int32]
Position:5
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-ManagedDiskId

Especifica a ID de um disco gerenciado.

Tipo:String
Position:8
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Name

Especifica o nome do disco de dados a ser adicionado.

Tipo:String
Position:1
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-SourceImageUri

Especifica o URI de origem do disco anexado por esse cmdlet.

Tipo:String
Aliases:SourceImage
Position:7
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-StorageAccountType

Especifica o tipo de conta de armazenamento do disco gerenciado.

Tipo:String
Position:9
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-VhdUri

Especifica o URI (Uniform Resource Identifier) para o arquivo de disco rígido virtual (VHD) a ser criado quando uma imagem de plataforma ou de usuário é usada. Este cmdlet copia o blob (objeto binário grande) da imagem para esse local. Este é o local a partir do qual iniciar a máquina virtual.

Tipo:String
Position:2
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-VirtualMachineScaleSetVM

Especifica o objeto VM do conjunto de escala da máquina virtual local ao qual adicionar um disco de dados. Você pode usar o cmdlet Get-AzureRmVmssVM para obter um objeto VM de conjunto de escala de máquina virtual.

Tipo:PSVirtualMachineScaleSetVM
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-VM

Especifica o objeto de máquina virtual local ao qual adicionar um disco de dados. Você pode usar o cmdlet Get-AzureRmVM para obter um objeto de máquina virtual. Você pode usar o cmdlet New-AzureRmVMConfig para criar um objeto de máquina virtual.

Tipo:PSVirtualMachine
Aliases:VMProfile
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-WriteAccelerator

Especifica se o WriteAccelerator deve ser habilitado ou desabilitado em um disco de dados gerenciado.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

PSVirtualMachine

PSVirtualMachineScaleSetVM

String

CachingTypes

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

Saídas

PSVirtualMachine

PSVirtualMachineScaleSetVM