terça-feira, 5 de janeiro de 2010

LVM - Logical Volume Manager

===== LVM =====

https://group.lpi.org/publicwiki/bin/view/Examdev/LPIC-20x#204_3_Logical_Volume_Manager
   O que é LVM e qual a vantagem de usá-lo?

1) A sigla LVM significa: Logical Volume Manager. Ele é um gerenciador de discos que trabalha com camadas lógicas, que podem ser redimensionadas, aumentando ou diminuindo sem prejudicar o funcionamento do sistema.
 A necessidade de se usar LVM é para que possamos aproveitar ao máximo o tamanho do HD ou de vários Hds.

2) Como vocês acham que funciona o LVM?
O LVM é mais usado para que possamos agrupar vários discos de forma que o gerenciamento dos mesmos seja viável em um servidor de produção que não pode ficar desligado.
   Vamos imaginar que temos 3 Hd's em nossa máquina, e gostaríamos de aproveitar ao máximo de seus tamanhos.
   Para não ter que se preocupar com o tamanho das partições logo de imediato, iremos usar o LVM para que possamos gerenciar os tamanhos das partições sem precisar fazer as famosas “gambiarras''.
   Para trabalhar com LVM as partições precisam estar formatadas com o tipo LVM.

3) O LVM trabalha com Grupos de Volumes para alocar todos as partições que estão definidas como Volume Físicos do LVM.
  Esses volumes físicos serão divididos em vários Volumes lógicos com se fossem uma divisão de um disco (partição) para alocar o determinado ponto de montagem, e isso vai trazer a flexibilidade para redimensionar a determinada partição.

4) Com mais detalhes vejamos as seguintes camadas que o LVM trabalha:
   O que seria um PV ou Volume Físico?

5) PV – Physical Volume (Volume Físico): Os PV's são as partições que serão usadas para compor um disco no formato LVM, eles servem para dar o UUID, que é número de identificação de cada disco.
  O que seria um VG ou Grupo de Volume?

 VG – Volume Group (Grupo de Volume): Os VG's são um agrupamento de PV's, podemos ter vários VG's. Um exemplo é que podemos pegar a partições hda3 e hdb4 que estão declaradas como PV's e dizer que eles são o VG01, nisso podemos dividir esse grupo em vários pedaços com tamanhos específicos para ser associados a um diretório. Podemos utilizar todo o tamanho ou podemos deixar um espaço sobrando para quando precisar, aumentar os pedaços.
   E por fim, o que seria um LV ou Volume Lógico?
LV – Logical Volume (Volume Lógico): Os LVs são os pedaços que falamos agora pouco, podemos classifica-los como sendo as partições de um disco, e VG sendo o disco. Eles são as partes que podem ser acessadas pelos usuários e que serão associados a um ponto de montagem específico. Um exemplo é falar que o PV01 será montado no diretório /home.

6) DICA: Quando forem testar LVM procurem usar um HD vazio ou até mesmo um Pendrive...

7) O LVM usa um pouco de processamento da máquina.

8)   Sistema de Arquivos interessante: XFS
   http://pt.wikipedia.org/wiki/XFS

9)   hda1 hdc1 md0 (Partition Volumes)
     \   |   /
       \ | /
       diskvg (Volume Group)
       /  |  \
    /     |      \
   usrlv rootlv varlv (Logical Volumes)
     |      |     |
 ext2 reiserfs xfs (Sistema de Arquivos)

10) Definindo organização
   Crie 3 partições para realização deste trabalho, defina o tipo da partição como 8 e utilize o fdisk para realização desta tarefa.
   # fdisk /dev/hda

11) Verifique os pacotes necessários ao LVM:
   No Red Hat:
   # rpm -qa |grep lvm2
   Caso não tenha:
   # rpm -hiv lvm*

No Debian:
   # dpkg -l |grep lvm2
   Caso não tenha:
   # aptitude install lvm2

12) Que comando podemos usar para gerar o arquivo de configuração do LVM?
PRIMEIRO COMANDO:
vgscan

Defina as partições com PV (Phisical Volume ou Volume Físico).
   Para fins de exemplificação, considere as respectivas partições:

  # pvcreate /dev/hda11
  # pvcreate /dev/hda12
  # pvcreate /dev/hda13

  # pvscan

13) Defina um Grupo de Volumes com os volumes físicos criados.
  # vgcreate vg001 /dev/hda11 /dev/hda12 /dev/hda13
 Onde vg001 é o label (o nome) que eu quero dar para esse grupo de volumes

14) Ativando o Grupo de VOlume:
# vgchange -a y
  Consultando o Grupo de Volumes (VG).
  # vgdisplay -v vg001

