LVM

download LVM

of 13

description

Implementación de lvm con software centos version 6.6

Transcript of LVM

Qu es LVM?LVM es el acrnimo de Logical Volumen Managent que en computacin hace referencia a una forma de asignar espacio de forma ms flexible que las formas tradicionales como el particionado. En particular un Volume Manager puede concatenar, dividir o combinar particiones (incluso de discos distintos!) en otras virtuales ms grandes que los administradores pueden redimensionar o mover, potencialmente sin ni siquiera interrumpir su uso. Tambin permite la administracin de volmenes definidos por grupos de usuarios, otorgndole al administrador del sistema lidiar con grupos de volmenes con nombres ms sensibles como desarrollo o sistema en vez de nombres de discos fsicos que poco nos dicen como sda y sdb.

Ventajas.LVM le da ms flexibilidad que la simple particin de un disco duro para: Poder utilizar cualquier nmero de discos como un gran disco. Tener volmenes lgicos estirados sobre varios discos. Crear pequeos volmenes lgicos y cambiar su tamao dinmicamente, cuando se llenen. Cambiar el tamao de los volmenes lgicos sin importar su orden en el disco. No depende de la posicin del volumen lgico dentro del grupo de volmenes, ni hay necesidad de asegurar el espacio disponible circundante. Cambiar/crear/borrar el tamao de los volmenes lgicos y fsicos en lnea. Los sistemas de archivos en ellos todava tendrn que ser redimensionados, pero algunos (como ext4) apoyan el cambio de tamao en lnea. Migracin en lnea/vivo de volumenes lgicos, siendo utilizado por los servicios para diferentes discos sin tener que reiniciar los servicios. Las instantneas que permiten hacer copias de respaldo del sistema de archivos, mientras se mantiene el tiempo de inactividad del servicio a un mnimo. Soporte para albergar distintos mapeadores de dispositivos, incluido el cifrado del sistema de archivos transparente y almacenamiento en cach de los datos de uso frecuente.

Desventaja Los pasos adicionales en la configuracin del sistema, que lo hace ms complicado.

Bloques para construir LVM

Logical Volume Management (LVM) hace uso de la funcin device-mapper del krnel de lnux para proporcionar un sistema de particiones independientes de la estructura subyacente del disco. Con LVM es posible crear un espacio de almacenamiento abstracto as como distintas particiones virtuales, por lo que es ms fcil de agrandar/encoger particiones (siempre sujeto a posibles limitaciones de su sistema de archivos). Las particiones virtuales permiten aadir/eliminar particiones sin tener que preocuparse acerca de si se tiene suficiente espacio contiguo en un disco concreto, ni quedar atrapado en el fdisking de un disco en uso (y preguntndose si el krnel est utilizando una tabla de particiones vieja o nueva), ni tener que mover otras particiones en el camino. Esto es un asunto que afecta estrictamente a la facilidad de gestin: no proporciona ninguna seguridad. Sin embargo, se acomoda muy bien con las otras dos tecnologas que estamos usando. Los bloques bsicos que construyen LVM son: Physical volume/Volmenes fsicos (PV): Son las particiones en el disco duro (o, incluso, el propio disco o un archivo loopback) donde se tiene un grupo de volmenes. Posee una cabecera especial y est dividida en extensiones fsicas. Piense en los volmenes fsicos como grandes bloques de construccin utilizados para construir su disco duro.

Volume group/Grupo de volmenes (VG): Los grupos de volmenes fsicos son usados como volmenes de almacenamiento (como si fueran un solo disco). Contienen volmenes lgicos. Piense en los grupos de volmenes como discos duros.

Logical volume/Volmenes lgicos (LV): Es una particin virtual/lgica que reside en un grupo de volmenes y est compuesta por extensiones fsicas. Piense en los volmenes lgicos como particiones normales.

Physical extent/Extensiones fsicas (PE): Es una pequea parte de un volumen fsico (por defecto, 4MB) que puede ser asignada a un volumen lgico. Piense en las extensiones fsicas como partes de los discos que pueden ser asignadas a cualquier particin.

