Tutorial - Gerir discos do Azure com a CLI do AzureTutorial - Manage Azure disks with the Azure CLI

As máquinas virtuais (VMs) do Azure utilizam discos para armazenar o sistema operativo, as aplicações e os dados.Azure virtual machines (VMs) use disks to store the operating system, applications, and data. Quando você cria uma VM, é importante escolher um tamanho de disco e uma configuração apropriada para a carga de trabalho esperada.When you create a VM, it is important to choose a disk size and configuration appropriate to the expected workload. Este tutorial mostra como implementar e gerir discos de VM.This tutorial shows you how to deploy and manage VM disks. Vai obter informações sobre:You learn about:

  • Discos de SO e discos temporáriosOS disks and temporary disks
  • Discos de dadosData disks
  • Discos Standard e PremiumStandard and Premium disks
  • Desempenho do discoDisk performance
  • Expor e preparar os discos de dadosAttaching and preparing data disks
  • Redimensionar discosResizing disks
  • Instantâneos de discoDisk snapshots

Discos do Azure predefinidosDefault Azure disks

Quando uma máquina virtual do Azure é criada, dois discos são automaticamente expostos à máquina virtual.When an Azure virtual machine is created, two disks are automatically attached to the virtual machine.

Disco do sistema operativo – os discos do sistema operativo podem ter o tamanho máximo de 2 TB e alojam o sistema operativo das VMs.Operating system disk - Operating system disks can be sized up to 2 TB, and hosts the VMs operating system. O disco do SO está identificado como /dev/sda por predefinição.The OS disk is labeled /dev/sda by default. A configuração da colocação em cache do disco do SO está otimizada para desempenho do SO.The disk caching configuration of the OS disk is optimized for OS performance. Devido a esta configuração, o disco do SO não deve ser utilizado para aplicações nem para dados.Because of this configuration, the OS disk should not be used for applications or data. Para aplicações e dados, utilize discos de dados, que são descritos posteriormente neste tutorial.For applications and data, use data disks, which are detailed later in this tutorial.

Disco temporário - os discos temporários utilizam uma unidade de estado sólido que está localizada no mesmo anfitrião da VM do Azure.Temporary disk - Temporary disks use a solid-state drive that is located on the same Azure host as the VM. Os discos temporários são de elevado desempenho e servem para operações como o processamento de dados temporários.Temp disks are highly performant and may be used for operations such as temporary data processing. No entanto, se a VM for movida para um novo anfitrião, todos os dados armazenados num disco temporário são removidos.However, if the VM is moved to a new host, any data stored on a temporary disk is removed. O tamanho do disco temporário é determinado pelo tamanho da VM.The size of the temporary disk is determined by the VM size. Os discos temporários estão identificados como /dev/sdb e têm um ponto de montagem de /mnt.Temporary disks are labeled /dev/sdb and have a mountpoint of /mnt.

Discos de dados do AzureAzure data disks

Para instalar aplicações e armazenar dados, podem ser adicionados mais discos de dados.To install applications and store data, additional data disks can be added. Os discos de dados devem ser utilizados em qualquer situação em que se pretenda armazenamento de dados duradouro e reativo.Data disks should be used in any situation where durable and responsive data storage is desired. O tamanho da máquina virtual determina quantos discos de dados podem ser expostos a uma VM.The size of the virtual machine determines how many data disks can be attached to a VM. Para cada vCPU de VM, podem ser expostos quatro discos de dados.For each VM vCPU, four data disks can be attached.

Tipos de disco de VMVM disk types

O Azure fornece dois tipos de discos, Standard e Premium.Azure provides two types of disks, standard and Premium.

Disco StandardStandard disk

O Armazenamento Standard está protegido por HDDs e fornece armazenamento económico, mantendo o desempenho.Standard Storage is backed by HDDs, and delivers cost-effective storage while still being performant. Os discos Standard são ideais para uma carga de trabalho de desenvolvimento e teste económica.Standard disks are ideal for a cost effective dev and test workload.

Disco PremiumPremium disk