15)  Que comando posso usar para criar um Volume Lógico (LV) denominado lv001?

16) Vamos usar a lógica...

pvcreate..... vgcreate....

# lvcreate -L 512m -n lv001 vg001

17) Onde lv001 é o nome dado ao meu primeiro volume lógico
   vg001 é o grupo de volumes que especifiquei antes
  
  Listando informações do Volume Lógico (LV):
   # lvdisplay -v /dev/vg001/lv001
  
  Consultando o Grupo de Volumes (VG).
  # vgdisplay -v vg001

18) Listando o device do LV criado:
  # ls -l /dev/vg001/lv001

19) E como eu posso criar agora um sistema de arquivos para essa pseudo-partição lógica que eu criei? (ou seja para o meu lv?)
 # mke2fs -j /dev/vg001/lv001

mke2fs => cria partições ext2 ou ext3

-j (journaling)

Usando o LVM
  Criando um ponto de montagem para LVM (caso seja necessário):
  # mkdir /lvm

  Montando manualmente o sistema LVM criado:
  # mount -t ext3 /dev/vg001/lv001 /lvm

20) Quais comando eu posso usar para verificar se o LVM foi montado?
# df -h
  # mount

21) Caso esteja utilizando RedHat (ou uma distribuição que siga o mesmo padrão),
   verifique a necessidade de criação de um label para o device. Se for necessário, faça-o.
   # e2label /dev/vg001/lv001 /lvm

22) Caso a máquina seja reinicializada neste momento, o LVM não seria montado para utilização. Para que o volume LVM seja montado automaticamente, é necessário que seja editado o arquivo /etc/fstab e se adicionem estas linhas no /etc/fstab:

Com label (para Red Hat):
   LABEL=/lvm /lvm ext3 defaults 0 2
   Sem label (para Debian):
   /dev/vg001/lv001 /lvm ext3 defaults 0 2

23) Administrando o LVM
   Identifique o Volume Lógico.
   # df -h
   Como eu desmonto o LVM?

# umount /lvm
   Agora como eu redimensiono o meu lv001?

Então Paulo o fdisk ele cria partições mas não necessariamente atribui um sistema de arquivos à ela... para isso você pode usar, por exemplo, o mke2fs :)
   Redimensione o Volume Lógico (LV).
   # lvextend -L +1024m /dev/vg001/lv001

  Verifique o volume.
   # e2fsck -f /dev/vg001/lv001

24) Essa é a mesma checagem usada pelo fstab,  file system check.

25) Pelo cfdisk você encontra opções de sistemas de arquivos.
  Inclusive XFS foi incorporado ao Gparted na última versão.

26) Os arquivos permanecem no dispositivo.

O XFS não é algo novo e sim está ficando mais "popular"
  
   Reestruturando o sistema de arquivos do Volume Lógico (LV).
   # resize2fs /dev/vg001/lv001
  
   Montando o LV.
   # mount -t ext3 /dev/vg001/lv001 /lvm
  
   Verificando a tabela de partições montadas.
   # df -h
  
   Desmonte o volume LVM.
   # umount /lvm

27) Troubleshooting

Reduzindo o LV. Em toda redução de espaço, há risco de perda de dados.

Para executar este procedimento, execute um backup da área de disco.
# lvreduce -L -1024M /dev/vg001/lv001

28) Reestruturando o sistema de arquivos do Volume Lógico (LV).
  # resize2fs /dev/vg001/lv001

29) Montando o LV.
   # mount -t ext3 /dev/vg001/lv001 /lvm
   Verificando a tabela de partições montadas.
   # df -h

Desmonte o volume LVM.
   # umount /lvm
 
   Removendo o LV.
   # lvchange -a n /dev/vg001/lv001
   # lvremove /dev/vg001/lv001

30) Removendo o LV.
   # lvchange -a n /dev/vg001/lv001
   # lvremove /dev/vg001/lv001
  
   Removendo o grupo.

   # vgchange -a n
   # vgremove vg001
  
  Apague todas as partições criadas para LVM.
   # fdisk /dev/hda
  vai rolar uma apostila com um passo a passo...!!???
 
   Passo-a-passo com LVM: http://www.guiadohardware.net/artigos/lvm/

31)  vgchange e lvchange é uma "desativação"

Quem ainda tiver dúvidas sobre PArticionamento de dispositivos (o que é uma partição primária, extendida, lógica), fica a dica:

  http://www.youtube.com/watch?v=JtYJjL-4e-U
  http://www.youtube.com/watch?v=MTlcImZ2V_E



Editado por Inside.  henrique.inside@gmail.com

Nenhum comentário :

Postar um comentário