Recientemente, un nuevo servidor SSD ha estado en línea. El costo del SSD es demasiado alto, por lo que el disco duro SSD en línea no puede tener directamente una capacidad de unos pocos TB como HDD. Solo puede expandir gradualmente el disco duro de acuerdo con las necesidades comerciales, por lo que el tema. De este artículo nace: Linux Expande dinámicamente la capacidad del disco duro manteniendo los datos originales sin cambios.

En el sentido tradicional, la expansión del disco duro VPS utiliza el montaje, es decir, volver a dividir un nuevo disco duro en otra partición y luego montar la partición en un determinado directorio del disco duro original. Este método es simple y conveniente. Es factible si solo se usa para expandir el almacenamiento, pero es insuficiente para servicios de almacenamiento con múltiples necesidades.

La expansión dinámica del disco duro consiste en aumentar o disminuir la capacidad de espacio del disco duro manteniendo los datos originales sin cambios, para satisfacer nuestras necesidades diarias de creación de sitios web. Este artículo presentará cómo Linux LVM administra el espacio en disco. LVM es un mecanismo para administrar particiones de disco en el entorno Linux.

Expansión dinámica del disco duro de servidores independientes de Linux y hosts VPS: métodos de reducción y expansión del volumen lógico LVM

Linux LVM es una capa lógica integrada en el disco duro, la partición y el sistema de archivos, que puede mejorar la flexibilidad de la administración de particiones del disco. En cuanto a los problemas de gestión del espacio en disco de Linux, también podemos solucionar el problema del espacio insuficiente limpiando, montando discos en la nube, compartiendo, etc. Aquí están:

  1. Solución al error de espacio lleno en el disco del sistema Linux: no queda espacio en el dispositivo
  2. VPS monta discos de red nacionales y extranjeros para lograr herramientas de expansión gratuitas: Rclone, COS-Fuse y OSSFS
  3. Tres formas de compartir directorios de carpetas en Linux: montaje remoto NFS, almacenamiento compartido GlusterFS y directorios compartidos samba

1. El comando resize2fs expande directamente la capacidad.

Ejemplo de uso de comando:

resize2fs -f /dev/vda1  #针对的是ext2、ext3、ext4文件系统
#参数说明
-d:打开调试特性;
-p:打印已完成的百分比进度条;
-f:强制执行调整大小操作,覆盖掉安全检查操作;
-F:开始执行调整大小前,刷新文件系统设备的缓冲区。

Si su partición de Linux usa LVM (el LVM usado por SolusVM VPS), entonces puede usar directamente el comando resize2fs para expandir el disco original. Esta situación generalmente ocurre cuando la capacidad del disco duro verificada usando el comando df -h es menor que la capacidad de la partición del disco duro verificada usando el comando fdisk -l, como se muestra abajo:

Después de ejecutar el comando resize2fs para expandir la capacidad, verifique nuevamente y vea que la capacidad de la partición del disco duro ha aumentado.

2. Cree una nueva partición y móntela para ampliar la capacidad del disco duro.

Si su proveedor de alojamiento no particionó todos los discos duros cuando los asignó originalmente, o volvió a dividir el tamaño del disco duro (este es el caso con SolusVM VPS que actualiza el disco duro), entonces encontrará que puede usar el Comando df -h para ver el disco duro. La capacidad es igual a la capacidad de la partición del disco duro vista usando el comando fdisk –l, pero es menor que el espacio total de fdisk. mostrado a continuación:

En este momento, podemos crear una nueva partición y montarla en el disco duro para lograr la expansión de capacidad. Ejecute el comando: fdisk /dev/vda (ajuste la ruta del disco duro de acuerdo con la situación real), ingrese la partición fdisk e ingrese n (nueva partición) → p (primaria partición) → 1.2.3 (Número de partición) → Enter → p (ver partición) → w (guardar).

La partición recién creada no está en formato LVM. Necesitamos ingresar el comando fdisk nuevamente y luego ingresar: t (convertir formato) → número de partición 1.2.3 → 8e (LVM) → p (ver partición). ) → w ( guardar). Como se muestra abajo:

Usando el método anterior, creamos una nueva partición sda3 en el disco duro adicional de 3 GB y la configuramos en formato LVM. Reinicie el host VPS para que surta efecto o ejecute el comando (es posible que este comando no sea compatible con CentOS 6): partprobe. (Si el mensaje no existe, realice la instalación primero: yum -y install parted)

Utilice el siguiente comando para crear la partición completa como un volumen lógico LV: (Para una introducción detallada a PV, VG y LV, consulte la tercera parte)