Os discos Premium são apoiados por um disco de elevado desempenho baseado em SSD e de baixa latência.Premium disks are backed by SSD-based high-performance, low-latency disk. São perfeitos para as VMs com carga de trabalho de produção.Perfect for VMs running production workload. O Armazenamento Premium suporta VMs da série DS, série DSv2, série GS e série FS.Premium Storage supports DS-series, DSv2-series, GS-series, and FS-series VMs. Quando selecionar um tamanho de disco, o valor é arredondado para o tipo seguinte.When you select a disk size, the value is rounded up to the next type. Por exemplo, se o tamanho do disco for inferior a 128 GB, o tipo de disco é P10.For example, if the disk size is less than 128 GB, the disk type is P10. Se o tamanho do disco estiver entre 129 GB e 512 GB, o tamanho é P20.If the disk size is between 129 GB and 512 GB, the size is a P20. Acima de 512 GB, o tamanho é P30.Over, 512 GB, the size is a P30.

Desempenho do disco PremiumPremium disk performance

Tamanhos de SSD PremiumPremium SSD sizes  P1P1* P2P2* P3P3* P4P4 P6P6 P10P10 P15P15 P20P20 P30P30 P40P40 P50P50 P60P60 P70P70 P80P80
Tamanho do disco em GiBDisk size in GiB 44 88 1616 3232 6464 128128 256256 512512 1,0241,024 2.0482,048 4.0964,096 8,1928,192 16.38416,384 32.76732,767
IOPs por discoIOPS per disk 120120 120120 120120 120120 240240 500500 1.1001,100 2,3002,300 5.0005,000 7,5007,500 7,5007,500 16,00016,000 18.00018,000 20,00020,000
Débito por discoThroughput per disk 25 MiB/s25 MiB/sec 25 MiB/s25 MiB/sec 25 MiB/s25 MiB/sec 25 MiB/s25 MiB/sec 50 MiB/s50 MiB/sec 100 MiB/s100 MiB/sec 125 MiB/s125 MiB/sec 150 MiB/s150 MiB/sec 200 MiB/s200 MiB/sec 250 MiB/s250 MiB/sec 250 MiB/s250 MiB/sec 500 MiB/s500 MiB/sec 750 MiB/s750 MiB/sec 900 MiB/s900 MiB/sec
IOPS de intermitência máxima por disco * *Max burst IOPS per disk** 3.5003,500 3.5003,500 3.5003,500 3.5003,500 3.5003,500 3.5003,500 3.5003,500 3.5003,500
Taxa de transferência máxima de intermitência por disco * *Max burst throughput per disk** 170 MiB/s170 MiB/sec 170 MiB/s170 MiB/sec 170 MiB/s170 MiB/sec 170 MiB/s170 MiB/sec 170 MiB/s170 MiB/sec 170 MiB/s170 MiB/sec 170 MiB/s170 MiB/sec 170 MiB/s170 MiB/sec
Duração máxima de intermitência * *Max burst duration** 30 min30 min 30 min30 min 30 min30 min 30 min30 min 30 min30 min 30 min30 min 30 min30 min 30 min30 min

*denota um tamanho de disco que está em visualização no momento, para obter informações de disponibilidade regional, consulte novos tamanhos de disco: gerenciados e não gerenciados.*Denotes a disk size that is currently in preview, for regional availability information see New disk sizes: Managed and unmanaged.

** denota um recurso que está atualmente em versão prévia, consulte intermitência de disco para obter mais informações.**Denotes a feature that is currently in preview, see Disk bursting for more information.

Enquanto a tabela acima identifica o IOPS máximo por disco, um nível mais elevado de desempenho pode ser alcançado ao repartir vários discos de dados.While the above table identifies max IOPS per disk, a higher level of performance can be achieved by striping multiple data disks. Por exemplo, uma VM Standard_GS5 pode atingir o máximo de 80 000 IOPS.For instance, a Standard_GS5 VM can achieve a maximum of 80,000 IOPS. Para obter informações detalhadas sobre o IOPS máximo por VM, consulte Tamanhos de VM do Linux.For detailed information on max IOPS per VM, see Linux VM sizes.

Iniciar o Azure Cloud ShellLaunch Azure Cloud Shell

Azure Cloud Shell é um shell interativo gratuito que você pode usar para executar as etapas neste artigo.Azure Cloud Shell is a free interactive shell that you can use to run the steps in this article. Tem as ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.It has common Azure tools preinstalled and configured to use with your account.

