Configurar volúmenes de aprovisionamiento ligero en Logical Volume Management (LVM) - Parte IV


La administración de volumen lógico tiene excelentes características como instantáneas y aprovisionamiento ligero. Anteriormente en la (Parte III) hemos visto cómo hacer una instantánea del volumen lógico. Aquí, en este artículo, veremos cómo configurar volúmenes delgados de aprovisionamiento en LVM.

Thin Provisioning se utiliza en lvm para crear discos virtuales dentro de un grupo delgado. Supongamos que tengo una capacidad de almacenamiento de 15 GB en mi servidor. Ya tengo 2 clientes que tienen 5GB de almacenamiento cada uno. Eres el tercer cliente, pediste 5GB de almacenamiento. En ese entonces, solíamos proporcionar los 5 GB completos (volumen grueso), pero puede usar 2 GB de ese almacenamiento de 5 GB y 3 GB serán gratuitos, que podrá llenar más tarde.

Pero lo que hacemos en el aprovisionamiento delgado es que usamos para definir un grupo delgado dentro de uno del grupo de volumen grande y definir los volúmenes delgados dentro de ese grupo delgado. Por lo tanto, cualquier archivo que escriba se almacenará y su almacenamiento se mostrará como 5GB. Pero los 5 GB completos no asignarán todo el disco. También se realizará el mismo proceso para otros clientes. Como dije, hay 2 clientes y tú eres mi tercer cliente.

Entonces, supongamos ¿cuánto GB total he asignado a los clientes? Ya se completaron 15GB en total, si alguien viene a mí y me pide 5GB, ¿puedo dar? La respuesta es "", aquí, en Thin Provisioning, puedo dar 5GB para el 4to cliente aunque haya asignado 15GB.

Advertencia: A partir de 15 GB, si aprovisionamos más de 15 GB se denomina Aprovisionamiento excesivo.

Le he proporcionado 5GB, pero puede usar solo 2GB y otros 3GB serán gratis. En Thick Provisioning no podemos hacer esto, porque al principio asignará todo el espacio.

En el aprovisionamiento delgado, si estoy definiendo 5GB para usted, no asignará todo el espacio en disco mientras define un volumen, crecerá hasta 5GB según su escritura de datos. ¡Espero que lo haya conseguido! Al igual que usted, otros clientes tampoco utilizarán los volúmenes completos, por lo que habrá una posibilidad de agregar 5 GB a un nuevo cliente. Esto se denomina sobre aprovisionamiento.

Pero es obligatorio monitorear el crecimiento de todos y cada uno de los volúmenes, si no, terminará en un desastre. Mientras se realiza el aprovisionamiento excesivo, si los 4 clientes escriben mal los datos en el disco, es posible que se enfrente a un problema porque llenará sus 15 GB y se desbordará para eliminar los volúmenes.

  1. Create Disk Storage with LVM in Linux – PART 1
  2. How to Extend/Reduce LVM’s in Linux – Part II
  3. How to Create/Restore Snapshot of Logical Volume in LVM – Part III
  1. Operating System – CentOS 6.5 with LVM Installation
  2. Server IP – 192.168.0.200

Paso 1: Configurar el grupo delgado y los volúmenes

Hagámoslo de manera práctica cómo configurar el grupo reducido y los volúmenes reducidos. Primero necesitamos un grupo de volumen de gran tamaño. Aquí estoy creando un grupo de volumen con 15 GB para fines de demostración. Ahora, enumere el grupo de volumen usando el siguiente comando.

# vgcreate -s 32M vg_thin /dev/sdb1

A continuación, compruebe el tamaño de la disponibilidad del volumen lógico antes de crear la agrupación delgada y los volúmenes.

# vgs
# lvs

Podemos ver que solo hay volúmenes lógicos predeterminados para el sistema de archivos y el intercambio está presente en la salida lvs anterior.

Para crear un grupo delgado de 15 GB en el grupo de volumen (vg_thin), use el siguiente comando.

# lvcreate -L 15G --thinpool tp_tecmint_pool vg_thin
  1. -L – Size of volume group
  2. –thinpool – To o create a thinpool
  3. tp_tecmint_pool– Thin pool name
  4. vg_thin – Volume group name were we need to create the pool

Para obtener más detalles, podemos usar el comando "lvdisplay".

# lvdisplay vg_thin/tp_tecmint_pool

Aquí no hemos creado volúmenes ligeros virtuales en este grupo fino. En la imagen, podemos ver los datos del grupo asignado que muestran 0.00% .

Ahora podemos definir volúmenes delgados dentro del grupo delgado con la ayuda del comando "lvcreate" con la opción -V (Virtual).

# lvcreate -V 5G --thin -n thin_vol_client1 vg_thin/tp_tecmint_pool

He creado un volumen virtual delgado con el nombre de thin_vol_client1 dentro de tp_tecmint_pool en mi grupo de volúmenes vg_thin . Ahora, enumere los volúmenes lógicos usando el siguiente comando.

