AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 978122
Accepted
guettli
guettli
Asked: 2019-08-07 02:25:45 +0800 CST2019-08-07 02:25:45 +0800 CST 2019-08-07 02:25:45 +0800 CST

Por que usar o LVM? Cria mais fronteiras (menos liberdade)

  • 772

Eu tenho um servidor linux que roda em uma VM. O hipervisor é VMWare.

Esta configuração foi feita por um ex-administrador:

server:~ # pvs
  PV         VG     Fmt  Attr PSize   PFree
  /dev/sda2  system lvm2 a--  119,84g    0

server:~ # vgs
  VG     #PV #LV #SN Attr   VSize   VFree
  system   1   3   0 wz--n- 119,84g    0

server:~ # lvs
  LV   VG     Attr      LSize  Pool Origin Data%  Move Log Copy%  Convert
  home system -wi-ao--- 97,84g                                          
  root system -wi-ao--- 20,00g                                          
  swap system -wi-ao---  2,00g                    

Eu me pergunto: Por quê?

É ótimo que você possa fazer muitas coisas interessantes com o LVM. Mas por que?

Por que não criar um dispositivo de bloco/partição/sistema de arquivos?

A troca pode ser feita em um arquivo.

Uma partição/sistema de arquivos me daria menos dispositivos de bloco. Isso significa que os diretórios no sistema de arquivos têm mais espaço para crescer.

Se eu usar um dispositivo de bloco com um sistema de arquivos, é menos provável que fique sem espaço em disco.

Exemplo: Se os arquivos do "sistema raiz" precisarem de mais de 20 GByte, e "home" tiver espaço sobrando, então está tudo bem.

Aqui está uma arte ascii simplificada da configuração do LVM:

+--------------------+
|                    |
|  Filesystem        |
|                    |
|---------------------
|                    |
|  Logical Volume    |
|                    |
|---------------------
|                    |
|  Volume Group      |
|                    |
----------------------
|                    |
|  Physical Volume   |
|                    |
|---------------------
|                    |
|  Block device      |
|                    |
+--------------------+

Background: Este não é um sistema de alta disponibilidade. Uma reinicialização à noite é sempre possível.

lvm
  • 5 5 respostas
  • 2801 Views

