É possível redimensionar uma partição LVM montada na hora?

2

Situação: Temos um servidor que tem uma SAN de 40 GB (Fibre Channel) montada como / opt / application.

Se o LUN for expandido para 60 GB, o que precisa ser feito para expandir / opt / application no servidor RHEL para 60 GB tendo apenas 1 partição LVM?

Uma opção é adicionar uma segunda partição LVM com fdisk e usar lvextend para adicionar essa partição, mas e se quisermos ter uma partição LVM no disco?

Qual é a melhor maneira de expandir o LUN de 40 GB para 60 GB? Uma desmontagem é possível se necessário, é melhor que adicionar uma segunda partição LVM e usar lvextend.

    
por ujjain 04.06.2013 / 10:20

1 resposta

3

Assumirei que o seu VP subjacente é multipathed.

  • Veja a tabela de partições do LUN em setores exatos em fdisk -ul /dev/mpathX

  • Verifique novamente o LUN em echo em rescan ou issue_lip , ou execute rescan-scsi-bus.sh ou, no entanto, faça isso

  • Confirme se o dispositivo de bloco agora tem o tamanho maior em fdisk -ul /dev/mpathX

  • Edite a tabela de partições em fdisk -u /dev/mpathX

  • Exclua a partição, recrie a partição com o mesmo setor inicial, mas um novo setor final que alcance a nova extremidade do dispositivo de bloco maior.

    Se sua partição começar em um setor anterior como 63, mas o fdisk só permitirá iniciar uma partição em 2048 ou posterior, crie a partição a partir de 2048, depois entre em "expert mode" e "move begin of data" para 63.

  • Desmonte seu sistema de arquivos em umount /opt/application

  • Defina o VG como inativo em vgchange -an /dev/mapper/vg-lv

  • O sistema reconhece a nova tabela de partições em partprobe /dev/mpathX

  • Cresça o PV para o novo tamanho da partição em pvresize /dev/mpathX

  • Defina o VG ativo em vgchange -ay /dev/mapper/vg-lv

  • Redimensione o LV e seu sistema de arquivos subjacente em lvresize -r -l+100%FREE /dev/mapper/vg-lv

  • Monte o sistema de arquivos e confirme seu novo tamanho em df -h /opt/application

Aviso: estes são os passos certos para o melhor do meu conhecimento. Faça um backup. Faça um teste em seu ambiente de desenvolvimento antes de confiar seus dados de produção a algum comentarista aleatório da Internet no Serverfault.

    
por 09.06.2013 / 05:44