Betazeta Networks: BelelúBólidoCHWFayerWayerFW BrasilFerpleiLUPANiubieSaborizanteSabrosiaVeoVerdeWayerlessZimio Versión Movil

Temas Calientes

Virtualización en Linux reducirá sus requerimientos de memoria

ksm

ksmLa próxima versión de Linux, que está pronto a ser liberada oficialmente (2.6.32), incluirá un cambio que beneficiará a todos los que estén usando virtualización sobre Linux, ya que se implementó una técnica para reducir drásticamente el uso de memoria.

La virtualización es una técnica para compartir un mismo hardware sobre varios sistemas operativos en forma simultánea. Cada sistema operativo corre en forma independiente, sin enterarse de que está compartiendo el hardware. De esta forma se pueden combinar varios servidores o máquinas en una sola, ideal para casos en donde no siempre están todas ocupadas, ya que el mismo hardware no ocupado por una máquina virtual está disponible para otra.

Aunque Linux en general reutiliza la  memoria cuando dos o más aplicaciones usan la misma biblioteca, Kernel Sampage Merging (KSM) es una nueva característica de Linux que lleva la reutilización del hardware un paso más allá:  en sistemas virtualizados es común que estén en ejecución varias copias de un mismo sistema operativo e incluso varias copias de una misma aplicación o servicio, con KSM todas estas copias se detectan y consolidan en una sola, reduciendo drásticamente la cantidad de memoria que se necesita. Por ejemplo RedHat indica que en sus pruebas ha tenido funcionando 600 máquinas virtuales en un solo host de 48 cores y 256GB de RAM sin ningún tipo de problemas.

Implementación de KSM es rápida, limpia y transparente

A nivel conceptual la técnica es sencilla, y se trata de lo siguiente:  un sistema operativo divide la memoria en múltiples páginas de tamaño fijo, gracias a esta división se pueden guardar las páginas de memoria no ocupadas en disco y posteriormente recuperarlas llevándolas a memoria cuando se necesitan (swapping), con esto se puede usar más memoria de la disponible físicamente. KSM calcula un identificador único por cada página en base a los datos que contiene (hash) y si detecta que tiene los mismos datos que otra página (mismo hash) entonces descarta la duplicada dejando sólo una, y hace pensar al resto del sistema que se trata de páginas diferentes, pero físicamente es una sola.  Si una aplicación modifica la página, entonces se crea un duplicado y se obtiene una página propia, como si siempre hubiesen estado separadas.

Esto quiere decir que si tenemos dos máquinas virtuales que ocupan 768MB pero de esa memoria 512MB son idénticos porque se trata del mismo sistema operativo + bibliotecas + aplicaciones, entonces en vez de usar 1,5GB sólo se requiere 1GB.

KSM también se ha implementado en versiones anteriores del kernel (backporting) y ya se encuentra disponible en Fedora12. Aunque es en virtualización en donde se obtienen los mayores beneficios, los usuarios de Fedora pueden ver si le están sacando provecho revisando el archivo virtual /sys/kernel/mm/KSM/pages_sharing para ver cuantas páginas físicas se están compartiendo entre una o más páginas lógicas.

Link: Using KSM (Kernel Samepage Merging) with KVM (linux-kvm.com)


40 Comentarios

Virtualización en Linux reducirá sus requerimientos de memoria

Páginas: 1 2
Ver Todos
Thumb up 0 Thumb down 0 avatar_S@ntiago S@ntiago dijo hace 3 años

Catrin en cualquier sistema UNIX se puede virtualizar por hardware con Xen o Kvm o por software como es vmware o virtualbox por decir algunas esto toda persona con un conocimiento mínimo de virtualizacion en UNIX lo sabe, windows se que también tiene su forma de virtualizacion pero nunca lo he probado y hasta donde tengo entendido no se puede o es difícil la virtualizacion en una maquina corriendo linux y windows, y con respecto a proxmox es la forma mas sencilla que conozco para manejar virtualizacion, cluster, migración entre otras

