Partilhar via


Tutorial - Gerenciar discos do Azure com a CLI do Azure

Aplica-se a: ✔️ Linux VMs ✔️ Conjuntos de escala flexível

As máquinas virtuais (VMs) do Azure usam discos para armazenar o sistema operacional, os aplicativos e os dados. Ao criar uma VM, é importante escolher um tamanho de disco e uma configuração adequados à carga de trabalho esperada. Este tutorial mostra como implantar e gerenciar discos VM. Você aprende sobre:

  • Discos de SO e discos temporários
  • Discos de dados
  • Discos Standard e Premium
  • Desempenho do disco
  • Anexar e preparar os discos de dados
  • Instantâneos de disco

Discos do Azure predefinidos

Quando uma máquina virtual do Azure é criada, dois discos são automaticamente anexados à máquina virtual.

Disco do sistema operacional - Os discos do sistema operacional podem ser dimensionados até 2 TB e hospedam o sistema operacional VMs. O disco do SO está identificado como /dev/sda por predefinição. The disk caching configuration of the OS disk is optimized for OS performance. Devido a essa configuração, o disco do sistema operacional não deve ser usado para aplicativos ou dados. Para aplicativos e dados, use discos de dados, que são detalhados mais adiante neste tutorial.

Disco temporário - Os discos temporários usam uma unidade de estado sólido localizada no mesmo host do Azure que a VM. Os discos temporários são de alto desempenho e podem ser usados para operações como processamento temporário de dados. No entanto, se a VM for movida para um novo host, todos os dados armazenados em um disco temporário serão removidos. O tamanho do disco temporário é determinado pelo tamanho da 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

Para instalar aplicativos e armazenar dados, discos de dados adicionais podem ser adicionados. Os discos de dados devem ser utilizados em qualquer situação em que se pretenda armazenamento de dados durável e reativo. O tamanho da máquina virtual determina quantos discos de dados podem ser anexados a uma VM.

Tipos de disco VM

O Azure fornece dois tipos de discos.

Discos standard - suportados por HDD e que proporcionam um armazenamento económico sem deixar de ter desempenho. Os discos padrão são ideais para uma carga de trabalho de desenvolvimento e teste econômica.

Discos Premium - apoiados por discos baseados em SSD, de elevado desempenho e de baixa latência. Perfeito para VMs que executam carga de trabalho de produção. Os tamanhos de VM com um S no nome do tamanho normalmente suportam o Armazenamento Premium. Por exemplo, as VMs das séries DS, DSv2, GS e FS oferecem suporte ao armazenamento premium. Quando você seleciona um tamanho de disco, o valor é arredondado para o próximo tipo. Por exemplo, se o tamanho do disco for superior a 64 GB, mas inferior a 128 GB, o tipo de disco será P10.


Tamanhos de SSD Premium P1 P2 P3 P4 P6 P10 P15 P20 P30 Pág. 40 P50 P60 Pág. 70 Pág. 80
Tamanho do disco em GiB 4 8 16 32 64 128 256 512 1,024 2,048 4,096 8,192 16,384 32 767
IOPS provisionadas de base por disco 120 120 120 120 240 500 1100 2300 5.000 7,500 7,500 16,000 18,000 20.000
**Expanded provisioned IOPS per disk N/A N/A N/A N/A N/A N/A N/A N/A 8,000 16,000 20.000 20.000 20.000 20.000
Base provisioned Throughput per disk 25 MB/s 25 MB/s 25 MB/s 25 MB/s 50 MB/s 100 MB/s 125 MB/s 150 MB/s 200 MB/s 250 MB/s 250 MB/s 500 MB/s 750 MB/s 900 MB/s
**Expanded provisioned throughput per disk N/A N/A N/A N/A N/A N/A N/A N/A 300 MB/s 600 MB/s 900 MB/s 900 MB/s 900 MB/s 900 MB/s
IOPS de intermitência máxima por disco 3500 3500 3500 3500 3500 3500 3500 3500 30,000* 30,000* 30,000* 30,000* 30,000* 30,000*
Max burst throughput per disk 170 MB/s 170 MB/s 170 MB/s 170 MB/s 170 MB/s 170 MB/s 170 MB/s 170 MB/s 1.000 MB/s* 1.000 MB/s* 1.000 MB/s* 1.000 MB/s* 1.000 MB/s* 1.000 MB/s*
Max burst duration 30 minutos 30 minutos 30 minutos 30 minutos 30 minutos 30 minutos 30 minutos 30 minutos Ilimitado* Ilimitado* Ilimitado* Ilimitado* Ilimitado* Ilimitado*
Elegível para reserva Não Não Não Não Não Não Não Não Sim, até um ano Sim, até um ano Sim, até um ano Sim, até um ano Sim, até um ano Sim, até um ano