5 respostas

  • Voted
  1. Best Answer
    John Mahowald
    2019-08-07T03:31:22+08:002019-08-07T03:31:22+08:00

    O uso do LVM em geral permite vários recursos. Apenas um par:

    • Estender um volume é um passo e online: lvextend --resize.
    • O particionamento não é necessário. Sem o LVM, o caso de uso comum de redimensionar o root fs requer tempo de inatividade e provavelmente a edição de tabelas de partição de um segundo sistema.
    • Os instantâneos estão sempre disponíveis, mesmo sem esse recurso no sistema de armazenamento ou no hipervisor.
    • Casos de uso extremos podem exigir um volume com suporte de mais um disco (LUN). Raro nos dias de hoje. Mas também pode padronizar no LVM mais flexível.

    (Alguns detalhes são específicos do Linux LVM, mas o LVM em geral é implementado em muitos sistemas operacionais. No UNIX, AIX e HP-UX são anteriores ao Linux e possuem LVMs semelhantes.)


    Essa alocação específica se assemelha a padrões em distros como Red Hat, refletindo algumas recomendações que eles deram há muito tempo .

    Para armazenar dados do usuário separadamente dos dados do sistema, crie uma partição dedicada em um grupo de volumes para o diretório /home. Isso permitirá que você atualize ou reinstale o Red Hat Enterprise Linux sem apagar os arquivos de dados do usuário.

    O espaço de paginação poderia estar em um arquivo mais conveniente, sim. Eu acho que isso requer certos sistemas de arquivos. Diretamente em um dispositivo de nível de bloco funciona independentemente do sistema de arquivos, e é óbvio que o espaço não está disponível para arquivos regulares. Além disso, você pode mover esse volume de espaço de paginação para armazenamento rápido e menos durável, como um único SSD local.

    Alguns administradores vão além e isolam digamos /varem seu próprio volume e /tmpem tmpfs. Dessa forma, os arquivos de log e outros não preencherão o espaço necessário para o software no formato /usr.

    Pessoalmente, ausentes os requisitos de tamanho, eu começaria /homemenor, digamos 20 GB. Isso deixa 70 GB livres no VG para o que precisar no próximo lvextend. Essa também é uma sugestão há muito tempo. Suspeito que não seja o padrão de partição automática porque os dados do usuário tendem a crescer sem limites e eles desejam usar o espaço caso o planejamento de capacidade nunca seja revisitado novamente.

    Deixe o excesso de capacidade não alocado e atribua capacidade de armazenamento apenas às partições que você precisar imediatamente. Você pode alocar espaço livre a qualquer momento, para atender às necessidades conforme elas ocorrem.

    • 7
  2. HBruijn
    2019-08-07T04:31:56+08:002019-08-07T04:31:56+08:00

    Em muitos casos, uma única partição ou nenhum particionamento não é prejudicial, especialmente em um ambiente virtualizado onde você pode facilmente aumentar o disco primário e o sistema de arquivos raiz se e quando ficar sem espaço.

    Até que você não pode...

    Então você descobre da maneira mais difícil que o particionamento rígido é uma escolha de design à qual você está preso durante toda a vida útil do seu servidor.
    (Não completamente, mas a maioria das soluções exigirá tempo de inatividade e/ou interrupções de serviço.)

    Se você tem apenas gado: isso não é um problema, seus servidores têm vida curta de qualquer maneira. Se você tem mais animais de estimação do que gostaria de admitir...

    A sobrecarga / penalidade de desempenho que você paga pelo uso do LVM é insignificante e mesmo que você não veja uma necessidade imediata agora, o LVM potencialmente economizará seu bacon no futuro, quando o LVM permitir que você execute alterações on-line em seu armazenamento que, de outra forma, seriam diretas impossíveis ou pelo menos exigiriam tempos de inatividade (significativos).

    • 3
  3. Sum1sAdmin
    2019-08-14T00:28:51+08:002019-08-14T00:28:51+08:00

    A resposta é que, se você não conseguir identificar nenhum motivo operacional para usar o LVM, não há motivo para usá-lo, o que no seu cenário de hipervisor e rede de área de armazenamento é fácil de descartar. mas o LVM não é um protocolo como smb ou iscsi, nem é um sistema de arquivos como ext4 ou ntfs, também não é JBOD array ou qualquer tipo de RAID, não é um tipo de disco como SSD ou SAS, não é um provedor de armazenamento como VMware datastore ou Ceph - então, por que usar o LVM? - apresentar volumes lógicos ao SO independentemente de tudo isso.

    • 3
  4. Anon
    2019-08-13T21:00:05+08:002019-08-13T21:00:05+08:00

    Algumas distribuições padrão para configurar seu particionamento com LVM/mapeador de dispositivo por padrão. Como dito anteriormente, a sobrecarga de usar o LVM é pequena (embora não seja totalmente zero) e aumenta a flexibilidade, portanto, essa não é uma má escolha.

    No que diz respeito a sistemas de arquivos separados: um separado /hometo /é muitas vezes racionalizado como um método para realizar cotações de pobre. Ao mantê-los separados, o preenchimento /homenão torna uma ferramenta que só precisa criar arquivos em /tmp(como sort) incapaz de fazer seu trabalho. Mais uma vez, algumas ferramentas de particionamento (Ubuntu?) guiam você para este estilo de configuração.

    Talvez o administrador anterior estivesse simplesmente seguindo os padrões? Se você tem necessidades diferentes e já está em uma posição em que está começando de novo, é claro que pode fazer escolhas diferentes. No entanto, se o sistema estiver OK e não ficar sem espaço (20 GByte para root pode significar que você tem mais de 50% de espaço restante ou pode não ser suficiente dependendo da situação), duvido que valha a pena o esforço de desmontar tudo e começar de novo apenas para mudar.

    • 2
  5. BillThor
    2019-08-13T23:21:36+08:002019-08-13T23:21:36+08:00

    Sob o modelo de particionamento tradicional, é extremamente difícil redimensionar ou mover uma partição em um sistema em execução. Geralmente requer uma interrupção ou risco de perda de dados. O LVM resolve esses problemas.

    Em um caso extremo, o LVM pode ser usado para substituir um disco com falha em um sistema em execução.

    O LVM também simplifica a implementação do RAID, que pode ser feito facilmente por volume lógico.

    Se você precisar de um armazenamento extremamente amplo, poderá usar o LVM para expandir um volume lógico em vários discos.

    Existem argumentos a favor e contra ter diferentes partições para diferentes subdiretórios. Eu fiz os dois. Um dos problemas que surge é o crescimento de um sistema de arquivos além da capacidade de sua partição. Embora existam opções um tanto seguras em alguns casos, o LVM fornece um caminho seguro para expandir as partições (volumes lógicos) em um sistema em execução.

    Existem muitas opções de troca, mas geralmente você quer poder trocar rapidamente. Felizmente, o gerenciamento de memória moderno depende menos de processos de troca e mais de paginação. Acessar um arquivo de troca normalmente terá uma sobrecarga maior do que acessar uma partição de troca ou volume lógico. Isso é menos importante em sistemas com memória suficiente para evitar o uso ativo do espaço de troca.

    Embora em alguns casos o LVM possa aumentar a sobrecarga na localização de um bloco no disco, um volume lógico contíguo em um único disco deve ter a mesma sobrecarga que uma partição. Nos casos em que o LVM aumenta a sobrecarga, outras compensações podem fornecer melhor desempenho do sistema de arquivos. Compreender as compensações deve ser parte do processo de planejamento para usar uma configuração de LVM mais complicada.

    • 1

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve