Como faço para criar um volume lógico LVM em uma partição criada em um volume EBS?
Como posso usar o Logical Volume Manager (LVM) para criar um volume lógico (LV) em uma partição criada no meu volume Amazon Elastic Block Store (Amazon EBS)?
Breve descrição
O LVM permite alocar espaço em disco, remover, espelhar novamente e redimensionar volumes lógicos. Usando o LVM, você pode alocar um volume do EBS ou um conjunto de volumes do EBS para um ou mais volumes físicos.
Para usar o LVM em seu volume do EBS e estender as partições, siga as estas:
- Crie volumes físicos (PV) a partir do seu volume do EBS.
- Crie um grupo de volume (VG) e, em seguida, adicione os volumes físicos ao grupo de volumes.
- Crie um volume lógico (LV) e, em seguida, monte o diretório no LVM.
- Crie e monte um sistema de arquivos.
- Redimensione o volume lógico.
Solução
Observação: Se você já criou o LVM em seu volume, e o montou para uso, siga as instruções que começam em Estender o volume lógico.
Crie volumes físicos na partição do seu volume do EBS
A unidade de armazenamento físico subjacente de um volume lógico LVM é um dispositivo de bloco, como uma partição de um volume EBS ou um volume EBS inteiro.
Observação: as instâncias baseadas em Nitro expõem volumes como dispositivos NVMe. Os nomes dos dispositivos de blocos seguem o padrão /dev/nvme1n1, /dev/nvme2n1, /dev/nvme3n1 e assim por diante. Se você estiver usando uma instância baseada em Nitro, substitua os nomes dos dispositivos nas etapas a seguir pelo nome do dispositivo apropriado. Para obter mais informações sobre a nomenclatura de dispositivos, consulteNomes de dispositivos em instâncias Linux.
1. Abra o console do Amazon Elastic Compute Cloud (Amazon EC2).
2. Crie seu volume do EBS e, em seguida, conecte o volume à sua instância.
3. Use o comando gdisk para criar uma partição. Para a variável Código Hex ou GUID, insira 8e00. O exemplo a seguir cria a partição /dev/xvdh1 em /dev/xvdh.
$ sudo gdisk /dev/xvdh Command (? for help): n Partition number (1-1218, default 1): 1 First sector (34-20971486, default = 2048) or {+-}size{KMGTP}: Last sector (2048-20971486, default = 20971486) or {+-}size{KMGTP}: Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): 8e00 Changed type of partition to 'Linux LVM' ... OK; writing new GUID partition table (GPT) to /dev/xvdh. The operation has completed successfully.
Use o comando lsblk para confirmar a criação da partição:
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk └─xvda1 202:1 0 8G 0 part / xvdh 202:80 0 10G 0 disk └─xvdh1 202:81 0 10G 0 part
4. Use o comando pvcreate para criar um volume físico a partir da partição. O exemplo a seguir cria um volume físico a partir de /dev/xvdh1:
$ sudo pvcreate /dev/xvdh1 Physical volume "/dev/xvdh1" successfully created.
Crie grupos de volumes e adicione os volumes físicos ao grupo de volumes
Use o comando vgcreate para criar um grupo de volumes para combinar os novos volumes físicos. O exemplo a seguir usa um volume físico para criar o grupo de volumes examplegroup1:
$ sudo vgcreate examplegroup1 /dev/xvdh1 Volume group "examplegroup1" successfully created
Use vgs ou vgdisplay para ver os detalhes do grupo de volume:
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 1 0 0 wz--n- <10.00g <10.00g
Crie um volume lógico (LV) e um diretório de montagem
1. Use o comando lvcreate para criar volumes lógicos (partições) do seu grupo de volumes. O exemplo a seguir cria um volume lógico de 9 GB, lvexample1 do grupo de volumes examplegroup1:
$ sudo lvcreate -n lvexample1 -L 9G examplegroup1 Logical volume "lvexample1" created
Use o comando lvs ou lvdisplay para ver os detalhes do volume lógico:
$ sudo lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvexample1 examplegroup1 -wi-a----- 9.00g
2. Use o comando mkdir para criar um diretório de montagem. O exemplo a seguir cria o diretório /mnt1:
$ sudo mkdir /mnt1
Criar e montar um sistema de arquivos
1. Use os comandos a seguir para criar um sistema de arquivos e montar as partições para uso.
Execute o comando mkfs -t para criar o sistema de arquivos. Observação: substitua o xfs pelo seu tipo de sistema de arquivos, se for diferente. Por exemplo, use ext2, ext3 ou ext4.
$ sudo mkfs -t xfs /dev/examplegroup1/lvexample1
Execute o comando lsblk -f para verificar a criação do novo sistema de arquivos. Observação: o tipo de sistema de arquivos que você criou na etapa anterior aparece em FSTYPE.
$ lsblk -f NAME FSTYPE LABEL UUID MOUNTPOINT xvda ├─xvda1 └─xvda2 xfs 66e5e079-770e-4359-a9da-5205c3d8d5af / xvdh └─xvdh1 LVM2_member 0UnOic-e2ng-XxH5-z0UW-7aTh-RxQK-KMrDqo └─examplegroup1-lvexample1 xfs 5db36052-81d5-4762-8502-6986ff3964e7
Execute o comando mount para montar o sistema de arquivos no diretório mount que você criou na etapa anterior:
$ sudo mount /dev/examplegroup1/lvexample1 /mnt1
2. Edite as opções de montagem no arquivo /etc/fstab para que a nova montagem seja aplicada após a reinicialização.
/dev/examplegroup1/lvexample1 /mnt1 xfs defaults,nofail 0 0
Observação: Se o tipo do seu sistema de arquivos não forxfs, substitua oxfs pelo tipo de arquivo no /etc/fstab .
Estenda o volume lógico
Há duas opções para estender os volumes lógicos:
- Opção 1: Aumente o tamanho do volume existente do EBS.
- Opção 2: Adicione mais volumes do EBS ao seu grupo de volumes.
Opção 1: Aumente o tamanho do volume existente do EBS
**Observação:**ao aumentar o tamanho do volume existente, as alterações de tamanho geralmente entram em vigor em segundos quando o volume entra no estado de otimização. O desempenho do volume é afetado no estado de otimização, mas não fica abaixo da especificação de configuração de origem. Dependendo do seu tipo de volume, as alterações de desempenho podem levar de alguns minutos a algumas horas. Para obter mais informações, consulte Monitorar o progresso das modificações de volume.
1. Modifique o tamanho do volume do EBS existente.
2. Instale o utilitário growpart:
$ sudo yum install cloud-utils-growpart
**Observação:**Use o seguinte comando para instalar o utilitário growpart em sistemas baseados em Debian ou Ubuntu:
$ sudo apt install -y cloud-guest-utils
3. Execute o comando growpart para estender a partição e, em seguida, execute o comando pvresize para redimensionar o PV. No exemplo a seguir, a partição /dev/xvdh1 é estendida:
$ sudo growpart /dev/xvdh 1 CHANGED: disk=/dev/xvdh partition=1: start=2048 old: size=20971519,end=16777182 new: size=41940958,end=41943006 $ sudo pvresize /dev/xvdh1 Physical volume "/dev/xvdh1" changed 1 physical volume(s) resized or updated / 0 physical volume(s) not resized
Use pvs ou pvdisplay para ver os detalhes do volume físico:
$ sudo pvs PV VG Fmt Attr PSize PFree /dev/xvdh1 examplegroup1 lvm2 a-- <20.00g <13.00g
Use vgs ou vgdisplay para ver os detalhes do grupo de volume:
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 1 1 0 wz--n- <20.00g <13.00g
4. Execute o comando lvextend para estender o volume lógico:
$ sudo lvextend -L 19G /dev/examplegroup1/lvexample1
Use o comando lvs ou lvdisplay para ver os detalhes do volume lógico:
$ sudo lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvexample1 examplegroup1 -wi-a----- 19.00g
5. Estenda o sistema de arquivos:
Observação: certifique-se de inserir o tipo correto do sistema de arquivos na entrada /etc/fstab .
Os sistemas de arquivos Ext2, Ext3 e Ext4:
$ sudo resize2fs /dev/examplegroup1/lvexample1
Sistemas de arquivos XFS :
$ sudo yum install x rogs $ sudo xfs_growfs /dev/examplegroup1/lvexample1
Opção 2: Adicionar volumes adicionais do EBS ao grupo de volumes
1. Crie outro volume EBS de 10 GB e, em seguida, conecte o volume à instância. Crie uma partição no dispositivo /dev/xvdi seguindo a etapa 3 de Criar volumes físicos na partição do seu volume do EBS_._Em seguida, execute o comando pvcreate. No exemplo a seguir, o nome do dispositivo de blocos do volume é /dev/xvdi1.
$ sudo pvcreate /dev/xvdi1 Physical volume "/dev/xvdi1" successfully created.
2. Use o comando vgextend para estender o grupo de volumes e adicionar o volume novo. O exemplo a seguir estende o grupo de volumes examplegroup1 para incluir o volume /dev/xvdi1:
$ sudo vgextend examplegroup1 /dev/xvdi1 Volume group "examplegroup2" successfully extended
Para confirmar a extensão, execute o comando vgs ou vgdisplay. O exemplo a seguir mostra que agora há dois PVs no grupo de volume examplegroup1:
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 2 1 0 wz--n- 29.99g 20.99g
3. Execute o comando lvextend para estender o volume lógico:
$ sudo lvextend -L 29G /dev/examplegroup1/lvexample1
4. Redimensionar o sistema de arquivos:
Observação: dependendo do seu caso de uso, siga as etapas para os sistemas de arquivos XFS ou Ext2, Ext3 e Ext4.
Os sistemas de arquivos Ext2, Ext3 e Ext4:
$ sudo resize2fs /dev/examplegroup1/lvexample1
Sistemas de arquivos XFS :
$ sudo xfs_growfs /dev/examplegroup1/lvexample1
Informações relacionadas
Como faço para criar um volume lógico LVM em um volume EBS inteiro?
Conteúdo relevante
- AWS OFICIALAtualizada há 10 meses
- AWS OFICIALAtualizada há um ano