pvcreate /dev/vda3  //创建物理卷
vgcreate qyfoutt /dev/vda3   //创建逻辑卷组
vgchange -ay qyfoutt //激活逻辑卷组
vgdisplay qyfoutt | grep "Total PE"  //查看该卷组所有的PE
lvcreate -l 17919 -n qimm qyfoutt  //创建逻辑卷
mkfs.ext4 /dev/qyfoutt/qimm //格式化逻辑卷

Aquí creo un grupo de volúmenes lógicos llamado qyfoutt, con un total de 70 GB disponibles para asignación. Luego se creó un volumen lógico llamado qimm y se le asignaron 70 GB. Se monta automáticamente en el arranque y la partición /dev/qyfoutt/qimm recién agregada se monta en un directorio determinado. El formato es el siguiente:

vim /etc/fstab 
/dev/sdb1(磁盘分区)  /data1(挂载目录-需要提前创建好) ext4(文件格式,也可写ext3)defaults  0  0 

/dev/qyfoutt/qimm     /ttfou            ext4    defaults        0 0

Monte todos los directorios: mount -a (tenga en cuenta que está en inglés -) y el montaje se realizará correctamente.

3. El nuevo disco duro se expande directamente al disco duro original.

Si compra un segundo disco duro, no es necesario montarlo en este momento. Puede agregar directamente la capacidad de espacio del nuevo disco duro al disco duro original. Como se muestra en la imagen a continuación, ya existe un disco duro de 256 GB (dividido en 3 particiones, de las cuales sda3 está en formato lvm). De acuerdo con el método anterior para crear una nueva partición, divida todo el disco duro en una partición: sdb1.

3.1  Crear un nuevo volumen físico PV

Comandos básicos:

pvcreate /dev/sda3 #新建PV
#有两个以上的分区还可以一起新建PV
pvcreate /dev/sda3 /dev/sdb1

-f:强制创建物理卷,不需要用户确认;
-u:指定设备的UUID;
-y:所有的问题都回答“yes”;
-Z:是否利用前4个扇区。

pvs  #查看pv基本信息
pvdisplay  #查看pv详细信息

Como se muestra a continuación, se crea un volumen físico PV para sdb1.

3.2  Expandiendo el grupo de volúmenes VG

De acuerdo con el método anterior, creamos PV, VG y LV, y montamos el LV en un directorio determinado. Ahora agregue el PV que se construirá al VG original. Ejemplo de comando básico:

vgcreate wzfou /dev/sda3 /dev/sdb1 #将两个PV卷加入到卷组wzfou
-l:卷组上允许创建的最大逻辑卷数;
-p:卷组中允许添加的最大物理卷数;
-s:卷组上的物理卷的PE大小。

vgs或者vgdisplay来查看创建的卷组

vgextend qyfoutt /dev/sdb1 #扩容VG组

Como se muestra en la imagen a continuación, agregué sdb1 y sda3 al mismo grupo VG.

s puede especificar el tamaño del PE. Por ejemplo, durante el proceso de instalación controlada y maestra de SolusVM, requerimos que el PE sea de 128 MB. Aquí podemos especificar el tamaño del PE a través de este comando. Si hay nuevos PV más adelante, puede continuar agregándolos a VG:

3.3  Expandir el volumen lógico LV

Ya hemos ampliado la capacidad del volumen VG arriba. Ahora solo necesitamos expandir el LV original a toda la capacidad del volumen VG.

vgdisplay qyfoutt | grep "Total PE"  #查看所有PE

lvresize -l 1279 /dev/qyfoutt/qimm  #将VG组所有空间都给LV,1279是最后一个PE

resize2fs /dev/qyfoutt/qimm  #重设LV大小

Ejemplo: el grupo VG tiene 5 GB de capacidad y el LV bajo VG tiene solo 3 GB.

Ahora todos los 2 GB de espacio restantes del grupo VG se entregan al LV para completar la expansión del LV.

4. Resumen

Si desea expandir el disco duro, se recomienda usar LVM para administrar la expansión del disco duro. Si desea agregar más discos duros más adelante, es un asunto muy simple para LVM. La secuencia básica de expansión es: Agregar PV → expansión del grupo VG → expansión LV .

Hay dos formas de agregar PV: una es agregar un nuevo disco duro y luego particionarlo, y la otra es crear una nueva partición en el disco duro original. No importa qué método se utilice para expandir el disco duro, primero debe crear el volumen físico PV, luego crear el grupo de volúmenes VG y finalmente crear el volumen lógico LV.

Deja una respuesta