Ejemplos

Varios discos duros creando un lvm

Un disco duro divido en 3 LVM.

Instalando LVMEn forma general los pasos para crear un LVM son los siguientes pasos: Cree los volmenes fsicos (PV). Si se tiene un disco lo mejor es simplemente crear un volumen fsico en una particin grande. Si tiene varios discos se pueden crear particiones en cada uno de ellos y crear un volumen fsico en cada particin. Cree el grupo de volmenes (VG) y asocie todos los volmenes fsicos (PV) al mismo. Cree volmenes lgicos (LV) dentro de su grupo de volmenes (VG) Crear el sistema de archivos y montar los volmenes lgicos

Advertencia: /boot no puede residir en LVM cuando se utiliza GRUB LEGACY ya que no soporta LVM. Los usuarios de GRUB no tienen esta limitacin. Si necesita utilizar GRUB Legacy, debe crear una particin /boot separada y peticionarla directamente.

Crear volmenes fsicosPara listar todos los dispositivos capaces de ser utilizados como un volumen fsico: # lvmdiskscanCree un volumen fsico en ellos: # pvcreate DISPOSITIVOEsta orden crea una cabecera en cada dispositivo para que se pueda utilizar para LVM. Tal como se define en LVM #Bloques para construir LVM, el DISPOSITIVO puede ser un disco (por ejemplo, /dev/sda), una particin (por ejemplo, /dev/sda2) o un dispositivo loop back. Por ejemplo: # pvcreate /dev/sda2Puede hacer un seguimiento de los volmenes fsicos creados con: # pvdisplay

Crear grupo de volmenesEl siguiente paso, ser crear un grupo de volmenes sobre el volumen fsico: Lo primero que se necesita es crear un grupo de volmenes sobre uno de los volmenes fsicos: # vgcreate Por ejemplo: # vgcreate VolGroup00 /dev/sda2A continuacin, puede aadir a dicho grupo de volmenes tantos volmenes fsicos como desee tener en el mismo (a modo de una sola unidad): # vgextend # vgextend Por ejemplo: # vgextend VolGroup00 /dev/sdb1# vgextend VolGroup00 /dev/sdcPuede hacer un seguimiento de cmo su grupo de volmenes ha crecido con: # vgdisplay

Crear volmenes lgicosNecesitaremos crear volmenes lgicos en este grupo de volmenes. Para ello debe utilizar la siguiente orden, proporcionndole como parmetros, su tamao (-L), el grupo de volmenes al que pertenecer, y el nombre (-n) del nuevo volumen lgico: # lvcreate -L -n Por ejemplo: # lvcreate -L 10G VolGroup00 -n lvolhomeLuego, podr acceder al nuevo volumen lgico creado con /dev/mapper/Volgroup00-lvolhome o /dev/VolGroup00/lvolhome. Igual que sucede con los grupos de volmenes, puede ponerle el nombre que desee al volumen lgico cuando lo crea. Tambin puede especificar uno o ms volmenes fsicos para limitar donde quiere que LVM asigne los datos. Por ejemplo, es posible que desee crear un volumen lgico para el sistema de archivos raz en SSD (si es pequeo), y el volumen de su home en una unidad mecnica ms grande y lenta. Tan solo tiene que aadir el dispositivo del volumen fsico a la lnea de rdenes, por ejemplo: # lvcreate -L 10G VolGroup00 -n lvolhome /dev/sdc1Si desea ocupar todo el espacio libre que queda del grupo de volmenes, utilice la siguiente orden: # lvcreate -l +100%FREE -n Puede hacer un seguimiento de los volmenes lgicos creados con: # lvdisplay