Para abrir Cloud Shell, selecione experimentar no canto superior direito de um bloco de código.To open Cloud Shell, select Try it from the upper right corner of a code block. Também pode iniciar o Cloud Shell num separador do browser separado ao aceder a https://shell.azure.com/powershell.You can also launch Cloud Shell in a separate browser tab by going to 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.Select Copy to copy the blocks of code, paste it into the Cloud Shell, and press enter to run it.

Criar e anexar discosCreate and attach disks

Os discos de dados podem ser criados e expostos no momento de criação da VM ou para uma VM existente.Data disks can be created and attached at VM creation time or to an existing VM.

Expor o disco durante a criação de VMAttach disk at VM creation

Crie um grupo de recursos com o comando az group create.Create a resource group with the az group create command.

az group create --name myResourceGroupDisk --location eastus

Crie uma VM com o comando z vm create.Create a VM using the az vm create command. O seguinte exemplo cria uma VM com o nome myVM, adiciona uma conta de utilizador com o nome azureuser e gera chaves SSH, caso não existam.The following example creates a VM named myVM, adds a user account named azureuser, and generates SSH keys if they do not exist. O argumento --datadisk-sizes-gb é utilizado para especificar que um disco adicional deve ser criado e exposto à máquina virtual.The --datadisk-sizes-gb argument is used to specify that an additional disk should be created and attached to the virtual machine. Para criar e expor mais do que um disco, utilize uma lista delimitada por espaços dos valores de tamanho de disco.To create and attach more than one disk, use a space-delimited list of disk size values. No exemplo seguinte, é criada uma VM com dois discos de dados, ambos de 128 GB.In the following example, a VM is created with two data disks, both 128 GB. Porque os tamanhos de disco são de 128 GB, estes discos são configurados como P10s, que fornecem o máximo de 500 IOPS por disco.Because the disk sizes are 128 GB, these disks are both configured as P10s, which provide maximum 500 IOPS per disk.

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

Expor o disco a uma VM existenteAttach disk to existing VM

Para criar e expor um disco novo a uma máquina virtual existente, utilize o comando az vm disk attach.To create and attach a new disk to an existing virtual machine, use the az vm disk attach command. O exemplo seguinte cria um disco premium, de 128 gigabytes de tamanho, e expõe-o à VM criada no último passo.The following example creates a premium disk, 128 gigabytes in size, and attaches it to the VM created in the last step.

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

Preparar discos de dadosPrepare data disks

Depois de um disco ser exposto à máquina virtual, o sistema operativo tem de ser configurado para utilizar o disco.Once a disk has been attached to the virtual machine, the operating system needs to be configured to use the disk. O exemplo seguinte mostra como configurar manualmente um disco.The following example shows how to manually configure a disk. Este processo também pode ser automatizado através da inicialização da cloud, que é abordada num tutorial posterior.This process can also be automated using cloud-init, which is covered in a later tutorial.

Crie uma ligação SSH com a máquina virtual.Create an SSH connection with the virtual machine. Substitua o endereço IP de exemplo pelo IP público da máquina virtual.Replace the example IP address with the public IP of the virtual machine.

ssh 10.101.10.10

Particione o disco com fdisk.Partition the disk with fdisk.

(echo n; echo p; echo 1; echo ; echo ; echo w) | sudo fdisk /dev/sdc

Escreva um sistema de ficheiros na partição com o comando mkfs.Write a file system to the partition by using the mkfs command.

sudo mkfs -t ext4 /dev/sdc1

Monte o disco novo para que fique acessível no sistema operativo.Mount the new disk so that it is accessible in the operating system.

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

O disco pode agora ser acedido através do ponto de montagem datadrive, que pode ser verificado com o comando df -h.The disk can now be accessed through the datadrive mountpoint, which can be verified by running the df -h command.

df -h

A saída mostra o novo disco montado em /datadrive.The output shows the new drive mounted on /datadrive.

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        30G  1.4G   28G   5% /
/dev/sdb1       6.8G   16M  6.4G   1% /mnt
/dev/sdc1        50G   52M   47G   1% /datadrive

