Recentemente, un nuovo server SSD è stato online. Il costo dell'SSD è troppo alto, quindi il disco rigido SSD online non può avere direttamente una capacità di pochi TB come l'HDD. Può espandere il disco rigido solo gradualmente in base alle esigenze aziendali, quindi il tema di questo articolo nasce: Linux Espande dinamicamente la capacità del disco rigido mantenendo invariati i dati originali.

Nel senso tradizionale, l'espansione del disco rigido VPS utilizza il montaggio, ovvero la ridivisione di un nuovo disco rigido in un'altra partizione e quindi il montaggio della partizione in una determinata directory del disco rigido originale. Questo approccio è semplice e conveniente. È fattibile se utilizzato solo per l'espansione dello storage, ma non è sufficiente per servizi di storage con molteplici esigenze.

L'espansione dinamica del disco rigido consiste nell'aumentare o diminuire la capacità di spazio del disco rigido mantenendo invariati i dati originali, in modo da soddisfare le nostre esigenze quotidiane di creazione di siti Web. Questo articolo introdurrà il modo in cui Linux LVM gestisce lo spazio su disco LVM è un meccanismo per la gestione delle partizioni del disco nell'ambiente Linux.

Espansione dinamica del disco rigido di server indipendenti Linux e host VPS: metodi di espansione e riduzione del volume logico LVM

Linux LVM è un livello logico costruito sul disco rigido, sulla partizione e nel file system, che può migliorare la flessibilità della gestione delle partizioni del disco. Per quanto riguarda i problemi di gestione dello spazio su disco di Linux, possiamo anche risolvere il problema dello spazio insufficiente pulendo, montando dischi cloud, condividendo, ecc. Ecco:

  1. Soluzione per l'errore di spazio su disco del sistema Linux pieno: spazio insufficiente sul dispositivo
  2. VPS monta dischi di rete nazionali ed esteri per ottenere strumenti di espansione gratuiti: Rclone, COS-Fuse e OSSFS
  3. Tre modi per condividere le directory delle cartelle in Linux: montaggio remoto NFS, archiviazione condivisa GlusterFS e directory condivise Samba

1. Il comando resize2fs espande direttamente la capacità.

Esempio di utilizzo del comando:

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

Se la tua partizione Linux utilizza LVM (l'LVM utilizzato da SolusVM VPS), puoi utilizzare direttamente il comando resize2fs per espandere il disco originale. Questa situazione si verifica generalmente quando la capacità del disco rigido controllata utilizzando il comando df -h è inferiore alla capacità della partizione del disco rigido controllata utilizzando il comando fdisk -l, come mostrato sotto:

Dopo aver eseguito il comando resize2fs per espandere la capacità, ricontrolla e verifica che la capacità della partizione del disco rigido sia aumentata.

2. Creare una nuova partizione e montarla per espandere la capacità del disco rigido.

Se il tuo provider di hosting non ha partizionato tutti i dischi rigidi al momento dell'allocazione originaria o non ha suddiviso nuovamente la dimensione del disco rigido (questo è il caso di SolusVM VPS che aggiorna il disco rigido), scoprirai che puoi utilizzare comando df -h per visualizzare il disco rigido La capacità è uguale alla capacità della partizione del disco rigido visualizzata utilizzando il comando fdisk –l, ma è inferiore allo spazio totale di fdisk, come. mostrato di seguito:

A questo punto, possiamo creare una nuova partizione e montarla sul disco rigido per ottenere l'espansione della capacità. Esegui il comando: fdisk /dev/vda (adatta il percorso del disco rigido in base alla situazione attuale), inserisci la partizione fdisk e inserisci n (nuova partizione) → p (primaria partizione) → 1.2.3 (Numero della partizione) → Invio → p (visualizza partizione) → w (salva).

La partizione appena creata non è in formato LVM Dobbiamo inserire nuovamente il comando fdisk, quindi inserire: t (converti formato) → numero di partizione 1.2.3 → 8e (LVM) → p (visualizza partizione). ) → w (salva). Come mostrato di seguito:

