Quais são os benefícios do Logical Volume Manager [fechado]


11

Quais são os recursos e benefícios potenciais do Logical Volume Manager além do que é detalhado em sua página da Wikipedia?


1
Contra o que? Realmente, essa é uma pergunta muito vaga.
Nandhini Anand

Por favor, elabore suas opções.
Ori

1
Uau - reformular essa pergunta recebeu uma ótima resposta de Matt Simmons!
dunxd

1
Para completar, também vale a pena olhar para os perigos e advertências de LVM: serverfault.com/questions/279571/lvm-dangers-and-caveats
RichVel

Respostas:


33

Retirado diretamente da entrada do meu blog: http://www.standalone-sysadmin.com/blog/2008/09/introduction-to-lvm-in-linux/

Primeiro, vamos discutir a vida sem LVM. Nos velhos tempos, você tinha um disco rígido. Este disco rígido pode ter partições. Você pode instalar sistemas de arquivos nessas partições e, em seguida, usar esses sistemas de arquivos. Suba as duas direções. Parecia muito com isso:

Você tem a unidade real, neste caso, sda. Nessa unidade existem duas partições, sda1 e sda2. Há também algum espaço livre não utilizado. Cada uma das partições possui um sistema de arquivos montado. O tipo de sistema de arquivos real é arbitrário. Você pode chamá-lo ext3, reiserfs ou o que você tem. O importante a ser observado é que há uma correlação direta direta entre partições de disco e possíveis sistemas de arquivos.

Vamos adicionar algum gerenciamento de volume lógico que recria exatamente a mesma estrutura:

Agora, você vê as mesmas partições, no entanto, existe uma camada acima das partições chamada "Grupo de volumes", literalmente um grupo de volumes, nesse caso partições de disco. Pode ser aceitável pensar nisso como uma espécie de disco virtual que você pode particionar. Como estamos correspondendo exatamente à nossa configuração anterior, você ainda não vê os pontos fortes do sistema. Você pode perceber que, acima do grupo de volumes, criamos volumes lógicos, que podem ser considerados partições virtuais, e é sobre eles que construímos nossos sistemas de arquivos.

Vamos ver o que acontece quando adicionamos mais de um volume físico:

Aqui temos três discos físicos, sda, sdb e sdc. Cada um dos dois primeiros discos possui uma partição ocupando todo o espaço. O último, sdc, tem uma partição ocupando metade do disco, com metade do espaço livre não particionado restante.

Podemos ver o grupo de volumes acima daquele que inclui todos os volumes disponíveis no momento. Aqui reside um dos maiores pontos de venda. Você pode criar uma partição lógica do tamanho da soma dos seus discos. De várias maneiras, isso é semelhante ao funcionamento do nível 0 de RAID, exceto que não há distribuição. Os dados são gravados na maior parte linearmente. Se você precisar de redundância ou o desempenho aumentar que o RAID fornece, certifique-se de colocar seus volumes lógicos no topo das matrizes RAID. As fatias de RAID funcionam exatamente como discos físicos aqui.

Agora, temos esse grupo de volumes que ocupa 2 e 1/2 discos. Ele foi esculpido em dois volumes lógicos, o primeiro dos quais é maior que qualquer um dos discos. Os volumes lógicos não se importam com o tamanho dos discos físicos reais, pois tudo o que eles vêem é que foram criados no myVolumeGroup01. Essa camada de abstração é importante, como veremos.

O que acontece se decidirmos que precisamos do espaço não utilizado, porque adicionamos mais usuários?

Normalmente, teríamos problemas se usássemos o mapeamento de um para um, mas com volumes lógicos, eis o que podemos fazer:

Aqui pegamos o espaço livre anteriormente em / dev / sdc e criamos / dev / sdc2. Em seguida, adicionamos isso à lista de volumes que compõem myVolumeGroup01. Feito isso, estávamos livres para expandir qualquer um dos volumes lógicos, conforme necessário. Desde que adicionamos usuários, aumentamos o myLogicalVolume2. Nesse ponto, enquanto o sistema de arquivos / home o suportava, estávamos livres para cultivá-lo para preencher o espaço extra. Tudo porque abstraímos nosso armazenamento dos discos físicos em que ele vive.

Tudo bem, isso cobre o porquê básico do Logical Volume Management. Como tenho certeza que você está ansioso para aprender mais sobre como preparar e construir seus próprios sistemas, aqui estão alguns recursos excelentes para você começar:

http://www.pma.caltech.edu/~laurence/Linux/lvm.html
http://www.freeos.com/articles/3921/
http://www.linuxdevcenter.com/pub/a/linux/2006/04/27/managing-disk-space-with-lvm.html


2
+1 para uma excelente descrição e visualização.
Daemon of Chaos

5

Você pode usar o LVM para fazer muitas coisas com discos. O principal benefício é a capacidade de desenvolver sistemas de arquivos em tempo real. Suponha que você esteja configurando um servidor de log e saiba que no futuro terá uma tonelada de dados. O Ext3 suporta no máximo 16 TB (dependendo do seu kernel e da versão do EL). Mas e se você souber que em 2 anos precisará de 1PB de armazenamento? Bem, isso cria alguns problemas. Primeiro, seu chefe olha para você com veados nos olhos dos faróis quando você diz a ele o preço desse hardware de armazenamento. Isso leva a outro problema - você precisa começar com uma pequena solução que possa ser ampliada. O LVM oferece essa opção. Você começa com alguns discos. Em seguida, adicione mais, transforme-os em um grupo lógico, adicione-os ao primeiro volume lógico, aumente o tamanho do volume e, finalmente, aumente o sistema de arquivos. Voila, você

Isso evita que você precise mover os dados do dispositivo, reformatar os LUNs e depois mover tudo de volta para realizar uma atualização. Desculpe pela brevidade, espero que faça sentido.

Edit: Devo também observar que se você estiver lidando com 1PB, não vai querer usar o Ext3 ... provavelmente o XFS.


Eu realmente não compro o LVM como um mecanismo para escalar de 16 TB a 1 PB - você realmente precisa de ZFS ou similar, o que permite "provisionamento dinâmico", ou seja, você cria um pool de armazenamento ZFS totalizando cerca de 1 PB agora, mas é apenas parcialmente suportado por blocos de armazenamento reais. À medida que cresce, basta adicionar armazenamento no mesmo pool. Usando o LVM, você gastaria uma quantidade enorme de tempo redimensionando o FS (s) e fazendo fsck (s) toda vez que adicionasse armazenamento.
RichVel 12/06

4

Há vários benefícios indiretos do LVM. A principal coisa que o LVM faz é abstrair os discos físicos do sistema operacional . O principal benefício disso é simplesmente flexibilidade . A maioria dos benefícios do LVM só é alcançada quando você possui um sistema de arquivos que suporta o redimensionamento instantâneo. A coisa básica que o LVM faz é descrita abaixo:

As partições do sistema existem uma camada acima do disco

Sem o LVM, o Linux usa as partições localizadas fisicamente no disco. As partições são nomes diretos de dispositivos. A tabela de partições reside no MBR e normalmente (no caso de partições estendidas lógicas) no registro de inicialização estendido (que permite criar um número maior de partições). Partições definem um tamanho e tipoentre outros atributos (mais especificamente, eles definem um cilindro inicial e final que define essencialmente o tamanho). Por estarem intimamente ligados ao disco, é importante configurar um esquema de particionamento "correto" na instalação. Se de repente, uma função da máquina mudar ou se você for iniciante e não tiver entendido as implicações do particionamento, ou se você subestimou o uso do disco em algum lugar ou nos logs de um aplicativo específico, alterar esse particionamento pode ser complicado. Existem ferramentas para fazer isso, mas geralmente você precisa mover os dados da partição para alterá-los. Obviamente, se você tem quatro partições, a alteração do cilindro final da segunda partição afeta a terceira e a quarta partições e inicia os cilindros, para que você fique em uma situação confusa.

O ingênuo pode defender o uso de uma única partição grande, mas você pode se desfazer quando precisar introduzir cotas ou isolar processos não autorizados que preenchem partes do sistema (por exemplo, / var / log, / tmp etc.)

