Gerenciamento de volume lógico - Logical volume management

No armazenamento do computador , o gerenciamento de volume lógico ou LVM fornece um método de alocação de espaço em dispositivos de armazenamento em massa que é mais flexível do que os esquemas de particionamento convencionais para armazenar volumes. Em particular, um gerenciador de volume pode concatenar, stripe juntos ou não combinar partições (ou dispositivos de bloco em geral) em partições virtuais maiores que os administradores podem re-size ou movimento, potencialmente sem interromper o uso do sistema.

O gerenciamento de volume representa apenas uma das muitas formas de virtualização de armazenamento ; sua implementação ocorre em uma camada na pilha de driver de dispositivo de um sistema operacional (SO) (em oposição a dispositivos de armazenamento ou em uma rede).

Projeto

Linux Logical Volume Manager (LVM) v1

A maioria das implementações de gerenciador de volume compartilham o mesmo design básico. Eles começam com volumes físicos (PVs), que podem ser discos rígidos , partições de disco rígido ou números de unidade lógica (LUNs) de um dispositivo de armazenamento externo. O gerenciamento de volume trata cada PV como sendo composto de uma sequência de blocos chamados extensões físicas (PEs). Alguns gerenciadores de volume (como o do HP-UX e do Linux) têm PEs de tamanho uniforme; outros (como o da Veritas ) têm PEs de tamanhos variáveis ​​que podem ser divididos e mesclados à vontade.

Normalmente, os PEs simplesmente mapeiam um a um para extensões lógicas (LEs). Com o espelhamento, vários PEs são mapeados para cada LE. Esses PEs são retirados de um grupo de volume físico (PVG), um conjunto de PVs do mesmo tamanho que agem de forma semelhante aos discos rígidos em uma matriz RAID1. Os PVGs geralmente são dispostos de modo que residam em diferentes discos ou barramentos de dados para redundância máxima.

O sistema agrupa os LEs em um grupo de volume (VG). Os LEs agrupados podem então ser concatenados em partições de disco virtual chamadas de volumes lógicos ou LVs . Os sistemas podem usar LVs como dispositivos de bloco bruto , assim como as partições de disco: criando sistemas de arquivos montáveis neles ou usando-os como armazenamento de troca .

LVs listrados alocam cada LE sucessivo de um PV diferente; dependendo do tamanho do LE, isso pode melhorar o desempenho em grandes leituras sequenciais, trazendo para suportar a taxa de transferência de leitura combinada de vários PVs.

Os administradores podem aumentar os LVs (concatenando mais LEs) ou reduzi-los (retornando LEs ao pool). Os LEs concatenados não precisam ser contíguos. Isso permite que os LVs cresçam sem ter que mover os LEs já alocados. Alguns gerenciadores de volume permitem o redimensionamento de LVs em qualquer direção enquanto estão online. Alterar o tamanho do LV não altera necessariamente o tamanho de um sistema de arquivos nele; ele simplesmente muda o tamanho do espaço que o contém. Um sistema de arquivos que pode ser redimensionado online é recomendado, pois permite que o sistema ajuste seu armazenamento em tempo real, sem interromper os aplicativos.

PVs e LVs não podem ser compartilhados ou abrangem diferentes VGs (embora alguns gerenciadores de volume possam permitir movê-los à vontade entre VGs no mesmo host). Isso permite aos administradores colocar VGs online de maneira conveniente, colocá-los offline ou movê-los entre sistemas host como uma única unidade administrativa.

Os VGs podem aumentar seu pool de armazenamento absorvendo novos PVs ou diminuir ao se retrair dos PVs. Isso pode envolver a movimentação de LEs já alocados para fora do PV. A maioria dos gerenciadores de volume pode realizar esse movimento online; se o hardware subjacente for hot-plug, isso permite que os engenheiros atualizem ou substituam o armazenamento sem tempo de inatividade do sistema.

Conceitos

Volume híbrido