Crear el sistema de archivos y montar los volmenes lgicosSus volmenes lgicos deberian encontrarse en /dev/mapper/ y /dev/NombredelGrupodedeVolmenes. De no encontrarse, use la siguiente orden para cargar el modulo que crea nodos de dispositivos y hacer que los grupos de volmenes estn disponibles: # modprobe dm-mod# vgscan# vgchange -ayAhora puede crear el sistema de archivos en los volmenes lgicos, y montarlos como particiones normales: # mkfs. /dev/mapper/-# mount /dev/mapper/- /Por ejemplo: # mkfs.ext4 /dev/mapper/VolGroup00-lvolhome# mount /dev/mapper/VolGroup00-lvolhome /home

Operaciones sobre los volmenesOpciones avanzadasSi necesita monitorizacin (necesario para snapshots instantneas) puede activar lvmetad. Para ello establezca use_lvmetad = 1 en /etc/lvm/lvm.conf. Este es el valor predeterminado por ahora. Puede restringir los volmenes que se activan de forma automtica mediante el establecimiento de la variable auto_activation_volume_list en el archivo /etc/lvm/lvm.conf. En caso de duda, deje esta opcin comentada. Redimensionar los volmenesVolmenes fsicosDespus de aumentar o antes de reducir el tamao de un dispositivo que tiene sobre l un volumen fsico, necesita aumentar o reducir el tamao del volumen fsico mediante pvresize. AgrandarPara ampliar el volumen fsico existente sobre el dispositivo /dev/sda1, despus de aumentar dicha particin, ejecute: # pvresize /dev/sda1Esto detectar automticamente el nuevo tamao del dispositivo y extender el volumen fsico a su mximo.ReducirPara reducir un volumen fsico antes de reducir el dispositivo subyacente, agregue el parmetro --setphysicalvolumesize tamao a la orden, por ejemplo: # pvresize --setphysicalvolumesize 40G /dev/sda1La orden anterior puede arrojar el siguiente error: /dev/sda1: cannot resize to 25599 extents as later ones are allocated. 0 physical volume(s) resized / 1 physical volume(s) not resizedDe hecho pvresize se negar a reducir un volumen fsico si tiene asignadas extensiones adyacentes a lo que sera su nuevo final. Se tiene que ejecutar pvmove de antemano para reubicar estas extensiones en el grupo de volmenes a otro lugar, si no hay suficiente espacio libre. Mover extensiones fsicasAntes de mover extensiones libres al final del volumen, se debe ejecutar # pvdisplay -v -m para ver los segmentos fsicos. En el siguiente ejemplo, hay un volumen fsico sobre /dev/sdd1, un grupo de volumen vg1 y un volumen lgico backup.

Se puede observar que el espacio LIBRE se intercala por todo el volumen. Para reducir el tamao del volumen fsico, primero tenemos que mover todos los segmentos utilizados al comienzo. Aqu, el primer segmento libre es desde 0 a 153.600, lo cual nos deja con 153.601 extensiones libres. Ahora podemos mover este nmero de segmentos desde la ltima extensin fsica de la primera. La orden sera as:

Redimensionar el Volumen FsicoUna vez que todos sus segmentos fsicos libres estn en la ltima extensin fsica, ejecute # vgdisplay y vea su extensin fsica libre. Entonces, podr ejecutar de nuevo la orden: # pvresize --setphysicalvolumesize tamao VolumenFsico

# pvs

PV VGFMT Attr pSize PFree/dev/sdd1 vg1 lvm2 a-- 1T 500gpv

#pvresize /dev/sdd1

Redimensionar la particinVolmenes lgicosLvresise proporciona ms o menos las mismas opciones que las rdenes especializadas lvextend y lvreduce al mismo tiempo que permite hacer ambos tipos de operacin. A Pesaar de esto, todas las utilidades ofrecen una opcin r, --resizefs que permite cambiar el tamao del sistema de archivos junto con el volumen lgico mediante fsadm(opcin ) Soporta ext2, ext3, ext4, reiserFS y XFS. Por lo tanto, es ms fcil utilizar lvresize para ambas operaciones y utilizar resizefs para simplificar un poco las cosas excepto si tiene necesidades especficas o desea tener un control total sobre el proceso.

