Recentemente, um novo servidor SSD está online. O custo do SSD é muito alto, então o disco rígido SSD online não pode ter capacidade direta de alguns TB como o HDD. Ele só pode expandir gradualmente o disco rígido de acordo com as necessidades do negócio, por isso o tema. deste artigo nasce: Linux expande dinamicamente a capacidade do disco rígido enquanto mantém os dados originais inalterados.

No sentido tradicional, a expansão do disco rígido VPS utiliza montagem, ou seja, redividir um novo disco rígido em outra partição e, em seguida, montar a partição em um determinado diretório do disco rígido original. Esta abordagem é simples e conveniente. É viável se for usada apenas para expansão de armazenamento, mas é insuficiente para serviços de armazenamento com múltiplas necessidades.

A expansão dinâmica do disco rígido consiste em aumentar ou diminuir a capacidade de espaço do disco rígido, mantendo os dados originais inalterados, de modo a atender às nossas necessidades diárias de construção de sites. Este artigo apresentará como o Linux LVM gerencia o espaço em disco. LVM é um mecanismo para gerenciar partições de disco no ambiente Linux.

Expansão dinâmica de disco rígido de servidores independentes Linux e hosts VPS - métodos de expansão e redução de volume lógico LVM

Linux LVM é uma camada lógica construída no disco rígido e na partição e no sistema de arquivos, que pode melhorar a flexibilidade do gerenciamento de partição de disco. Em relação aos problemas de gerenciamento de espaço em disco do Linux, também podemos resolver o problema de espaço insuficiente limpando, montando discos em nuvem, compartilhando, etc.

  1. Solução para espaço em disco do sistema Linux cheio - erro de nenhum espaço restante no dispositivo
  2. VPS monta discos de rede nacionais e estrangeiros para obter ferramentas de expansão gratuitas: Rclone, COS-Fuse e OSSFS
  3. Três maneiras de compartilhar diretórios de pastas no Linux - montagem remota NFS, armazenamento compartilhado GlusterFS e diretórios compartilhados samba

1. O comando resize2fs expande diretamente a capacidade.

Exemplo de uso de comando:

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

Se a sua partição Linux usa LVM (o LVM usado pelo SolusVM VPS), você pode usar diretamente o comando resize2fs para expandir o disco original. Esta situação geralmente ocorre quando a capacidade do disco rígido verificada usando o comando df -h é menor que a capacidade da partição do disco rígido verificada usando o comando fdisk -l, conforme mostrado abaixo:

Após executar o comando resize2fs para expandir a capacidade, verifique novamente e veja se a capacidade da partição do disco rígido aumentou.

2. Crie uma nova partição e monte-a para expandir a capacidade do disco rígido.

Se o seu provedor de hospedagem não particionou todos os discos rígidos quando os alocou originalmente, ou redividiu o tamanho do disco rígido (este é o caso da atualização do disco rígido do SolusVM VPS), então você descobrirá que pode usar o Comando df -h para visualizar o disco rígido A capacidade é igual à capacidade da partição do disco rígido visualizada usando o comando fdisk –l, mas é menor que o espaço total do fdisk, como. mostrado abaixo:

Neste momento, podemos criar uma nova partição e montá-la no disco rígido para obter expansão de capacidade. Execute o comando: fdisk /dev/vda (ajuste o caminho do disco rígido de acordo com a situação real), insira a partição fdisk e insira n (nova partição) → p (primária partição) → 1.2.3 (Número da partição) → Enter → p (ver partição) → w (salvar).

A partição recém-criada não está no formato LVM. Precisamos inserir o comando fdisk novamente e, em seguida, inserir: t (formato de conversão) → número da partição 1.2.3 → 8e (LVM) → p (visualizar partição. ) → w ( salvar). Como mostrado abaixo:

Usando o método acima, criamos uma nova partição sda3 no disco rígido extra de 3 GB e configuramos para o formato LVM. Reinicie o host VPS para ter efeito ou execute o comando (este comando pode não ser suportado no CentOS 6): partprobe. (Se o prompt não existir, execute a instalação primeiro: yum -y install parted)

Use o seguinte comando para criar a partição inteira como um volume lógico LV: (Para uma introdução detalhada a PV, VG e LV, consulte a terceira 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 //格式化逻辑卷

Aqui eu crio um grupo de volumes lógicos chamado qyfoutt, com um total de 70GB disponíveis para alocação. Em seguida, um volume lógico chamado qimm foi criado e 70 GB foram atribuídos a ele. Ele é montado automaticamente na inicialização e a partição /dev/qyfoutt/qimm recém-adicionada é montada em um determinado diretório. O formato é o seguinte:

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

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

Monte todos os diretórios: mount -a (observe que está em inglês -) e a montagem será bem-sucedida.

3. O novo disco rígido é expandido diretamente para o disco rígido original.

Se você comprar um segundo disco rígido, não há necessidade de montá-lo neste momento. Você pode adicionar diretamente a capacidade de espaço do novo disco rígido ao disco rígido original. Conforme mostrado na imagem abaixo, já existe um disco rígido de 256GB (dividido em 3 partições, das quais sda3 está no formato lvm). De acordo com o método de criação de uma nova partição acima, divida todo o disco rígido em uma partição: sdb1.

3.1  Crie um novo volume 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详细信息

Conforme mostrado abaixo, um volume físico PV é criado para sdb1.

3.2  Expandindo o grupo de volumes VG

De acordo com o método acima, criamos PV, VG e LV e montamos o LV em um determinado diretório. Agora adicione o PV a ser construído ao VG original. Exemplo de comando básico:

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

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

vgextend qyfoutt /dev/sdb1 #扩容VG组

Conforme mostrado na imagem abaixo, adicionei sdb1 e sda3 ao mesmo grupo VG.

s pode especificar o tamanho do PE. Por exemplo, durante o processo de instalação mestre e controlada do SolusVM, exigimos que o PE seja 128 MB. Se houver novos PVs posteriormente, você poderá continuar a adicioná-los ao VG:

3.3  Expandir volume lógico LV

Já expandimos a capacidade do volume VG acima. Agora só precisamos expandir o LV original para toda a capacidade do volume VG.

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

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

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

Exemplo: O grupo VG tem capacidade de 5GB e o LV sob VG tem apenas 3GB.

Agora todo o espaço restante de 2 GB do grupo VG é dado ao LV para completar a expansão do LV.

4. Resumo

Se você deseja expandir o disco rígido, é recomendado usar o LVM para gerenciar a expansão do disco rígido. Se você quiser adicionar mais discos rígidos posteriormente, é uma questão muito simples para o LVM. A sequência básica de expansão é: Adicionar PV → expansão do grupo VG → expansão LV .

Existem duas maneiras de adicionar PV: uma é adicionar um novo disco rígido e particioná-lo, e a outra é criar uma nova partição no disco rígido original. Não importa qual método seja usado para expandir o disco rígido, você deve primeiro criar o volume físico PV, depois criar o grupo de volumes VG e, finalmente, criar o volume lógico LV.

Deixe uma resposta