Para garantir que a unidade é remontada após uma reinicialização, tem de ser adicionada ao ficheiro etc/fstab.To ensure that the drive is remounted after a reboot, it must be added to the /etc/fstab file. Para tal, obtenha o UUID do disco com o utilitário blkid.To do so, get the UUID of the disk with the blkid utility.

sudo -i blkid

A saída apresenta o UUID da unidade, /dev/sdc1 neste caso.The output displays the UUID of the drive, /dev/sdc1 in this case.

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

Adicione uma linha semelhante à seguinte ao ficheiro etc/fstab.Add a line similar to the following to the /etc/fstab file.

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

Agora que o disco foi configurado, feche a sessão SSH.Now that the disk has been configured, close the SSH session.

exit

Tirar um instantâneo do discoTake a disk snapshot

Quando tira um instantâneo de disco, o Azure cria uma cópia só de leitura de um ponto no tempo 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 guardar rapidamente o estado de uma VM antes de efetuar alterações de configuração.Azure VM snapshots are useful to quickly save the state of a VM before you make configuration changes. No caso de um problema ou erro, a VM pode ser restaurada usando um instantâneo.In the event of an issue or error, VM can be restored using a snapshot. Quando uma VM tiver mais do que um disco, é tirado um instantâneo de cada disco independentemente dos outros.When a VM has more than one disk, a snapshot is taken of each disk independently of the others. Para fazer cópias de segurança da aplicação, considere parar a VM antes de tirar instantâneos do disco.To take application consistent backups, consider stopping the VM before you take disk snapshots. Em alternativa, utilize o Serviço Azure Backup, que permite efetuar cópias de segurança automatizadas enquanto a VM está em execução.Alternatively, use the Azure Backup service, which enables you to perform automated backups while the VM is running.

Criar instantâneoCreate snapshot

Antes de criar um instantâneo do disco da máquina virtual, é necessário o ID ou o nome do disco.Before you create a virtual machine disk snapshot, the ID or name of the disk is needed. Utilize o comando az vm show para obter o ID do disco.Use the az vm show command to return the disk ID. Neste exemplo, o ID do disco é armazenado numa variável, para que possa ser utilizado num passo posterior.In this example, the disk ID is stored in a variable so that it can be used in a later step.

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

Agora que tem o ID do disco da máquina virtual, o comando seguinte cria um instantâneo do disco.Now that you have the ID of the virtual machine disk, the following command creates a snapshot of the disk.

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

Criar disco a partir de instantâneoCreate disk from snapshot

Este instantâneo pode então ser convertido num disco, que pode ser utilizado para recriar a máquina virtual.This snapshot can then be converted into a disk, which can be used to recreate the virtual machine.

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

Restaurar a máquina virtual a partir de instantâneoRestore virtual machine from snapshot

Para demonstrar a recuperação da máquina virtual, elimine a máquina virtual existente.To demonstrate virtual machine recovery, delete the existing virtual machine.

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

Crie uma máquina virtual nova a partir do disco do instantâneo.Create a new virtual machine from the snapshot disk.

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

Voltar a expor disco de dadosReattach data disk

Todos os discos de dados têm de ser novamente expostos à máquina virtual.All data disks need to be reattached to the virtual machine.

Em primeiro lugar, localize o nome do disco de dados com o comando az disk list.First find the data disk name using the az disk list command. Este exemplo coloca o nome do disco numa variável designada datadisk, que é utilizada no próximo passo.This example places the name of the disk in a variable named datadisk, which is used in the next step.

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

Utilize o comando az vm disk attach para expor o disco.Use the az vm disk attach command to attach the disk.

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

Passos seguintesNext steps

Neste tutorial, aprendeu sobre os tópicos de discos de VM, como:In this tutorial, you learned about VM disks topics such as:

  • Discos de SO e discos temporáriosOS disks and temporary disks
  • Discos de dadosData disks
  • Discos Standard e PremiumStandard and Premium disks
  • Desempenho do discoDisk performance
  • Expor e preparar os discos de dadosAttaching and preparing data disks
  • Redimensionar discosResizing disks
  • Instantâneos de discoDisk snapshots

Avance para o próximo tutorial para saber mais sobre como automatizar a configuração da VM.Advance to the next tutorial to learn about automating VM configuration.