*Applies only to disks with on-demand bursting enabled.
** Only applies to disks with performance plus enabled.

Ao provisionar um disco de armazenamento premium, ao contrário do armazenamento padrão, você tem garantida a capacidade, IOPS e taxa de transferência desse disco. Por exemplo, se você criar um disco P50, o Azure provisionará capacidade de armazenamento de 4.095 GB, 7.500 IOPS e taxa de transferência de 250 MB/s para esse disco. Seu aplicativo pode usar toda ou parte da capacidade e do desempenho. Premium SSD disks are designed to provide low single-digit millisecond latencies and target IOPS and throughput described in the preceding table 99.9% of the time.

While the above table identifies max IOPS per disk, a higher level of performance can be achieved by striping multiple data disks. Por exemplo, 64 discos de dados podem ser conectados a Standard_GS5 VM. Se cada um desses discos for dimensionado como um P30, um máximo de 80.000 IOPS pode ser alcançado. Para obter informações detalhadas sobre IOPS máximos por VM, consulte Tipos e tamanhos de VM.

Launch Azure Cloud Shell

O Azure Cloud Shell é um shell interativo gratuito que você pode usar para executar as etapas neste artigo. Tem ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.

Para abrir o Cloud Shell, selecione Experimente no canto superior direito de um bloco de código. Você também pode iniciar o Cloud Shell em uma guia separada do navegador acessando https://shell.azure.com/powershell. Selecione Copiar para copiar os blocos de código, cole-o no Cloud Shell e prima Enter para executá-lo.

Criar e anexar discos

Os discos de dados podem ser criados e anexados no momento da criação da VM ou a uma VM existente.

Anexar disco na criação da VM

Crie um grupo de recursos com o comando az group create.

az group create --name myResourceGroupDisk --___location eastus

Crie uma VM usando o comando az vm create . O exemplo a seguir cria uma VM chamada myVM, adiciona uma conta de usuário chamada azureuser e gera chaves SSH se elas não existirem. O --datadisk-sizes-gb argumento é usado para especificar que um disco adicional deve ser criado e anexado à máquina virtual. Para criar e anexar mais de um disco, use uma lista delimitada por espaço de valores de tamanho de disco. No exemplo a seguir, uma VM é criada com dois discos de dados, ambos de 128 GB. Como os tamanhos de disco são de 128 GB, esses discos são configurados como P10s, que fornecem no máximo 500 IOPS por disco.

az vm create \
  --resource-group myResourceGroupDisk \
  --name myVM \
  --image Ubuntu2204 \
  --size Standard_DS2_v2 \
  --admin-username azureuser \
  --generate-ssh-keys \
  --data-disk-sizes-gb 128 128

Anexar disco à VM existente

Para criar e anexar um novo disco a uma máquina virtual existente, use o comando az vm disk attach . O exemplo a seguir cria um disco premium, com 128 gigabytes de tamanho, e o anexa à VM criada na última etapa.

az vm disk attach \
    --resource-group myResourceGroupDisk \
    --vm-name myVM \
    --name myDataDisk \
    --size-gb 128 \
    --sku Premium_LRS \
    --new

Preparar discos de dados

Depois que um disco for conectado à máquina virtual, o sistema operacional precisará ser configurado para usar o disco. O exemplo a seguir mostra como configurar manualmente um disco. Esse processo também pode ser automatizado usando o cloud-init, que é abordado em um tutorial posterior.

Crie uma conexão SSH com a máquina virtual. Substitua o endereço IP de exemplo pelo IP público da máquina virtual.

ssh azureuser@10.101.10.10

Particione o disco com parted.

sudo parted /dev/sdc --script mklabel gpt mkpart xfspart xfs 0% 100%

Escreva um sistema de arquivos na partição usando o mkfs comando. Use partprobe para conscientizar o sistema operacional sobre a alteração.

sudo mkfs.xfs /dev/sdc1
sudo partprobe /dev/sdc1

Monte o novo disco para que ele esteja acessível no sistema operacional.

sudo mkdir /datadrive && sudo mount /dev/sdc1 /datadrive