Utilizzando il metodo sopra, abbiamo creato una nuova partizione sda3 sul disco rigido da 3 GB extra e l'abbiamo impostata sul formato LVM. Riavviare l'host VPS affinché abbia effetto o eseguire il comando (questo comando potrebbe non essere supportato in CentOS 6): partprobe. (Se il prompt non esiste, eseguire prima l'installazione: yum -y install parted)

Utilizzare il seguente comando per creare l'intera partizione come volume logico LV: (Per un'introduzione dettagliata a PV, VG e LV, fare riferimento alla terza 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 //格式化逻辑卷

Qui creo un gruppo di volumi logici denominato qyfoutt, con un totale di 70 GB disponibili per l'allocazione. Quindi è stato creato un volume logico denominato qimm e gli sono stati assegnati 70 GB. Viene montata automaticamente all'avvio e la partizione /dev/qyfoutt/qimm appena aggiunta viene montata in una determinata directory. Il formato è il seguente:

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

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

Montare tutte le directory: mount -a (nota che è in inglese -) e il montaggio ha esito positivo.

3. Il nuovo disco rigido viene espanso direttamente sul disco rigido originale.

Se acquisti un secondo disco rigido, al momento non è necessario montarlo. Puoi aggiungere direttamente la capacità di spazio del nuovo disco rigido al disco rigido originale. Come mostrato nell'immagine sotto, è già presente un hard disk da 256GB (diviso in 3 partizioni, di cui sda3 è in formato lvm). Secondo il metodo di creazione di una nuova partizione sopra descritto, dividi l'intero disco rigido in una partizione: sdb1.

3.1  Creare un nuovo volume fisico FV

Comandi di base:

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

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

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

Come mostrato di seguito, viene creato un volume fisico PV per sdb1.

3.2  Espansione del gruppo di volumi VG

Secondo il metodo sopra, abbiamo creato PV, VG e LV e montato LV in una determinata directory. Ora aggiungi il PV da costruire al VG originale. Esempio di comando di base:

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

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

vgextend qyfoutt /dev/sdb1 #扩容VG组

Come mostrato nell'immagine qui sotto, ho aggiunto sdb1 e sda3 allo stesso gruppo VG.

È possibile specificare la dimensione del PE. Ad esempio, durante il processo di installazione controllata e master di SolusVM, è necessario che il PE sia di 128 MB. Qui possiamo specificare la dimensione del PE tramite questo comando. Se in seguito ci sono nuovi PV, puoi continuare ad aggiungerli a VG:

3.3  Espande il volume logico LV

Abbiamo già ampliato la capacità del volume VG sopra. Ora dobbiamo solo espandere il LV originale all'intera capacità del volume VG. Il comando è il seguente:

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

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

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

Esempio: il gruppo VG ha una capacità di 5 GB e il gruppo LV sotto VG ha solo 3 GB.

Ora tutto lo spazio restante di 2 GB del gruppo VG viene assegnato a LV per completare l'espansione di LV.

4. Riepilogo

Se desideri espandere il disco rigido, si consiglia di utilizzare LVM per gestire l'espansione del disco rigido. Se desideri aggiungere altri dischi rigidi in un secondo momento, è una questione molto semplice per LVM. La sequenza base dell'espansione è: Aggiungi PV → Espansione gruppo VG → Espansione LV .

Esistono due modi per aggiungere PV: uno è aggiungere un nuovo disco rigido e quindi partizionarlo, e l'altro è creare una nuova partizione sul disco rigido originale. Indipendentemente dal metodo utilizzato per espandere il disco rigido, è necessario prima creare il volume fisico PV, quindi creare il gruppo di volumi VG e infine creare il volume logico LV.

lascia un commento