LINUX

Cómo crear un espejo Lvm en Linux

crear espejo lvm

En el mundo de la informática, el almacenamiento es el factor más importante. Si se pierden datos, entonces todo se pierde para la organización o empresa. Inicialmente, los datos se almacenan en discos normales, no tiene la flexibilidad para administrar los datos y es muy complicado y desastroso para la gestión de la recuperación. Para lograr la flexibilidad y el objetivo de la gestión de recuperación ante desastres, se introduce RAID. Con RAID, se puede mantener la redundancia, pero aún no tiene la flexibilidad para administrar el sistema de archivos y el almacenamiento. El Administrador de volumen lógico (LVM) proporciona una vista de nivel superior del almacenamiento en disco. LVM se asocia tradicionalmente con una instalación grande que contiene muchos discos e incluso se usa mucho en un entorno pequeño.

LVM tiene muchas características, como cambiar el tamaño de los grupos de volúmenes en línea absorbiendo nuevos volúmenes físicos (PV) o eliminando PV existentes y cambiando el tamaño de los volúmenes lógicos (LV) en línea agregando o quitando extensiones físicas al LV existente. Con LVM puede crear instantáneas de solo lectura y de lectura y escritura de LV. Es posible dividir o duplicar todo o partes de LV en múltiples PV, similar a RAID 0 o RAID 1. Es posible mover LV en línea entre PV. El LVM también funcionará en un clúster de almacenamiento compartido. Mostraremos los pasos para crear la duplicación de LVM.

1) Crear partición

Para crear un espejo LVM, debe asegurarse de tener espacio libre. En nuestro caso, crearemos dos particiones usando el comando fdisk (puede usar una partición o todo el disco). Antes de crear la partición, asegúrese de saber cuántos cilindros se han utilizado y cuántos están libres.

Comprobando el espacio libre para crear una partición.

# fdisk -l

Disk /dev/sdf: 10.7 GB, 10737418240 bytes
 255 heads, 63 sectors/track, 1305 cylinders
 Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
 /dev/sdf1 * 1 765 6144831 83 Linux
 /dev/sdf2 766 892 1020127+ 82 Linux swap / Solaris

El comando anterior muestra que los cilindros totales son 1305 y los cilindros usados ​​son 892. Significa que aún tiene cilindros libres, por lo tanto, podemos crear una partición.

Creando dos nuevas particiones usando fdisk.

# fdisk /dev/sdf 
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): n
Partition type:
 p primary (2 primary, 0 extended, 2 free)
 e extended
Select (default p): p
Partition number (3,4, default 3): 
First sector (391168-20971519, default 391168): 
Using default value 391168
Last sector, +sectors or +size{K,M,G} (391168-20971519, default 20971519): +100MB
Partition 3 of type Linux and of size 95 MiB is set

Command (m for help): t
Partition number (1-3, default 3): 
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help): n
Partition type:
 p primary (3 primary, 0 extended, 1 free)
 e extended
Select (default e): p
Selected partition 4
First sector (585728-20971519, default 585728): 
Using default value 585728
Last sector, +sectors or +size{K,M,G} (585728-20971519, default 20971519): +100MB
Partition 4 of type Linux and of size 95 MiB is set

Command (m for help): t
Partition number (1-4, default 4): 
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help): p

Disk /dev/sdf: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xabe92155

 Device Boot Start End Blocks Id System
/dev/sdf1 * 1 765 6144831 83  Linux
/dev/sdf2 766 892 1020127+ 82 Linux swap/Solaris
/dev/sdf3 391168 585727 97280 8e Linux LVM
/dev/sdf4 585728 780287 97280 8e Linux LVM

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Asegúrese de que el ID de la partición debe ser 8e al crear particiones.

2) Crea volumen físico

Ahora que tenemos particiones libres, necesitamos crear un volumen físico con las particiones anteriores.

Crea volumen físico

# pvcreate /dev/sdf[3,4]
 Physical volume "/dev/sdf3" successfully created
 Physical volume "/dev/sdf4" successfully created

El comando anterior inicializará la partición como partición LVM. Aquí LVM asignará PV y UUID solo a la partición.

