Tutorial: Criar e usar discos com o Conjunto de Dimensionamento de Máquina Virtual com o Azure PowerShell
Os Conjuntos de Dimensionamento de Máquina Virtual usam discos para armazenar o sistema operacional, os aplicativos e os dados da instância da VM. Ao criar e gerir um conjunto de dimensionamento, é importante escolher um tamanho de disco e a configuração adequados para a carga de trabalho esperada. Este tutorial abrange como criar e gerir discos de VM. Neste tutorial você aprende sobre:
- Discos de SO e discos temporários
- Discos de dados
- Discos Standard e Premium
- Desempenho do disco
- Anexar e preparar discos de dados
Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
Azure Cloud Shell
O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.
Para iniciar o Azure Cloud Shell:
Opção | Exemplo/Ligação |
---|---|
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. | |
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. | |
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. |
Para usar o Azure Cloud Shell:
Inicie o Cloud Shell.
Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.
Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e Linux ou selecionando Cmd+Shift+V no macOS.
Selecione Enter para executar o código ou comando.
Discos do Azure predefinidos
Quando um conjunto de dimensionamento é criado ou dimensionado, são anexados automaticamente dois discos a cada instância de VM.
Disco do sistema operativo – os discos do sistema operativo podem ter o tamanho máximo de 2 TB e alojam o sistema operativo da instância de VM. O disco do SO está identificado como /dev/sda por predefinição. A configuração da colocação em cache do disco do SO está otimizada para desempenho do SO. Devido a esta configuração, o disco do SO não deve alojar aplicações nem dados. Para aplicações e dados, utilize discos de dados, que são descritos posteriormente neste artigo.
Disco temporário – os discos temporários utilizam uma unidade de estado sólido que está localizada no mesmo anfitrião do Azure da instância de VM. Estes são discos de alto desempenho e podem ser usados para operações como processamento temporário de dados. No entanto, se a instância de VM for movida para um novo anfitrião, todos os dados armazenados num disco temporário são removidos. O tamanho do disco temporário é determinado pelo tamanho da instância de VM. Os discos temporários estão identificados como /dev/sdb e têm um ponto de montagem de /mnt.
Discos de dados do Azure
Podem ser adicionados mais discos de dados se precisar de instalar aplicações e armazenar dados. Os discos de dados devem ser utilizados em qualquer situação em que se pretenda armazenamento de dados durável e reativo. Cada disco de dados tem a capacidade máxima de 4 TB. O tamanho da instância de VM determina quantos discos de dados podem ser anexados. Para cada vCPU de VM, podem ser expostos dois discos de dados.
Tipos de disco de VM
A tabela seguinte fornece uma comparação dos cinco tipos de disco para o ajudar a decidir qual utilizar.
Disco Ultra | SSD Premium v2 | SSD Premium | SSD Standard | ||
---|---|---|---|---|---|
Tipo de disco | SSD | SSD | SSD | SSD | HDD |
Cenário | As cargas de trabalho de E/S intensivas, como o SAP HANA, bases de dados de escalão superior (por exemplo, SQL e Oracle) e outras cargas de trabalho com bastantes transações. | Cargas de trabalho sensíveis ao desempenho e produção que exigem consistentemente latência baixa e IOPS e débito elevados | Cargas de trabalho confidenciais de produção e de desempenho | Servidores Web, aplicações empresariais pouco utilizadas e dev/test | Cópia de segurança, acesso pouco frequente e não crítico |
Tamanho máximo do disco | 65 536 GiB | 65 536 GiB | 32,767 GiB | 32,767 GiB | 32,767 GiB |
Débito máximo | 4000 MB/s | 1200 MB/s | 900 MB/s | 750 MB/s | 500 MB/s |
IOPS Máximo | 160 000 | 80.000 | 20 000 | 6000 | 2,000, 3,000* |
Utilizável como Disco do SO? | No | No | Sim | Sim | Sim |
*Aplica-se apenas a discos com performance plus (pré-visualização) ativado.
Para obter um vídeo que aborda algumas diferenças de alto nível para os diferentes tipos de disco, bem como algumas maneiras de determinar o que afeta seus requisitos de carga de trabalho, consulte Opções de armazenamento em bloco com o Armazenamento em Disco do Azure e o Elastic SAN.
Criar e anexar discos
Pode criar e anexar discos quando criar um conjunto de dimensionamento ou com um conjunto de dimensionamento existente.
A partir da versão 2019-07-01
da API, você pode definir o tamanho do disco do sistema operacional em um conjunto de escala de máquina virtual com a propriedade storageProfile.osDisk.diskSizeGb . Após o provisionamento, talvez seja necessário expandir ou reparticionar o disco para usar todo o espaço. Saiba mais sobre como expandir o volume em seu sistema operacional no Windows ou Linux.
Anexar discos durante a criação do conjunto de dimensionamento
Crie um conjunto de escala de máquina virtual com New-AzVmss. Quando lhe for pedido, forneça um nome de utilizador e palavra-passe para as instâncias de VM. Para distribuir o tráfego pelas instâncias de VM individuais, é também criado um balanceador de carga. O balanceador de carga inclui regras para distribuir o tráfego na porta TCP 80, bem como permitir o tráfego de ambiente de trabalho remoto na porta TCP 3389 e a comunicação remota do PowerShell na porta TCP 5985.
São criados dois discos com o parâmetro -DataDiskSizeGb
. O primeiro disco tem 64 GB de tamanho e o segundo disco tem 128 GB. Quando solicitado, forneça as suas próprias credenciais administrativas pretendidas para as instâncias de VM no conjunto de dimensionamento:
New-AzResourceGroup -Name "myResourceGroup" -Location "East US"
New-AzVmss `
-ResourceGroupName "myResourceGroup" `
-Location "EastUS" `
-OrchestrationMode "Flexible" `
-VMScaleSetName "myScaleSet" `
-VirtualNetworkName "myVnet" `
-SubnetName "mySubnet" `
-PublicIpAddressName "myPublicIPAddress" `
-LoadBalancerName "myLoadBalancer" `
-DataDiskSizeInGb 64,128
A criação e configuração de todas as instâncias de VM e recursos do conjunto de dimensionamento demora alguns minutos.
Anexar um disco a um conjunto de dimensionamento existente
Também pode anexar discos a um conjunto de dimensionamento existente. Use o conjunto de escala criado na etapa anterior para adicionar outro disco com Add-AzVmssDataDisk. O exemplo seguinte anexa um disco de 128 GB adicional a um conjunto de dimensionamento existente:
# Get scale set object
$vmss = Get-AzVmss `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myScaleSet"
# Attach a 128 GB data disk to LUN 2
Add-AzVmssDataDisk `
-VirtualMachineScaleSet $vmss `
-CreateOption Empty `
-Lun 2 `
-DiskSizeGB 128
# Update the scale set to apply the change
Update-AzVmss `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myScaleSet" `
-VirtualMachineScaleSet $vmss
Como alternativa, se você quiser adicionar um disco de dados a uma instância individual em um conjunto de escala, use Add-AzVmssVMDataDisk.
$VirtualMachine = Get-AzVmssVM -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet" -InstanceId 1
Add-AzVmssVMDataDisk -VirtualMachineScaleSetVM $VirtualMachine -LUN 2 -DiskSizeInGB 1 -CreateOption Empty -StorageAccountType Standard_LRS
Update-AzVmssVM -VirtualMachineScaleSetVM $VirtualMachine
Listar os discos anexados
Para exibir informações sobre discos anexados a um conjunto de escalas, use Get-AzVmss da seguinte maneira:
Get-AzVmss -ResourceGroupName "myResourceGroup" -Name "myScaleSet"
Na propriedade VirtualMachineProfile.StorageProfile, é apresentada a lista de DataDisks. São apresentadas informações sobre o tamanho do disco, a camada de armazenamento e o LUN (Número de Unidade Lógica). O resultado de exemplo seguinte detalha os três discos de dados anexados ao conjunto de dimensionamento:
DataDisks[0] :
Lun : 0
Caching : None
CreateOption : Empty
DiskSizeGB : 64
ManagedDisk :
StorageAccountType : PremiumLRS
DataDisks[1] :
Lun : 1
Caching : None
CreateOption : Empty
DiskSizeGB : 128
ManagedDisk :
StorageAccountType : PremiumLRS
DataDisks[2] :
Lun : 2
Caching : None
CreateOption : Empty
DiskSizeGB : 128
ManagedDisk :
StorageAccountType : PremiumLRS
Desligar um disco
Quando já não precisar de um determinado disco, pode desanexá-lo do conjunto de dimensionamento. O disco é removido de todas as instâncias de VM no conjunto de dimensionamento. Para desanexar um disco de um conjunto de escalas, use Remove-AzVmssDataDisk e especifique o LUN do disco. Os LUNs são mostrados na saída de Get-AzVmss na seção anterior. O exemplo seguinte desanexa o LUN 3 do conjunto de dimensionamento:
# Get scale set object
$vmss = Get-AzVmss `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myScaleSet"
# Detach a disk from the scale set
Remove-AzVmssDataDisk `
-VirtualMachineScaleSet $vmss `
-Lun 2
# Update the scale set and detach the disk from the VM instances
Update-AzVmss `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myScaleSet" `
-VirtualMachineScaleSet $vmss
Como alternativa, se você quiser remover um disco de dados para uma instância individual em um conjunto de escala, use Remove-AzVmssVMDataDisk.
$VirtualMachine = Get-AzVmssVM -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet" -InstanceId "c91dfbd9"
Remove-AzVmssVMDataDisk -VirtualMachineScaleSetVM $VirtualMachine -Lun 2
Update-AzVmssVM -VirtualMachineScaleSetVM -VM $VirtualMachine
Clean up resources (Limpar recursos)
Para remover o conjunto de escala e os discos, exclua o grupo de recursos e todos os seus recursos com Remove-AzResourceGroup. O parâmetro -Force
confirma que pretende eliminar os recursos sem uma linha de comandos adicional para fazê-lo. O parâmetro -AsJob
devolve o controlo à linha de comandos, sem aguardar a conclusão da operação.
Remove-AzResourceGroup -Name "myResourceGroup" -Force -AsJob
Próximos passos
Neste tutorial, aprendeu a criar e utilizar discos com conjuntos de dimensionamento com o Azure PowerShell:
- Discos de SO e discos temporários
- Discos de dados
- Discos Standard e Premium
- Desempenho do disco
- Anexar e preparar discos de dados
Avance para o próximo tutorial para saber como utilizar uma imagem personalizada para as instâncias de VM do conjunto de dimensionamento.