# lvs 

Justo ahora, hemos creado el volumen delgado anterior, por eso no se muestran datos, es decir, 0.00% M .

Bien, déjeme crear 2 volúmenes más ligeros para otros 2 clientes. Aquí puede ver que ahora hay 3 volúmenes delgados creados bajo el grupo ( tp_tecmint_pool ). Entonces, a partir de este punto, supimos que había usado todo el grupo de 15 GB.

Ahora, cree puntos de montaje y monte estos tres volúmenes delgados y copie algunos archivos usando los siguientes comandos.

# mkdir -p /mnt/client1 /mnt/client2 /mnt/client3

Enumere los directorios creados.

# ls -l /mnt/

Cree el sistema de archivos para estos volúmenes ligeros creados mediante el comando "mkfs".

# mkfs.ext4 /dev/vg_thin/thin_vol_client1 && mkfs.ext4 /dev/vg_thin/thin_vol_client2 && mkfs.ext4 /dev/vg_thin/thin_vol_client3

Monte los tres volúmenes de cliente en el punto de montaje creado mediante el comando "montar".

# mount /dev/vg_thin/thin_vol_client1 /mnt/client1/ && mount /dev/vg_thin/thin_vol_client2 /mnt/client2/ && mount /dev/vg_thin/thin_vol_client3 /mnt/client3/

Enumere los puntos de montaje mediante el comando "df".

# df -h

Aquí, podemos ver que los 3 volúmenes de clientes están montados y, por lo tanto, solo se utiliza el 3% de los datos en todos los volúmenes de clientes. Entonces, agreguemos algunos archivos más a los 3 puntos de montaje desde mi escritorio para llenar algo de espacio.

Ahora enumere el punto de montaje y vea el espacio utilizado en cada volumen delgado y enumere el grupo delgado para ver el tamaño utilizado en el grupo.

# df -h
# lvdisplay vg_thin/tp_tecmint_pool

El comando anterior muestra las tres pintas de montaje junto con sus tamaños en porcentaje.

13% of datas used out of 5GB for client1
29% of datas used out of 5GB for client2
49% of datas used out of 5GB for client3

Mientras miramos en el grupo delgado, podemos ver que solo el 30% de los datos está escrito en su totalidad. Este es el total de los volúmenes virtuales de los tres clientes anteriores.

Ahora el cuarto cliente vino a verme y me pidió 5GB de espacio de almacenamiento. ¿Puedo dar? Porque ya le había dado 15GB Pool a 3 clientes. ¿Es posible darle 5GB más a otro cliente? Sí, es posible regalar. Aquí es cuando usamos Sobreaprovisionamiento , lo que significa dar más espacio del que tengo.

Permítame crear 5GB para el cuarto cliente y verificar el tamaño.

# lvcreate -V 5G --thin -n thin_vol_client4 vg_thin/tp_tecmint_pool
# lvs

Solo tengo un tamaño de 15 GB en el grupo, pero he creado 4 volúmenes dentro de un grupo delgado de hasta 20 GB. Si los cuatro clientes comienzan a escribir datos en sus volúmenes para acelerar el ritmo, en ese momento, nos enfrentaremos a una situación crítica, de lo contrario, no habrá ningún problema.

Ahora he creado un sistema de archivos en thin_vol_client4 , luego lo he montado en /mnt/client4 y he copiado algunos archivos en él.

# lvs

Podemos ver en la imagen de arriba, que el tamaño total usado en el cliente 4 recién creado es de hasta 89.34% y el tamaño del grupo delgado es 59.19% usado. Si todos estos usuarios no están escribiendo mal en el volumen, estará libre de desbordamientos, suelte. Para evitar el desbordamiento, necesitamos extender el tamaño de la piscina delgada.

Importante: Thin-pools son solo un volumen lógico, por lo que si necesitamos extender el tamaño de thin-pool podemos usar el mismo comando como, hemos usado para extender volúmenes lógicos, pero no podemos reducir el tamaño de thin -piscina.

# lvextend

Aquí podemos ver cómo extender el thin-pool lógico ( tp_tecmint_pool ).

# lvextend -L +15G /dev/vg_thin/tp_tecmint_pool

A continuación, enumere el tamaño del grupo delgado.

# lvs

Anteriormente, nuestro tamaño de tp_tecmint_pool era de 15 GB y 4 volúmenes delgados, que superaban la provisión en 20 GB. Ahora se ha ampliado a 30 GB, por lo que nuestro aprovisionamiento excesivo se ha normalizado y los volúmenes delgados están libres de desbordamiento y caída. De esta forma, puede agregar volúmenes cada vez más pequeños al grupo.

Aquí, hemos visto cómo crear un grupo delgado utilizando un grupo de volumen de gran tamaño y crear volúmenes delgados dentro de un grupo delgado mediante el sobreaprovisionamiento y la ampliación del grupo. En el próximo artículo veremos cómo configurar un LVM Striping.