Responder
Thumb up 0 Thumb down 0 avatar_h4k h4k dijo hace 3 años

@S@ntiago: NO WN NO!!

estás equivocado y lo sabes xD

ejemplo con VMWare http://deaparatos.com/ejecutar_linux_en_una_maquina_virtual_dentro_de_windows

Responder
Thumb up 0 Thumb down 0 avatar_S@ntiago S@ntiago dijo hace 3 años

@h4k cuando hablo de una maquina con virtualizacion de linux y windows hablo a nivel de hardware y no de software, para hacer mediante software uso vmware o virtualbox

Responder
Thumb up 0 Thumb down 0 avatar_freeze freeze dijo hace 3 años

@felipe: Por supuesto que dos cadenas distintas pueden tener el mismo hash, si la función fuera biyectiva sería fácil "descifrar" la cadena porque sólo habría una opción para ese hash, el que haya muchas cadenas es la razón del por qué se usan ese tipo de funciones.

@todos: Como yo lo entiendo, no es que tengas "dos apaches" idénticos, pero hay cosas en memoria que si son siempre las mismas, por ejemplo algunas bibliotecas y es ahí en donde se verá la mejora.

Responder
Thumb up 0 Thumb down 0 avatar_CarlosMC CarlosMC dijo hace 3 años

que buena noticia wn!

yo manejo sistemas de virtualizacion y siempre se agradece el poder hacer mas con menos :D

saaalu2

Responder
Thumb up 0 Thumb down 0 avatar_dodge dodge dijo hace 3 años

Que nos encanta a los chilenos llenarnos la boca con temas que no entenedemos, vallan a programar en action script mejor, idiotas

Responder
Thumb up 0 Thumb down 0 avatar_felipe felipe dijo hace 3 años

A lo que me referia, es que en terminos de passwords y sistemas que guardan el hash de esa pass, ya hay diccionarios de hash dando vueltas por ahi, entonces si para un usuario su clave le da un hash 9y9yuvig67f7f por poner un ejemplo, independiente de cual haya sido su pass, en el diccionario podrias encontrar otra palabra que genere el mismo hash, entonces me pregunto si es posible que eso suceda a nivel de paginas.

Responder
Thumb up 0 Thumb down 0 avatar_AlvaroARB AlvaroARB dijo hace 3 años

@lala: Lo que necesitas es un balanceador de cargas (a.k.a. load balancing), preferiblemente en una tercera maquina la cual tendria la ip publica (esta tercera maquina puede ser una instalacion minima de debian), claro que tambien se puede hacer con dos ... puedes investigar acerca de programitas sencillos para este fin, como por ejemplo balance o pen

Responder
Thumb up 0 Thumb down 0 avatar_castete castete dijo hace 3 años

Es una muy buena noticia, el que se pueda optimizar el rendimiento de la memoria, KVM esta proyectando buenos futuros sobre el manejo de Virtualización y cambiando el concepto a diferencia ce XEN...
Como también en el área de balance carga, LVS tiene una muy buena infraestructura para operar y una gran gama de herramientas que lo complementan. :)

Buena noticia, gracias Franco....:)

Responder
Thumb up 0 Thumb down 0 avatar_jado92mx jado92mx dijo hace 2 años

no creo qe comparar hashes sea algo tan demandante, i luego con el hardware qe se tiene en servidores ni se ha de notar, menos con el beneficio qe dara ;)
bien por todos los servers con linux; ojala se pueda aprovechar todo esto en el desktop :D

aun espero la version gpl de grand central dispatch para qe sea incluida en el kernel :D

Saludos!

JaD!

Responder
Páginas: 1 2
Ver Todos

Deja tu Comentario

La opción de comentar está abierta a todos los usuarios, pero te pedimos por favor mantenerte dentro del tema del artículo y no publicar comentarios ofensivos o publicidad basura. Nos reservamos el derecho de eliminar cualquier comentario que no cumpla estas reglas.

Para que aparezca tu foto en vez del icono genérico en tu comentario, el email con el que comentas debe estar inscrito en Gravatar.