Actualmente tengo una maquina con un Oracle al que se le termina el espacio de disco. Tiene un disco de 68Gb en RAID1 montado por LVM (el /dev/sda). Hemos montado otro disco de 68Gb en RAID1 (el /dev/sdb) con la idea de ampliar el espacio del volum-group formado en la maquina.
Miramos primero que se ha reconocido el segundo disco:
root@virtuozo:~# ls -l /dev/sd* brw-rw---- 1 root disk 8, 0 2009-12-11 11:50 /dev/sda brw-rw---- 1 root disk 8, 1 2009-12-11 11:50 /dev/sda1 brw-rw---- 1 root disk 8, 2 2009-12-11 11:50 /dev/sda2 brw-rw---- 1 root disk 8, 5 2009-12-11 11:50 /dev/sda5 brw-rw---- 1 root disk 8, 16 2009-12-12 16:39 /dev/sdb
Miramos cómo está montado el LVM en esta máquina. Miramos los Physical Volumen o los discos físicos que forman mi LVM:
root@virtuozo:~# pvscan
PV /dev/sda5 VG virtuozo.barcelona lvm2 [68.00 GB / 0 free]
Total: 1 [68.00 GB] / in use: 1 [68.00 GB] / in no VG: 0 [0 ]
Vemos que existe un volum-group llamado “virtuozo.barcelona” que está compuesto de la partición física /dev/sda5 de 68Gb.
Vemos ahora como está particionado este volum-group en diferentes logical-volum:
root@virtuozo:~# lvscan
ACTIVE '/dev/virtuozo.barcelona/root' [65.18 GB] inherit
ACTIVE '/dev/virtuozo.barcelona/swap_1' [2.82 GB] inherit
Está particionado en dos. La primera en “root” de 65Gb y la segunda es “swap_1” de 2Gb.
Ahora que tenemos esto presente, la idea de añadir un nuevo disco (el /dev/sdb) es aumentar el tamaño del logical-volum “root”, pasando de 65Gb a 133Gb aproximadamente.
Vamos pues. Lo primero que haremos es crear una única partición en /dev/sdb de system id “8e” (tipo LVM).
root@virtuozo:~# fdisk /dev/sdb The number of cylinders for this disk is set to 8908. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-8908, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-8908, default 8908): Using default value 8908 Command (m for help): t Selected partition 1 Hex code (type L to list codes): 8e Changed system type of partition 1 to 8e (Linux LVM) Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
Una vez creada la partición (ver ls –l /dev/sd*), la formateamos. En mi caso es formato ext3:
root@virtuozo:~# mkfs -t ext3 -c /dev/sdb1
Ahora ya podemos añadir nuestro nuevo disco al volum-group:
root@virtuozo:~# pvcreate /dev/sdb1 root@virtuozo:~# vgextend virtuozo.barcelona /dev/sdb1 root@virtuozo:~# pvdisplay --- Physical volume --- PV Name /dev/sda5 VG Name virtuozo.barcelona PV Size 68.00 GB / not usable 1.27 MB Allocatable yes (but full) PE Size (KByte) 4096 Total PE 17408 Free PE 0 Allocated PE 17408 PV UUID gextNx-qoAF-aNn9-1ARg-72bY-oQeY-sHaOQ7 --- Physical volume --- PV Name /dev/sdb1 VG Name virtuozo.barcelona PV Size 68.24 GB / not usable 454.00 KB Allocatable yes PE Size (KByte) 4096 Total PE 17469 Free PE 17469 Allocated PE 0 PV UUID dCibq8-B4TY-adnR-HR6j-iLv6-f15H-pBknpX
Para finalizar aumentamos el tamaño del logical-volum llamado “root”:
root@virtuozo:~# lvextend -l+17469 /dev/virtuozo.barcelona/root Extending logical volume root to 133.42 GB Logical volume root successfully resized root@virtuozo:~# lvscan ACTIVE '/dev/virtuozo.barcelona/root' [133.42 GB] inherit ACTIVE '/dev/virtuozo.barcelona/swap_1' [2.82 GB] inherit # resize2fs /dev/virtuozo.barcelona/root Filesystem Size Used Avail Use% Mounted on /dev/mapper/virtuozo.barcelona-root 133G 2.8G 123G 3% / varrun 1008M 84K 1008M 1% /var/run varlock 1008M 0 1008M 0% /var/lock udev 1008M 52K 1008M 1% /dev devshm 1008M 0 1008M 0% /dev/shm /dev/sda1 236M 26M 199M 12% /boot
Observar como utilizamos el parámetro +17469 para aumentar el espacio con los “Free PE” (Physical Extended) del nuevo disco que hemos añadido. También podríamos utilizar algo como “lvextend -L+68G /dev/virtuozo.barcelona/root”.
Esta es una tabla de todos los comandos que se pueden utilizar para LVM:
-------------------- Comandos de volúmenes físicos -------------------- pvchange | Cambia los atributos de un volumen físico pvcreate | Crea un volumen físico pvdata | Muestra información de depuración sobre un volumen físico pvdisplay | Muestra información sobre un volumen físico pvmove | Mueve extensiones físicas de un volumen físico a otro. pvscan | Localiza y enumera todos los volúmenes físicos -------------------- Comandos de grupos volumen -------------------- vgcfgbackup | Hace una copia del área del descriptor de grupo volumen vgcfgrestore | Recupera el área del descriptor de grupo volumen al disco vgchange | Cambia los atributos de un grupo volumen vgck | Comprueba la consistencia del área del descriptor de grupo volumen vgcreate | Crea un grupo volumen a partir de volúmenes físicos vgdisplay | Muestra los atributos de un grupo volumen vgexport | Exporta un grupo volumen del sistema vgextend | Añade volúmenes físicos a un grupo volumen vgimport | Importa un grupo volumen al sistema vgmerge | Combina dos grupos volumen vgmknodes | Combina un directorio y los archivos especiales de un grupo volumen vgreduce | Elimina volúmenes físicos de un grupo volumen vgremove | Elimina un grupo volumen vgrename | Renombra un grupo volumen vgscan | Localiza y enumera todos los grupos volumen del sistema vgsplit | Divide un grupo volumen -------------------- Comandos de volúmenes lógicos -------------------- lvchange | Cambia los atributos de un volumen lógico lvcreate | Crea un volumen lógico lvdisplay | Muestra los atributos de un volumen lógico lvextend | Incrementa el tamaño de un volumen lógico lvreduce | Reduce el tamaño de un volumen lógico lvremove | Elimina un volumen lógico lvrename | Renombra un volumen lógico lvscan | Localiza y enumera todos los volúmenes lógicos, creando /etc/lvmtab y /etc/lvmtab.d/* -------------------- Comandos del Administrador de Volúmenes Lógicos (LVM) -------------------- lvmchange | Cambia los atributos del sistema LVM lvmdiskscan | Localiza y enumera todos los discos disponibles, los dispositivos múltiples y las particiones lvmsadc | Recoge información sobre la actividad de LVM lvmsar | Muestra información sobre la actividad de LVM




La idea es saber cómo se encuentran dos puntos de red distantes (por ejemplo entre un centro en Barcelona, otro en Madrid y separados por una FrameRelay, una MPLS o por Internet). Lógicamente también sirve para medir la velocidad entre dos puntos de una misma LAN.