Use o portal para ligar um disco de dados a uma VM Linux

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

Este artigo mostra como anexar discos novos e existentes a uma máquina virtual Linux por meio do portal do Azure. Você também pode anexar um disco de dados a uma VM do Windows no portal do Azure.

Encontre a VM Linux no portal Azure

Siga estes passos:

  1. Vá para o portal do Azure para localizar a VM. Procure e selecione Máquinas Virtuais.

  2. Selecione a VM à qual deseja anexar o disco na lista.

  3. Na página Máquinas virtuais , em Configurações, selecione Discos.

Anexe um novo disco de dados gerido no portal do Azure

Siga estes passos:

  1. No painel Discos , em Discos de dados, selecione Criar e anexar um novo disco.

  2. Introduza um nome para o disco gerido. Revise as configurações padrão e atualize o tipo de armazenamento, tamanho (GiB),criptografia e cache de host conforme necessário.

    Captura de ecrã do painel de discos de dados do portal Azure mostrando o LUN, nome do disco, tipo de armazenamento, tamanho, encriptação e definições de cache do host para um novo disco gerido.

  3. Quando terminar, selecione Salvar na parte superior da página para criar o disco gerenciado e atualizar a configuração da VM.

Anexe um disco de dados gerido existente no portal do Azure

Siga estes passos:

  1. No painel Discos , em Discos de dados, selecione Anexar discos existentes.

  2. Selecione o menu suspenso para Nome do disco e selecione um disco na lista de discos gerenciados disponíveis.

  3. Selecione Guardar para ligar o disco gerido existente e atualizar a configuração da VM.

Ligue-se à VM Linux para montar o novo disco

Para particionar, formatar e montar seu novo disco para que sua VM Linux possa usá-lo, SSH em sua VM. Para obter mais informações, veja como utilizar SSH com Linux no Azure. O exemplo a seguir liga-se a uma VM com o endereço IP público de 10.123.123.25 com o nome de utilizador azureuser:

ssh azureuser@10.123.123.25

Encontre o disco de dados ligado no Linux

As VMs Linux do Azure podem expor discos geridos através de controladores SCSI ou NVMe. Selecione o tipo de controlador que a sua VM utiliza. Para detalhes sobre os tipos de controladores, veja conversão de SCSI para NVMe.

Use lsblk para listar discos numa VM com um controlador SCSI:

lsblk -o NAME,HCTL,SIZE,MOUNTPOINT | grep -i "sd"

O resultado é semelhante ao seguinte exemplo:

sda     0:0:0:0      30G
├─sda1             29.9G /
├─sda14               4M
└─sda15             106M /boot/efi
sdb     1:0:1:0      14G
└─sdb1               14G /mnt
sdc     3:0:0:0       4G

Neste exemplo, o disco que adicionou é sdc. Utiliza LUN 0 e tem uma capacidade de 4 GiB.

Para um exemplo mais complexo, veja a aparência de vários discos de dados no portal:

Captura de ecrã de três discos de dados geridos pelo Azure: um SSD Premium de 4 GiB a LUN 0, um SSD Premium de 16 GiB a LUN 1 e um HDD Standard de 32 GiB a LUN 2.

Na imagem, pode ver três discos de dados: 4 GiB no LUN 0, 16 GiB no LUN 1 e 32 GiB no LUN 2.

A partir da saída de lsblk, pode-se ver que o disco de 4 GiB em LUN 0 é sdc, o disco de 16 GiB em LUN 1 é sdd, e o disco de 32 GiB em LUN 2 é sde.

sda     0:0:0:0      30G
├─sda1             29.9G /
├─sda14               4M
└─sda15             106M /boot/efi
sdb     1:0:1:0      14G
└─sdb1               14G /mnt
sdc     3:0:0:0       4G
sdd     3:0:0:1      16G
sde     3:0:0:2      32G

Preparar um novo disco de dados vazio no Linux

Importante

Se estiver a utilizar um disco existente que contenha dados, avance para a montagem do disco. As instruções a seguir excluem dados no disco. Verifica se identificaste o disco correto antes de o formatares.

Se você estiver anexando um novo disco, precisará particioná-lo.

Use a parted utilitária para particionar um disco de dados e mkfs.xfs formatar a partição com o sistema de ficheiros XFS.

  • Utilize a versão mais recente de parted disponível para a sua distribuição.
  • Se o tamanho do disco for 2 tebibytes (TiB) ou maior, você deverá usar o particionamento GPT. Se o tamanho do disco estiver abaixo de 2 TiB, você poderá usar o particionamento MBR ou GPT.

O exemplo a seguir usa parted em /dev/sdc, que é onde o primeiro disco de dados normalmente está na maioria das VMs. Substitua sdc pela opção correta para o disco. O exemplo formata a partição usando o sistema de ficheiros XFS .

sudo parted /dev/sdc --script mklabel gpt mkpart xfspart xfs 0% 100%
sudo partprobe /dev/sdc
sudo mkfs.xfs /dev/sdc1

Use a partprobe utilidade para garantir que o kernel reconhece a nova tabela de partições. Se não usares partprobe, os blkid comandos ou lsblk podem não devolver o UUID para o novo sistema de ficheiros imediatamente.

