Como expandir discos rígidos virtuais anexados a uma máquina virtual do Windows
Aplica-se a: ✔️ VMs do Windows ✔️ Conjuntos de dimensionamento flexíveis
Ao criar uma VM (máquina virtual) em um grupo de recursos implantando uma imagem do Azure Marketplace, o SO (sistema operacional) padrão normalmente tem 127 GiB (alguns têm tamanhos de disco de sistema operacional menores por padrão). Você pode adicionar discos de dados à sua VM (o valor depende do SKU da VM selecionada) e recomendamos instalar aplicativos e cargas de trabalho com uso intensivo de CPU em discos de dados. Talvez seja necessário expandir o disco do sistema operacional se estiver dando suporte a um aplicativo herdado que instale componentes no disco do sistema operacional ou se estiver migrando um computador físico ou uma VM do local que tenha um disco do sistema operacional maior. Este artigo aborda a expansão de discos do sistema operacional ou discos de dados.
Esse disco de sistema operacional tem uma capacidade máxima de 4.095 GiB. No entanto, muitos sistemas operacionais são particionados com um registro mestre de inicialização (MBR) por padrão. O MBR limita o tamanho utilizável a 2 TiB. Se você precisar de mais de 2 TiB, crie e anexe discos de dados e use-os para o armazenamento de dados. Se você precisar armazenar dados no disco do sistema operacional e exigir espaço adicional, converta-o em GPT (tabela de partição GUID). Para saber mais sobre as diferenças entre o MBR e o GPT em implantações do Windows, veja as perguntas frequentes sobre Windows e GPT.
Importante
A menos que você use Expandir sem tempo de inatividade, a expansão de um disco de dados exige que a VM seja desalocada.
A redução de um disco existente não tem suporte e pode resultar em perda de dados.
Depois de expandir os discos, você precisará Expandir o volume no sistema operacional para aproveitar o disco maior.
Não é possível expandir o tamanho dos volumes com faixas.
Expandir sem tempo de inatividade
Você pode expandir os discos de dados sem desalocar a VM. A configuração do cache de host do disco não altera se você pode ou não expandir um disco de dados sem desalocar sua VM.
Este recurso tem as seguintes limitações:
- Tem suporte apenas para discos de dados.
- Se um disco HDD Standard, SSD Standard ou SSD Premium tiver 4 TiB ou menos, desaloque sua VM e desconecte o disco antes de expandi-lo para mais de 4 TiB. Se um desses tipos de disco já for maior que 4 TiB, você poderá expandi-lo sem desalocar a VM e desanexar o disco. Isso não se aplica ao SSD Premium v2 ou Discos Ultra.
- Sem suporte para discos compartilhados.
- Instale e use um dos dois:
- A CLI do Azure mais recente
- O módulo mais recente do Azure PowerShell
- O Portal do Azure
- Ou um modelo do Azure Resource Manager com uma versão de API que seja
2021-04-01
ou mais recente.
- Não disponível em algumas VMs clássicas. Use esse script para obter uma lista de SKUs de VM clássica que dão suporte à expansão sem tempo de inatividade.
Expandir com o Disco Ultra e o SSD Premium v2
Expandir os Discos Ultra e SSD Premium v2 tem as seguintes limitações adicionais:
- Você não pode expandir um disco enquanto uma cópia em segundo plano de dados também estiver ocorrendo nesse disco, como quando um disco está sendo hidratado de instantâneos.
- Você não pode expandir uma VM que esteja usando controladores NVMe para Discos Ultra ou SSD Premium v2 sem tempo de inatividade.
Disponibilidade regional
O redimensionamento de discos Ultra e discos SSD Premium v2 está disponível atualmente em todas as regiões com suporte do SSD Premium v2 e Ultra, exceto as seguintes:
- Oeste dos EUA 2
- Europa Ocidental
- Leste dos EUA
Redimensionar um disco gerenciado no portal do Azure
Importante
Se o seu disco atender aos requisitos em Expandir sem tempo de inatividade, ignore a etapa 1.
No portal do Azure, acesse a máquina virtual na qual você deseja expandir o disco. Selecione Parar a fim de parar\desalocar a VM.
No menu esquerdo em Configurações, escolha Discos.
Em Nome do disco, selecione o disco que você deseja expandir.
No menu à esquerda, em Configurações, selecione Tamanho + Desempenho.
Em Tamanho + Desempenho, selecione o tamanho de disco desejado.
Aviso
O novo tamanho deve ser maior que o tamanho do disco existente. O valor máximo permitido é de 4.095 GB para discos do sistema operacional. (É possível expandir o blob VHD além desse tamanho, mas o sistema operacional só funciona com os primeiros 4.095 GB de espaço.)
Selecione Redimensionar na parte inferior da página.
Redimensionar um disco gerenciado com o PowerShell
Abra o ISE ou a janela do PowerShell no modo administrativo e siga as etapas abaixo:
Conecte-se à sua conta do Microsoft Azure no modo de gerenciamento de recursos e selecione sua assinatura:
Connect-AzAccount
Select-AzSubscription –SubscriptionName 'my-subscription-name'
Defina o nome do grupo de recursos e o nome da VM:
$rgName = 'my-resource-group-name'
$vmName = 'my-vm-name'
$diskName = 'my-disk-name'
Obtenha uma referência à VM:
$vm = Get-AzVM -ResourceGroupName $rgName -Name $vmName
Importante
Se o seu disco atender aos requisitos em Expandir sem tempo de inatividade, ignore as etapas 4 e 6.
Pare a VM antes de redimensionar o disco:
Stop-AzVM -ResourceGroupName $rgName -Name $vmName
Obtenha uma referência ao disco do sistema operacional gerenciado. Defina o tamanho do disco gerenciado de sistema operacional para o valor desejado e atualize-o:
$disk= Get-AzDisk -ResourceGroupName $rgName -DiskName $diskName
$disk.DiskSizeGB = 1023
Update-AzDisk -ResourceGroupName $rgName -Disk $disk -DiskName $disk.Name
Aviso
O novo tamanho deve ser maior que o tamanho do disco existente. O valor máximo permitido é de 4.095 GB para discos do sistema operacional. (É possível expandir o blob VHD além desse tamanho, mas o sistema operacional só funciona com os primeiros 4.095 GB de espaço.)
A atualização da VM pode demorar um pouco. Depois que a execução do comando for concluída, reinicie a VM:
Start-AzVM -ResourceGroupName $rgName -Name $vmName
Acesse a VM de modo remoto, abra Gerenciamento do Computador (ou Gerenciamento de Disco) e expanda a unidade usando o espaço recentemente alocado.
Expandir o volume no sistema operacional
Após expandir o disco da VM, você precisará acessar o sistema operacional e expandir o volume a fim de abranger o novo espaço. Há vários métodos para expandir uma partição. Esta seção aborda como conectar a VM usando uma conexão RDP para expandir a partição Usando Diskpart ou Usando o Gerenciador de disco.
Usando DiskPart
Após expandir o disco da VM, você precisará acessar o sistema operacional e expandir o volume a fim de abranger o novo espaço. Há vários métodos para expandir uma partição. Esta seção aborda como conectar a VM usando uma conexão RDP para expandir a partição usando DiskPart.
Abra uma conexão RDP com a VM.
Abra um prompt de comando e digite diskpart.
No prompt DISKPART, digite
list volume
. Anote o volume que você deseja estender.No prompt DISKPART, digite
select volume <volumenumber>
. Isso seleciona o volume volumenumber que você deseja estender no espaço vazio contíguo no mesmo disco.No prompt DISKPART, digite
extend [size=<size>]
. Isso estende o volume selecionado pelo tamanho em megabytes (MB).
Usando o Gerenciador de disco
Iniciar uma sessão da área de trabalho remota com a VM.
Abra o Gerenciamento de disco.
Clique com o botão direito do mouse em C: partição da unidade -> Estender volume.
Siga as etapas e você deverá conseguir ver o disco com capacidade atualizada:
Expansão de suporte a SKU de VM clássica sem tempo de inatividade
Se você estiver usando uma SKU de VM clássica, talvez ela não dê suporte à expansão de discos sem tempo de inatividade.
Use o seguinte script do PowerShell para determinar com quais SKUs de VM ele está disponível:
Connect-AzAccount
$subscriptionId="yourSubID"
$location="desiredRegion"
Set-AzContext -Subscription $subscriptionId
$vmSizes=Get-AzComputeResourceSku -Location $location | where{$_.ResourceType -eq 'virtualMachines'}
foreach($vmSize in $vmSizes){
foreach($capability in $vmSize.Capabilities)
{
if(($capability.Name -eq "EphemeralOSDiskSupported" -and $capability.Value -eq "True") -or ($capability.Name -eq "PremiumIO" -and $capability.Value -eq "True") -or ($capability.Name -eq "HyperVGenerations" -and $capability.Value -match "V2"))
{
$vmSize.Name
}
}
}
Próximas etapas
Você também pode conectar discos usando o portal do Azure.