Agrandando o Reduciendo con lvresizeSi bien la ampliacin de un sistema de archivos puede, a menudo, hacerse en lnea (es decir mientras el mismo est montado), incluso para la particin raz, en cambio, la reduccin necesitar, casi siempre, desmontar primero el sistema de archivos con el fin de evitar prdida de datos. Asegrese de que su sistema de archivos apoya lo que est tratando de hacer.Ampliar 2GB el volumen lgico nv1 dentro del grupo de volmenes vg1 sin tocar su sistema de archivos:# lvresize -L +2G vg1/lv1Reducir 500MB el volumen lgico vg1/nv1 sin cambiar el tamao de su sistema de archivos (asegrese de que este ltimo est ya reducido en este caso):# lvresize -L -500M vg1/lv1Ajustar vg1/lv1 a 15GB y redimensionar su sistema de archivos todo a la vez:# lvresize -L 15G -r vg1/lv1Si desea ocupar todo el espacio libre de un grupo de volmenes, utilice la siguiente orden:# lvresize -l +100%FREE grupovolumen/volumenlgico

Redimensionar por separado el sistema de archivosSi no utiliza la opcin -r, --resizefs para lv{resize,extend,reduce} o utiliza un sistema de archivos no soportado por fsadm(8) (Btrfs, ZFS...), es necesario cambiar el tamao del sistema de archivos manualmente antes de encoger el volumen lgico o despus de agrandar el mismoPor ejemplo, con los sistemas de archivos ext2/ext3/ext4:# resize2fs grupovolumenes/volumenfsicose ampliar el sistema de archivos al tamao mximo del volumen lgico subyacente, mientras que con:# resize2fs -M grupovolumenes/volumenfsicose contraer a su tamao mnimo. Para redimensionar a un tamao determinado, utilice:# resize2fs grupovolumenes/volumenfsico NuevoTamao

Eliminar volmenes lgicosEn primer lugar, averige el nombre del volumen lgico que desea eliminar. Se puede obtener una lista de todos los volmenes lgicos instalados en el sistema con:# lvsA continuacin, busque el punto de montaje del volumen lgico elegido, con:$ lsblkAhora, desmonte el sistema de archivos del volumen lgico:# umount /Por ltimo, elimine el volumen lgico:# lvremove /Por ejemplo:# lvremove VolGroup00/lvolhomeConfirme la operacin escribiendo y. No se olvide de actualizar el archivo /etc/fstab. Se puede verificar la eliminacin del volumen lgico escribiendo lvs.

Agregar un volumen fsico al grupo de volmenesEn primer lugar, cree un nuevo volumen fsico en el dispositivo de bloque que desea usar, y luego intgrelo en su grupo de volmenes: # pvcreate /dev/sdb1# vgextend VolGroup00 /dev/sdb1Por supuesto, esto aumentar el nmero total de extensiones fsicas en el grupo de volmenes, que podr asignar a los volmenes lgicos como mejor le parezca.Eliminar una particin de un grupo de volmenesSi ha creado un volumen lgico en la particin, elimnelo primero. Todos los datos de la particin deben ser movidos a otra particin. Afortunadamente, LVM lo hace sencillo: # pvmove /dev/sdb1Si quiere tener los datos en un volumen fisico especfico, agrguelo como segundo argumento a pvmove: # pvmove /dev/sdb1 /dev/sdf1Luego, eliminamos los volmenes fsicos del grupo de volmenes: # vgreduce myVg /dev/sdb1O, eliminamos todos los volmenes vacos: # vgreduce --all vg0Por ltimo, si quiere usar la particin para algo ms, y quiere evitar a LVM, piense que esa particin es un volumen fisico ms: # pvremove /dev/sdb1Desactivar un grupo de volmenesBasta con invocar la orden: # vgchange -a Esto desactivar el grupo de volmenes y le permitir desmontar el contenedor donde est almacenado.