Montar o disco de dados no Linux

Crie um diretório para montar o sistema de ficheiros usando mkdir:

sudo mkdir /datadrive

Use mount para montar o sistema de arquivos.

Substitua /dev/sdc1 pela partição do disco de dados que identificou na VM com um controlador SCSI.

sudo mount /dev/sdc1 /datadrive

Adicione o disco ao ficheiro /etc/fstab para garantir que o disco é adicionado automaticamente após um reinicio.

Certifique-se de que o UUID (Identificador Universalmente Único) é usado em /etc/fstab para se referir à unidade em vez de um nome de dispositivo, como /dev/sdc1 ou /dev/nvme0n2p1. Se o SO detetar um erro do disco durante o arranque, ao utilizar o UUID evitará que o disco incorreto seja montado numa determinada localização. Os restantes discos de dados serão, em seguida, atribuídos aos mesmos IDs de dispositivos. Para encontrar o UUID da nova unidade de disco, utilize o utilitário blkid.

sudo blkid

A saída seguinte é de uma VM com um controlador SCSI. Numa VM com controlador NVMe, a partição de disco de dados gerida aparece como um caminho NVMe, como em /dev/nvme0n2p1 vez de /dev/sdc1.

/dev/sda1: LABEL="cloudimg-rootfs" UUID="11111111-1b1b-1c1c-1d1d-1e1e1e1e1e1e" TYPE="ext4" PARTUUID="1a1b1c1d-11aa-1234-1a1a1a1a1a1a"
/dev/sda15: LABEL="UEFI" UUID="BCD7-96A6" TYPE="vfat" PARTUUID="1e1g1cg1h-11aa-1234-1u1u1a1a1u1u"
/dev/sdb1: UUID="22222222-2b2b-2c2c-2d2d-2e2e2e2e2e2e" TYPE="ext4" PARTUUID="1a2b3c4d-01"
/dev/sda14: PARTUUID="2e2g2cg2h-11aa-1234-1u1u1a1a1u1u"
/dev/sdc1: UUID="33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e" TYPE="xfs" PARTLABEL="xfspart" PARTUUID="c1c2c3c4-1234-cdef-asdf3456ghjk"

Configurar montagem automática em /etc/fstab

Note

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. Você deve criar um backup do arquivo /etc/fstab antes de editar.

Em seguida, abra o arquivo /etc/fstab em um editor de texto. Adicione uma linha ao final do ficheiro, usando o valor UUID para a partição que criou nos passos anteriores, e o ponto de montagem de /datadrive. Se você usou o exemplo deste artigo, a nova linha seria semelhante ao exemplo a seguir.

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

Quando terminar de editar o arquivo, salve e feche o editor.

Note

Mais tarde, remover um disco de dados sem editar o fstab pode fazer com que a VM falhe ao inicializar. A maioria das distribuições fornece as opções fstab nofail e/ou nobootwait. Essas opções permitem que um sistema inicialize mesmo que o disco não seja montado no momento da inicialização. Consulte a documentação da sua distribuição para obter mais informações sobre esses parâmetros.

A opção de nofail garante que a VM arranca mesmo que o sistema de ficheiros esteja corrompido ou que o disco não exista no momento de arranque. Sem essa opção, você pode encontrar o comportamento descrito em Não é possível SSH para Linux VM devido a erros FSTAB

Verificar o disco de dados montado no Linux

Use lsblk novamente para verificar se o disco de dados está montado em /datadrive.

lsblk -o NAME,HCTL,SIZE,MOUNTPOINT | grep -i "sd"
sda     0:0:0:0      30G
├─sda1             29.9G /
├─sda14               4M
└─sda15             106M /boot/efi
sdb     1:0:1:0      14G
└─sdb1               14G /mnt
sdc     3:0:0:0       4G
└─sdc1                4G /datadrive

Suporte TRIM/UNMAP para Linux no Azure

Alguns kernels Linux suportam operações TRIM/UNMAP para descartar blocos não utilizados no disco. Esse recurso é principalmente útil para informar o Azure de que as páginas excluídas não são mais válidas e podem ser descartadas. Esse recurso pode economizar dinheiro em discos que são cobrados com base na quantidade de armazenamento consumido, como discos padrão não gerenciados e instantâneos de disco.

Há duas maneiras de habilitar o suporte a TRIM em sua VM Linux. Como de costume, consulte sua distribuição para obter a abordagem recomendada:

  1. Utilize a opção de montagem discard em /etc/fstab, por exemplo:

    UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive   xfs   defaults,discard   1   2
    
  2. Em alguns casos, a discard opção pode ter implicações no desempenho. Como alternativa, você pode executar o fstrim comando manualmente a partir da linha de comando ou adicioná-lo ao seu crontab para ser executado regularmente:

    Ubuntu

    sudo apt-get install util-linux
    sudo fstrim /datadrive
    

    RHEL

    sudo yum install util-linux
    sudo fstrim /datadrive
    

    SUSE

    sudo zypper install util-linux
    sudo fstrim /datadrive