linux espejo LVM vs espejo MD


11

Creo recordar haber hecho algunos espejos hace años con LVM, y no recuerdo esta cosa del "registro". O tal vez hice el espejo con mdadm y puse LVM en la parte superior. Eso debe ser.

  1. ¿Para qué sirve el registro LVM si es solo un espejo? ¿Qué se almacena allí? ¿Cual es su propósito? ¿Es malo usar "--mirrorlog core"? ¿Cuál es el lado negativo? No quiero tener otra partición para los registros si no es necesario.

  2. ¿Alguna recomendación sobre el uso de cualquiera de las tecnologías? Incluso si hago el espejo con mdadm, usaré LVM además de eso. Entonces, en ese caso, ¿tal vez sea mejor tener toda la configuración construida con LVM ...? ¿Tendría eso más éxito o menos?

Los discos son para almacenar "discos" Xen domU.

Perdón por la compleja "pregunta" no precisa.

Ideas, sugerencias y enlaces son bienvenidos. ¡Gracias!


md parece funcionar mejor para operaciones espejo en comparación con lvm. Consulte serverfault.com/questions/80134/linux-md-vs-lvm-performance
Zoredache el

1
La duplicación de LVM estaba destinada a un propósito diferente. Si bien puede usarlo para "reflejar" como lo hace MD, realmente se usa para clonar volúmenes. Ver serverfault.com/questions/97845/lvm-mirroring-vs-raid1
Avery Payne

1
Si está destinado a la clonación, ¿por qué requiere tres volúmenes?
d -_- b

Respuestas:


9

Personalmente siempre voy MD + LVM. Es más rápido (MD puede hacer lecturas paralelas en RAID1) y requiere solo 2 discos (si no desea reconstruir el espejo después de cada reinicio) y MD está diseñado solo para hacer RAID, y lo hace muy bien. También es más flexible.

También me ha quemado LVM. En un caso, se trataba de bandas LVM en HP-UX (no debería ocurrir con LVM2 en Linux), y no pude extender el LV porque la extensión tenía que tener exactamente el mismo número de bandas. Parece razonable, pero a veces ...

Otra vez fue con reflejo (LVM2 en Linux esta vez), pero ahora no puedo recordar si LVM se negó a tomar una instantánea de un LV reflejado o extenderlo, negando efectivamente el beneficio de tener LVM en primer lugar (lo hicimos al final, pero involucrado usando lvconvert de ida y vuelta).


¡Gracias! Creo que iré con LVM sobre MD. Parece que hay algunos problemas con la detección automática de MD. ( raid.wiki.kernel.org/index.php/RAID_Boot ) Quería reflejar mi sistema completo (intercambio, arranque, /, var, inicio, usr). Así que tendré que buscar algo más que autodetectar.
d -_- b

Sí, la autodetección es una buena idea en principio, pero da todo tipo de dolores de cabeza. Tengo una configuración con iSCSI + multipath + MD + LVM ... y la detección automática es ... interesante, pero inútil en este caso.
Dan Andreatta

4

Cuando un par duplicado se cierra abruptamente, en cualquier sistema, puede haber algunos bloques que se han escrito en un dispositivo pero aún no en el otro. Posiblemente, al reordenar las rutas IO, hay algunos bloques que se han escrito en A pero no B, y algunos escritos en B pero aún no en A.

Cuando la máquina se reinicia, debe hacer que los dispositivos sean consistentes. Solo tener los dos dispositivos no es suficiente: no sabría qué bloques son inconsistentes y no sabría qué versión es más reciente.

Por lo tanto, el software espejo necesita almacenar un poco de metadatos para realizar un seguimiento de esto. Esto se llama el "registro de intención de escritura".

md normalmente lo almacena en algún espacio reservado dentro del propio dispositivo , aunque también puede elegir almacenarlo en un dispositivo separado. (Esta es una razón por la cual los espejos md son ligeramente más pequeños que los dispositivos base.

Los espejos LVM solo pueden almacenar el registro de extensión de escritura externamente, lo cual, como observa, es un poco molesto para el caso típico en el que tiene exactamente dos discos físicos. Creo que todavía tiene la opción de almacenarlo en una partición diferente en el mismo dispositivo físico, pero eso sigue siendo un inconveniente.

El objetivo del registro de espejo LVM, según tengo entendido, es realizar un seguimiento de los bloques que se han escrito en un dispositivo pero aún no en el otro.


2

Estos son dos conceptos diferentes:

  • LVM es como su nombre lo dice para la gestión de volúmenes. Piense en ello como un mecanismo para combinar múltiples volúmenes en uno (sí, se puede decir que es como raid0), redimensionándolos, redimensionando en vivo, creando instantáneas.
  • MD es para la gestión de RAID. Agregue múltiples dispositivos en un metadispositivo, haga que este metadispositivo esté altamente disponible utilizando raid1, 5, 10, etc.

LVM opera en dispositivos de almacenamiento, ya sean metadispositivos o dispositivos presentados por el controlador de incursión, o simplemente discos simples.

MD funciona en discos (sí, también puede usar discos presentados por el controlador de banda, pero ¿cuál es el punto? ..

LVM no es para hacer que su almacenamiento esté altamente disponible. Y del mismo modo, MD no es para la gestión de volúmenes ...

Espero que esto ayude :)


1
Entiendo lo que son. Sin embargo, si lee la página de manual de lvcreate, dice que puede crear espejos. ¿Supongo que esto es un poco de juguete por ahora?
d -_- b

1
en mi humilde opinión sí. No puedo ver ningún buen uso al menos por ahora. no solo es un espejo en un nivel de volumen (en lugar de un dispositivo), también es un poco "interesante" cómo se crea, por ejemplo, si necesita un espejo de 2 vías (como en el original + copia) necesita tener 3 volúmenes, uno para cada lado del espejo + volumen de registro. pero, de nuevo, en mi humilde opinión. :)
rytis

1

LVM vino de otros tipos de sistemas UNIX. Lo usé en HPUX que no tenía la capa MD de Linux cuando trabajé en él hace 10 años, no estoy seguro de ahora. En esas circunstancias, la duplicación LVM se vuelve útil en una situación en la que el RAID de hardware no está disponible.


Me pareció extraño que un espejo LVM necesite más de un volumen. ¿Qué clase de espejo es ese?
d -_- b

1
@toor, el tercer volumen se utiliza para almacenar un registro de escritura anticipada para el espejo, básicamente para realizar un seguimiento de lo que se debe volver a sincronizar después de una parada abrupta. En MD, esto normalmente se almacena en una parte reservada de los dos discos.
Poolie

1

con la opción -mirrorlog duplicada y la opción -alloc en cualquier lugar, con dos discos, obtienes dos registros espejo de 4M, uno en cada disco. Estoy molesto porque tengo que anular la política para lo que parece ser una situación más común, pero bueno.

LVM en Linux no está relacionado con la cosa en HP-UX o AIX, solo tiene los mismos comandos de espacio de usuario. LVM en Linux usa internamente el sistema DM y, por lo tanto, usa el mismo código que MD. En este punto, no veo ninguna ventaja de LVM sobre MD. Para las particiones que desea rápido y no le importan las copias de seguridad (por ejemplo, intercambiar particiones para máquinas virtuales invitadas), LVM le ofrece la opción de si desea que se reflejen o no, o si la eliminación es mejor.

Y, es mucho más fácil agregar un disco a LVM que MD.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.