Intercambiar partición en LVM?

21

Me preguntaba si poner la partición de intercambio en un grupo de volúmenes lógicos tiene algún inconveniente (por ejemplo, rendimiento), o sería "exactamente lo mismo" que tenerla como una partición primaria / lógica separada.

Me gusta el hecho de que podría cambiar su tamaño fácilmente si es necesario, pero no estoy seguro de posibles inconvenientes.

Caso de aplicación : CentOS 7 Webserver.

Levita
fuente
1
No estoy seguro de lo que quieres decir con "poner la partición de intercambio en un grupo LVM". Entiendo lo que quieres decir con intercambiar en un volumen lógico. Lo he hecho en máquinas anteriores y en mi estación de trabajo personal actual. Nunca he notado ningún problema, ni puedo pensar en una razón por la cual los problemas deberían ocurrir. En mi máquina actual, se usa el intercambio, aunque no mucho.
Faheem Mitha
Tienes razón, sry por la confusión, ¡solo la editaste! Y gracias por la respuesta, ¡lo haremos entonces!
Levite
¿Debo hacer de esto una respuesta formal?
Faheem Mitha

Respuestas:

34

Por supuesto, el objetivo principal no es tener la necesidad de usar swap en primer lugar ...

Lo principal es crear el volumen de intercambio LVM cuando el sistema todavía está bastante fresco, al igual que cuando crea un archivo de intercambio, ya que el espacio de intercambio funciona mejor cuando es contiguo, o lo impone con la lvcreate -Copción. No desea que los bloques de discos reales que componen el volumen lógico se fragmenten en todos sus discos. También se debe evitar cambiar el tamaño del volumen de intercambio (con frecuencia) por ese motivo.

Como uno de los principales desarrolladores del kernel de Linux, Andrew Morton dice :

El núcleo genera un mapa de desplazamiento de intercambio -> bloques de disco en el momento del intercambio y, a partir de ese momento, utiliza ese mapa para realizar E / S de intercambio directamente contra la cola de disco subyacente, omitiendo todo el almacenamiento en caché, metadatos y código del sistema de archivos.

Eso también omite todo el código LVM, el intercambio va directamente al disco. Y por lo tanto, desde una perspectiva de rendimiento, no hay diferencia en la partición de intercambio, un archivo de intercambio o un volumen LVM.

HBruijn
fuente
12
Gran respuesta, gracias por la explicación detallada! " That bypasses all the LVM code as well, swap goes straight to disk.", ¡exactamente lo que estaba buscando! Con respecto al problema del cambio de tamaño: ¿tendría sentido, por esa razón, recrear el volumen de intercambio después de la instalación con la opción -C para garantizar que sea / permanezca contiguo? Me gusta lvcreate -C y -L 10G VolGroup -n swap(referencia: blog.zelut.org/2009/03/10/force-contiguous-extents-in-lvm )
Levite
3
Nunca noté el -Ccambio, ¡gracias por señalarlo!
HBruijn
"usa ese mapa para realizar E / S de intercambio directamente contra la cola de disco subyacente, omitiendo todo el almacenamiento en caché, los metadatos y el código del sistema de archivos", aunque esa respuesta es para registrar los sistemas de archivos (ext3 / reiserfs) Me pregunto si realmente omite md raid ... eso sería un montón de consejos para intercambiar en raid por ahí bastante útil / despistado ...
Erk
@Erk con respecto a la incursión, tenga en cuenta que los sistemas de archivos siguen siendo una capa de abstracción por encima del dispositivo IO, es decir, cuando se usa la incursión para el intercambio, probablemente todas las consideraciones habituales todavía se aplican, independientemente de la incursión de hardware o software
HBruijn
@HBruijn: aha, bueno, ahora tengo una máquina con swap en lvm (en md raid) y al menos no se está quemando ...
Erk