O disco agora pode ser acedido através do ponto de montagem /datadrive, o que pode ser verificado executando o comando df -h.

df -h | grep -i "sd"

The output shows the new drive mounted on /datadrive.

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        29G  2.0G   27G   7% /
/dev/sda15      105M  3.6M  101M   4% /boot/efi
/dev/sdb1        14G   41M   13G   1% /mnt
/dev/sdc1        50G   52M   47G   1% /datadrive

Para garantir que a unidade seja remontada após uma reinicialização, ela deve ser adicionada ao arquivo /etc/fstab . Para fazer isso, obtenha o UUID do disco com o blkid utilitário.

sudo -i blkid

A saída exibe o UUID da unidade, /dev/sdc1 neste caso.

/dev/sdc1: UUID="33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e" TYPE="xfs"

Observação

A edição incorreta do arquivo /etc/fstab pode resultar em um sistema não inicializável. Se não tiver a certeza, consulte a documentação de distribuição para obter mais informações sobre como editar corretamente este ficheiro. Também é recomendável que um backup do arquivo /etc/fstab seja criado antes da edição.

Abra o /etc/fstab arquivo em um editor de texto da seguinte maneira:

sudo nano /etc/fstab

Adicione uma linha semelhante à seguinte ao arquivo /etc/fstab , substituindo o valor UUID pelo seu próprio.

UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive  xfs    defaults,nofail   1  2

Quando terminar de editar o arquivo, use Ctrl+O para gravar o arquivo e Ctrl+X sair do editor.

Agora que o disco foi configurado, feche a sessão SSH.

exit

Tirar um instantâneo do disco

When you take a disk snapshot, Azure creates a read only, point-in-time copy of the disk. Os instantâneos de VM do Azure são úteis para salvar rapidamente o estado de uma VM antes de fazer alterações de configuração. In the event of an issue or error, VM can be restored using a snapshot. Quando uma VM tem mais de um disco, é tirado um instantâneo de cada disco de forma independente dos outros. To take application consistent backups, consider stopping the VM before you take disk snapshots. Como alternativa, use o serviço de Backup do Azure, que permite executar backups automatizados enquanto a VM está em execução.

Create snapshot

Antes de criar um instantâneo, você precisa do ID ou nome do disco. Use az vm show para mostrar o ID do disco. Neste exemplo, o ID do disco é armazenado em uma variável para que possa ser usado em uma etapa posterior.

osdiskid=$(az vm show \
   -g myResourceGroupDisk \
   -n myVM \
   --query "storageProfile.osDisk.managedDisk.id" \
   -o tsv)

Agora que você tem o ID, use az snapshot create para criar um snapshot do disco.

az snapshot create \
    --resource-group myResourceGroupDisk \
    --source "$osdiskid" \
    --name osDisk-backup

Create disk from snapshot

Esse instantâneo pode ser convertido em um disco usando az disk create, que pode ser usado para recriar a máquina virtual.

az disk create \
   --resource-group myResourceGroupDisk \
   --name mySnapshotDisk \
   --source osDisk-backup

Restore virtual machine from snapshot

Para demonstrar a recuperação da máquina virtual, exclua a máquina virtual existente usando az vm delete.

az vm delete \
--resource-group myResourceGroupDisk \
--name myVM

Crie uma nova máquina virtual a partir do disco de snapshot.

az vm create \
    --resource-group myResourceGroupDisk \
    --name myVM \
    --attach-os-disk mySnapshotDisk \
    --os-type linux

Reanexar disco de dados

Todos os discos de dados precisam ser reanexados à máquina virtual.

Localize o nome do disco de dados usando o comando az disk list . Este exemplo coloca o nome do disco em uma variável chamada datadisk, que é usada na próxima etapa.

datadisk=$(az disk list \
   -g myResourceGroupDisk \
   --query "[?contains(name,'myVM')].[id]" \
   -o tsv)

Use o comando az vm disk attach para anexar o disco.

az vm disk attach \
   –g myResourceGroupDisk \
   --vm-name myVM \
   --name $datadisk

Próximos passos

Neste tutorial, você aprendeu sobre os tópicos de discos VM, como:

  • Discos de SO e discos temporários
  • Discos de dados
  • Discos Standard e Premium
  • Desempenho do disco
  • Anexar e preparar os discos de dados
  • Instantâneos de disco

Avance para o próximo tutorial para saber mais sobre como automatizar a configuração da VM.