Os benefícios disso são:

Adicionando / removendo armazenamento

Adicionar armazenamento geralmente é trivial. Se você estiver usando RAID de hardware ou software e adicionar mais discos, talvez seja necessário mexer em links simbólicos para reconstruir a matriz RAID para que o Linux disponibilize seu novo armazenamento nos locais desejados.

Veja o exemplo de um diretório grande / home que está ficando cheio. Isso existe em um volume RAID 1 de dois discos existente. Você deseja adicionar mais dois discos. Você os define em uma configuração de RAID 1 de hardware. Sem o LVM, você tem algumas opções:

  1. Reconstrua a matriz completa de ataques em uma configuração 1 + 0, que requer a remoção dos dados da máquina, a reconstrução e a reativação.
  2. Crie um novo grupo de volumes RAID 1 que seja separado. O Linux já possui o primeiro volume RAID montado em / home, portanto, você precisa montar o segundo volume RAID em / home1 ou similar. Agora, para obter os caminhos apropriados para os usuários que são consistentes com o primeiro, pode ser necessário usar links simbólicos para obter o mesmo efeito. Além disso, esta solução requer manutenção constante do volume RAID original e a migração potencial de dados da partição original.

Com o LVM, você pode simplesmente adicionar o novo grupo de volumes RAID 1 ao pool de armazenamento adicional, redimensionar o sistema de arquivos (desde que ele o suporte) e pronto: / home agora está subitamente maior. Você não precisa vincular nada ou fazer manutenção na movimentação potencial de dados de / home para / home1 ou vice-versa. Enxágue, lave e repita para futuras atualizações de disco.

Manutenção online

A maioria das tarefas do LVM, desde que o hardware o suporte, pode ser feita on-line, sem reiniciar a máquina. Se você puder trocar hot disks em um sistema, poderá adicionar novos discos e, posteriormente, remover discos antigos (talvez menores) para aumentar os requisitos de armazenamento do sistema.

Um dos principais problemas dos volumes LVM é que, à medida que se aproximam da capacidade, a fragmentação pode se tornar um problema na minha experiência. Volumes> 90% e realmente> 95% podem significar que você pode acabar com uma fragmentação incorreta no disco, dependendo do uso do disco e dos tipos de arquivo. Raramente é algo para se preocupar excessivamente, é o caso de qualquer tipo de gerenciamento de volume / partição, mas é a fragmentação na camada de volume, em oposição à partição que é a preocupação aqui.


Boa resposta sobre os benefícios, mas no seu ponto (2), acho que você quer dizer "criar um novo volume RAID 1 que ..." em vez de criar um VG, pois esse é um caso não-LVM e, presumivelmente, usando o RAID de hardware, como mencionado .
RichVel 12/06

1

Você deveria ter fornecido mais informações sobre a situação na qual aplicará isso, para que possamos fornecer respostas direcionadas em vez de amplas respostas possivelmente não relacionadas (não posso comentar mais, eu teria dito isso em um comentário).

Agora, na própria pergunta, você tem fácil criação, redimensionamento e exclusão de volumes (também conhecidos como partições) e outro recurso interessante (dependendo da sua situação) é a capacidade de criar instantâneos de um volume.


1

Mesmo que você já tenha selecionado a melhor resposta, gostaria de contribuir com minha opinião para este tópico. Pela minha experiência, questionaria a utilidade do LVM se você tiver uma unidade física ou mesmo se tiver várias unidades (eu pessoalmente nunca uso o LVM na unidade do sistema). No entanto, onde o LVM realmente indispensável está no topo do RAID de hardware. Isso permite separar claramente as funções de RAID e LVM - você usa o RAID para gerenciar as características de confiabilidade e desempenho do seu armazenamento e o LVM para alocar volumes reais ao sistema. Às vezes, essa funcionalidade se sobrepõe, ou seja, o LVM pode fornecer a funcionalidade RAID-0 e RAID-1, mas eu não recomendaria o uso de nenhuma das duas com uma compilação séria.

Basicamente, o RAID e o LVM pertencem um ao outro, o uso de um sem o outro geralmente é abaixo do ideal.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.