Um volume híbrido é qualquer volume que faz uso intencional e opaca de dois volumes físicos separados. Por exemplo, uma carga de trabalho pode consistir em buscas aleatórias para que um SSD possa ser usado para armazenar permanentemente dados usados ​​com frequência ou recentemente gravados, enquanto usa mídia magnética rotacional de maior capacidade para armazenamento de longo prazo de dados raramente necessários. No Linux, bcache ou dm-cache podem ser usados ​​para esse propósito, enquanto Fusion Drive pode ser usado no OS X. O ZFS também implementa essa funcionalidade no nível do sistema de arquivos , permitindo que os administradores configurem o cache de leitura / gravação de vários níveis.

Os volumes híbridos apresentam um conceito semelhante aos drives híbridos , que também combinam armazenamento de estado sólido e mídia magnética rotacional.

Instantâneos

Alguns gerenciadores de volume também implementam instantâneos aplicando cópia na gravação a cada LE. Neste esquema, o gerenciador de volume copiará o LE para uma tabela copy-on-write pouco antes de ser escrito. Isso preserva uma versão antiga do LV, o instantâneo, que pode ser reconstruído posteriormente sobrepondo a tabela de cópia na gravação sobre o LV atual. A menos que o gerenciamento de volume ofereça suporte a provisionamento thin e descarte, uma vez que um LE no volume de origem é gravado, ele é armazenado permanentemente no volume de instantâneo. Se o volume do instantâneo for menor do que sua origem, o que é uma prática comum, isso pode tornar o instantâneo inoperável.

Os instantâneos podem ser úteis para fazer backup de versões autoconsistentes de dados voláteis, como arquivos de tabela de um banco de dados ocupado, ou para reverter grandes alterações (como uma atualização do sistema operacional) em uma única operação. Os instantâneos têm um efeito semelhante ao da renderização do armazenamento quiescente e são semelhantes ao serviço de cópia de sombra (VSS) no Microsoft Windows.

Alguns Live CDs baseados em Linux também usam instantâneos para simular o acesso de leitura e gravação a um disco óptico somente leitura .

Implementações

Fornecedor Introduzido em Gerenciador de volume Alocar em qualquer lugar Instantâneos RAID 0 RAID 1 RAID 5 RAID 10 Provisionamento fino Notas
IBM AIX 3.0 (1989) Gerenciador de volume lógico sim sim sim sim Não sim Refere-se a PEs como PPs (partições físicas) e a LEs como LPs (partições lógicas). Não possui um mecanismo de instantâneo copy-on-write; cria instantâneos congelando um volume de um par de espelho.
Hewlett-Packard HP-UX 9.0 HP Logical Volume Manager sim sim sim sim Não sim
FreeBSD Vinum Volume Manager sim sim sim sim sim sim O sistema de arquivos rápido FreeBSD (UFS) suporta instantâneos.
FreeBSD ZFS sim sim sim sim sim sim sim Um sistema de arquivos com gerenciamento de volume integrado
NetBSD Gerenciador de volume lógico sim Não sim sim Não Não O NetBSD da versão 6.0 suporta sua própria reimplementação do Linux LVM. A reimplementação é baseada em um driver de mapeamento de dispositivo licenciado BSD e usa uma porta de ferramentas lvm do Linux como parte do espaço de usuário do LVM. Não há necessidade de suportar RAID5 no LVM por causa do subsistema NetBSD RAIDFrame superior.
NetBSD ZFS sim sim sim sim sim sim sim Um sistema de arquivos com gerenciamento de volume integrado
The NetBSD Foundation, Inc. NetBSD § 5.0 (2009) bioctl arcmsr Não Não sim sim sim sim bioctl no NetBSD pode ser usado para manutenção e inicialização de RAID de hardware, embora a inicialização (por meio de BIOCVOLOPS ioctl ) só seja suportada por um único driver a partir de 2019 - arcmsr(4) ; RAID de software é suportado separadamente por RAIDframe e ZFS
O Projeto OpenBSD OpenBSD 4.2 (2007) bioctl softraid sim Não sim sim sim sim bioctl no OpenBSD pode ser usado para manutenção de RAID de hardware, bem como para inicialização e manutenção de RAID de software
Linux 2.2 Logical Volume Manager versão 1 sim sim sim sim Não Não
Linux 2.4 Sistema de gerenciamento de volume empresarial sim sim sim sim sim Não
Linux 2.6 e superior Logical Volume Manager versão 2 sim sim sim sim sim sim sim
Linux 2.6 e superior Btrfs sim sim sim sim Sim (instável) sim N / D Um sistema de arquivos com gerenciamento de volume integrado
Silicon Graphics IRIX ou Linux XVM Volume Manager sim sim sim sim sim
Sun Microsystems SunOS Solaris Volume Manager (era Solstice DiskSuite ). Não Não sim sim sim sim Refere-se a PVs como volumes (que podem ser combinados com primitivos RAID0, RAID1 ou RAID5 em volumes maiores), a LVs como partições suaves (que são extensões contíguas que podem ser colocadas em qualquer lugar nos volumes, mas que não podem abranger vários volumes) e a VGs como disco conjuntos.
Sun Microsystems Solaris 10 ZFS sim sim sim sim sim sim sim Um sistema de arquivos com gerenciamento de volume integrado
Illumos ZFS sim sim sim sim sim sim sim Um sistema de arquivos com gerenciamento de volume integrado
Veritas Cross-OS Veritas Volume Manager (VxVM) sim sim sim sim sim sim Refere-se a LVs como volumes , a VGs como grupos de discos ; tem PEs de tamanhos variáveis ​​chamados subdiscos e LEs chamados plexos .
Microsoft Windows 2000 e sistemas operacionais baseados em NT posteriores Gerenciador de disco lógico sim sim sim sim sim Não Não Não tem um conceito de PEs ou LEs; só pode RAID0, RAID1, RAID5 ou concatenar partições de disco em volumes maiores; os sistemas de arquivos devem abranger volumes inteiros.
Windows 8 Espaços de Armazenamento sim sim Não sim sim Não sim Lógica de nível superior que RAID1 e RAID5 - vários espaços de armazenamento abrangem vários discos de tamanhos diferentes, os espaços de armazenamento são resilientes a falhas físicas com espelhamento (pelo menos 2 discos) ou paridade distribuída (pelo menos 3 discos), gerenciamento de disco e recuperação de dados é totalmente automático
Windows 10 Espaços de Armazenamento sim sim sim sim sim sim sim RAID 10 é chamado de espelhamento de disco
chapéu vermelho Linux 4.14 e superior Stratis sim sim Não Não Não Não sim Suporte RAID planejado na versão 2.0
maçã Mac OS X Lion Armazenamento de núcleo sim Não Não Não Não Não Não Atualmente, é usado na implementação do FileVault do Lion , a fim de permitir a criptografia total do disco , bem como o Fusion Drive , que é apenas um LVG multi-PV.

Os instantâneos são gerenciados pelo Time Machine ; O RAID baseado em software é fornecido pela AppleRAID. Ambos são separados do Core Storage.

Desvantagens

Os volumes lógicos podem sofrer fragmentação externa quando os dispositivos de armazenamento subjacentes não alocam seus PEs de forma contígua. Isso pode reduzir o desempenho de E / S em mídias de busca lenta, como discos magnéticos e outras mídias rotacionais. Os gerenciadores de volume que usam PEs de tamanho fixo, entretanto, normalmente tornam os PEs relativamente grandes (por exemplo, o Linux LVM usa 4 MB por padrão) a fim de amortizar o custo dessas buscas.

Com implementações que são unicamente gerenciamento de volume, como Core Storage e Linux LVM, separar e abstrair o gerenciamento de volume do sistema de arquivos perde a capacidade de tomar decisões de armazenamento facilmente para arquivos ou diretórios específicos. Por exemplo, se um determinado diretório (mas não todo o sistema de arquivos) deve ser movido permanentemente para um armazenamento mais rápido, o layout do sistema de arquivos e a camada de gerenciamento de volume subjacente precisam ser atravessados. Por exemplo, no Linux, seria necessário determinar manualmente o deslocamento do conteúdo de um arquivo em um sistema de arquivos e, em seguida, manualmente pvmove as extensões (junto com os dados não relacionados a esse arquivo) para o armazenamento mais rápido. Ter o gerenciamento de volume e arquivo implementado dentro do mesmo subsistema, em vez de tê-los implementados como subsistemas separados, torna o processo geral teoricamente mais simples.

Notas

Veja também


Referências

Fontes

links externos