Lvm
De whats Wiki
Contingut |
Aturar un lvm a una SAN, i tornar a activar
umount /storage/msa20box1 /sbin/vgchange -a n rmmod dm_mod rmmod qla2400 (ja es pot parar la SAN) modprobe qla2400 modprobe dm_mod lvm vgscan lvm vgchange -ay mount /storage/msa20box1
Creació d'un volume group
Creació d'un volum group anomenat VolGroup01 al dispositiu /dev/hdb1:
pvcreate -t /dev/hdb1 vgcreate -t VolGroup01 /dev/hdb1
Per a fer-ho de debò:
pvcreate /dev/hdb1 vgcreate VolGroup01 /dev/hdb1
Creació d'un volum lògic
Creació d'un volum lògic en el VolGroup00 anomenat testrs (quedarà /dev/mapper/VolGroup00-testrs) de 1500 MBytes
lvcreate -L1500 -ntestrs VolGroup00
El formatejem per exemple amb ext3:
mkfs.ext3 /dev/VolGroup00/testrs
El muntem
mount /dev/VolGroup00/testrs /mnt/tmp
Exemple pràctic:
root@xen1:/etc/xen# lvcreate -L 5G -npregoner vserver
Logical volume "pregoner" created
root@xen1:/etc/xen# lvcreate -L 1G -nswap_pregoner vserver
Logical volume "swap_pregoner" created
root@xen1:/etc/xen# mkfs.ext3 /dev/vserver/pr
pregoner prisma2
root@xen1:/etc/xen# mkfs.ext3 /dev/vserver/pregoner
mke2fs 1.37 (21-Mar-2005)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
655360 inodes, 1310720 blocks
65536 blocks (5.00%) reserved for the super user
First data block=0
40 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 20 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
root@xen1:/etc/xen# mkswap /dev/vserver/swap_pregoner
Setting up swapspace version 1, size = 1073737 kB
no label, UUID=6579baec-6f29-4d91-97ea-93e1cc563550
root@xen1:/etc/xen# mount /dev/vserver/pregoner /mnt/tmp/
root@xen1:/etc/xen# cd /mnt/tmp/
root@xen1:/mnt/tmp# l
total 24K
drwxr-xr-x 3 root root 4,0K 2005-12-02 12:29 .
drwxr-xr-x 3 root root 4,0K 2005-12-01 08:39 ..
drwx------ 2 root root 16K 2005-12-02 12:29 lost+found
root@xen1:/mnt/tmp# df -h
S. fitxers Tamany En ús Lliure %Ãs Muntat en
/dev/hda2 9,2G 4,4G 4,4G 50% /
tmpfs 122M 0 122M 0% /dev/shm
/dev/hda1 184M 32M 143M 19% /boot
/dev/hda3 1,8G 8,1M 1,7G 1% /tmp
/dev/hda5 3,7G 108M 3,4G 4% /var
tmpfs 10M 2,6M 7,5M 26% /dev
/dev/mapper/vserver-pregoner
5,0G 33M 4,7G 1% /mnt/tmp
root@xen1:/mnt/tmp#
Resize d'un volum lògic
Ampliant capacitat amb ext3:
umount /mnt/tmp lvextend -L +5G /dev/VolGroup00/testrs # Extenem +5GB e2fsck -f /dev/VolGroup00/testrs resize2fs /dev/VolGroup00/testrs
Ampliant capacitat amb reiserfs en fred:
umount /mnt/tmp lvextend -L +5G /dev/VolGroup00/testrs # Extenem +5GB resize_reiserfs /dev/VolGroup00/testrs
Ampliant capacitat amb reiserfs en calent:
resize_reiserfs -f /dev/VolGroup00/testrs
Reduint capacitat amb ext3
umount /mnt/tmp e2fsck -f /dev/VolGroup00/testrs resize2fs /dev/VolGroup00/ramon 5G # Fa un resize del sistema de fitxers a 5GB lvreduce -L -4,9G /dev/VolGroup00/ramon # Reduim el volum lògim en 4,9G
Reduint capacitat amb reiserfs
umount /mnt/tmp resize_reiserfs -s-1G /dev/VolGroup00/testrs lvreduce -L-1G /dev/myvg/homevol
Eliminació d'un volum lògic
Per a fer-ho en mode test:
lvremove -t /dev/VolGroup00/testrs
Per a fer-ho de debò:
lvremove /dev/VolGroup00/testrs
Per activar un VL i crear les entrades a /dev
lvchange -ay nom_vg/nv_vl
Backups d'un volum lògic (maquina virtual xen)
Primer aturem la maquina virtual
xm shutdown prisma2
Muntem la partició lvm on es trobi el sistema de fitxers de la nostra maquina
mount /dev/backup/prisma2 /mnt/tmp
Fem el backup:
tar pzcvf /backups/prisma2.backup --numeric-owner /mnt/tmp/*
Desmuntem el volum lògic
umount /mnt/tmp
Reiniciem la màquina virtual
xm create prisma2
Snapshots
Crear un snapshot del dispositiu /dev/storage/www que l'anomenarem www_snapshot i que pot contenir fins a 500M de canvis
lvcreate -L500M -s -n www_snapshot /dev/storage/www
Mirem com està d'ocupat el snapshot
lvdisplay --- Logical volume --- LV Name /dev/storage/www_snapshot VG Name storage LV UUID 6Dhemd-FuP9-V0Wo-V7H2-bw9r-sZOp-L0FHBU LV Write Access read/write LV snapshot status active destination for /dev/storage/www LV Status available # open 0 LV Size 57.22 GB Current LE 14649 COW-table size 500.00 MB COW-table LE 125 Allocated to snapshot 7.05% Snapshot chunk size 8.00 KB Segments 1 Allocation inherit Read ahead sectors 0 Block device 254:6
O també
root@www:/mnt# lvs LV VG Attr LSize Origin Snap% Move Log Copy% backup storage -wi-ao 7.00G data storage -wi-ao 2.00G tmp storage -wi-ao 10.00G www storage owi-ao 57.22G www_snapshot storage swi-a- 500.00M www 7.05
Backups amb LVM Snapshot
Creem un snaphot del vserver (xen1):
lvcreate -l 500 -s -n ocellot_snapshot /dev/vserver/ocellot
El muntem en només lectura:
mount -o ro /dev/vserver/ocellot_snapshot /data/snapshots/ocellot
Configurem el dimoni rsync (afegim a /etc/rsyncd.conf):
[ocellot] read only path = /data/snapshots/ocellot comment = Ocellot Vserver Snapshot hosts allow = 192.168.0.210 max connection = 0 use chroot = true timeout = 60
Ara a la màquina on es fan les còpies dels vservers (xen0):
Creem un vòlum lògic d'igual tamany al vserver original amb el mateix nom però al volum group anomenat backup.
lvcreate -L 5G -nocellot backup
El muntem:
mount /dev/backup/ocellot /data/vservers/ocellot
Ens situem al directori i fem la copia:
cd /data/vservers/ocellot rsync -avu --delete rsync://192.168.0.211/ocellot .
Si es vol poder aixecar el vserver al xen0 (en cas de que no funcionés al xen1), caldria afegir un fitxer de configuració com aquest a /etc/xen/:
name ="ocellot" kernel ="/boot/vmlinuz-2.4.30-xenU" root ="/dev/hda1" memory = 256 disk = ['phy:/dev/backup/ocellot,hda1,w'] # network nics=1 dhcp ="off" ip="192.168.0.31" netmask="255.255.255.0" gateway="192.168.0.1" hostname="ocellot-devel.gnuine.loc" extra="fastboot 3"
Un cop finalitzades les còpies es poden eliminar els snapshots si volem. Ojo!! no eliminar els bons.
Resize d'un fitxer ext3
Incrementar el tamany del fitxer a 2,5 G (fer un backup abans)
dd if=/dev/zero of=<image file> bs=1M conv=notrunc count=1 seek=2500 losetup /dev/loop0 <image file> e2fsck -f /dev/loop0 resize2fs /dev/loop0 e2fsck -f /dev/loop0 losetup -d /dev/loop0
DETECTAR I CREAR ENLLAÇOS
lvm vgscan lvm vgchange -ay
Aprofitar un snapshot per fer un fsck segur
- dd if=/dev/zero of=pvdevice.noborrar bs=1M count=10240
- losetup /dev/loop0 pvdevice.noborrar
- pvcreate /dev/loop0
- vgextend nomvg /dev/loop0
- lvcreate -L10G -s -n cabina_snapshot /dev/storage/cabina
- screen -S fsck
- time fsck -y -C 0 dev_del_dispositiu_i_no_lsnapshot