3) Crear grupo de volumen

Ahora que hemos creado nuestro volumen físico, necesitamos crear un grupo de volúmenes. Si ya tiene un VG basado en dos o más discos / particiones con espacio libre, no necesita crear un nuevo grupo de volúmenes

Crear grupo de volumen

# vgcreate datavg /dev/sdf[3,4]
 Volume group "datavg" successfully created

El comando anterior creará grupos de volúmenes como datavg. LVM crea el área de descriptor de grupo de volumen (VGDA). El VGDA contiene información sobre los grupos de volúmenes. LVM crea Extensión física (PE).

4) Creación de volumen lógico reflejado

Al crear volúmenes reflejados en un grupo de volúmenes en particular, debe especificar el número de copias de los datos requeridos con -m argumento del comando lvcreate. Para crear 1 copia espejo de datos, debe especificar como -m1. Especificando -m1 crea un espejo, que produce dos copias del sistema de archivos.

Crear lv reflejado

# lvcreate -L 50M -m1 -n mirrorlv datavg
 Rounding up size to full physical extent 52.00 MB
 Logical volume "mirrorlv" created

En el comando anterior, hemos creado 50 MB del LV de tamaño con 1 copia de datos para mantener. Podemos comprobar con

# lvs
 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
 root centos -wi-ao---- 17.47g 
 swap centos -wi-ao---- 2.00g 
 mirrorlv datavg rwi-a-r--- 50MB

Puede comprobar el estado de su LV reflejado con lvdisplay -v mando. Simplemente busque información sobre el volumen lógico creado anteriormente como se muestra a continuación

 # lvdisplay -v

--- Logical volume ---
  LV Path                /dev/datavg/mirrorlv
  LV Name                mirrorlv1
  VG Name                datavg
  LV UUID                J2kcdf-YxAn-k2d2-KFGS-pnhb-0Zhz-GRECFr
  LV Write Access        read/write
  LV Creation host, time centos7-srv, 2017-05-08 03:17:28 +0100
  LV Status              available
  # open                 0
  LV Size                52.00 MiB
  Current LE             13
  Mirrored volumes       2
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:18

Puedes ver Mirrored volumes 2 línea que indica la cantidad de discos utilizados para el volumen lógico y, también podemos deducir otra información que es el tipo de nuestro volumen lógico: reflejado.

5) Crea un sistema de archivos y monta

Ahora que hemos creado nuestro volumen lógico, necesitamos crear un sistema de archivos para poder acceder a él.

Utilice los siguientes comandos para crear un sistema de archivos.

# mkfs:ext4 /dev/datavg/mirrorlv
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
13328 inodes, 53248 blocks
2662 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=54525952
7 block groups
8192 blocks per group, 8192 fragments per group
1904 inodes per group
Superblock backups stored on blocks: 
 8193, 24577, 40961

Allocating group tables: done 
Writing inode tables: done 
Writing superblocks and filesystem accounting information: done.

Ahora podemos montar el sistema de archivos en una ubicación de nuestra elección. El método más utilizado para montar el sistema de archivos es manualmente o mediante el comando mount o agregando entradas en /etc/fstab para que el sistema de archivos se haya montado durante el arranque.

Monte el sistema de archivos en /mnt/mirrorlv localización

# mount /dev/datavg/mirrorlv /mnt/mirrorlv

Puede verificar ejecutando el comando.

df -Ph
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 18G 5.2G 13G 30% /
devtmpfs 897M 0 897M 0% /dev
tmpfs 912M 156K 912M 1% /dev/shm
tmpfs 912M 9.1M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 497M 189M 309M 38% /boot
tmpfs 183M 8.0K 183M 1% /run/user/1000
/dev/mapper/datavg-mirrorlv 51M 842K 47M 2% /mnt/mirrorlv

Conclusión

Un espejo mantiene copias idénticas de datos en diferentes dispositivos. Cuando los datos se escriben en un dispositivo, también se escriben en un segundo dispositivo, reflejando los datos. Esto proporciona protección contra fallas del dispositivo.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar