none
Virtualizar Sql Server ? RRS feed

  • Pregunta

  • Estimados.

    Estoy en proceso de consolidación de servidor sql, acá va mi "problema" virtualizar o no  ?

    No necesariamente pasa por costos, dado que el proyecto que tengo que sacar adelante es la consolidación, así que les pido sus recomendaciones y/o experiencia en virtualizar vs maquinas fisicas dedicadas al motor (espero haberme hecho entender)

     

    Atte.

    PENTA.

    jueves, 11 de noviembre de 2010 0:27

Respuestas

  • No necesariamente te va a dar un peor rendimiento en cuanto a IO, depende de cómo esté configurado el entorno. Si comparas una máquina física y una virtual (bien configurada, claro), el rendimiento no es peor.

    De todos modos, echa un vistazo a http://sqlserverpedia.com/blog/sql-server-2008/virtualizing-servers-in-production. Ahí vienen una serie de enlaces que desmitifican la teoría de que un servidor virtual es peor siempre que uno físico.

    • Marcado como respuesta CMAPM jueves, 11 de noviembre de 2010 20:08
    jueves, 11 de noviembre de 2010 14:31
  • No creo que tengas ningun problema con la virtualización, todo depende de la maquina host que este virtualizando

    Ahora bien, si vas a virtualizar sql server, te recomendaria que la maquina virtual corriera sobre un host que tenga un sistema operativo x64, yo por ejemplo implemente alguna vez un servidor virtual con Hyper-V Server en una arquitectura x64, con SQL Server 2005 Datacenter y me funciono perfecto, no he tenido problmas con la base de datos ni con el performance.

    Te mando la configuración del Hyper-V para que lo tengas en cuenta

    Arquitectura: x64

    SO: Windows Server 2008 enterprise x64 with Hyper-V Role

    Procesadores 2 x 2.4 Ghz Intel con Virtualización

    Ram 16 Gb

    Storage: 2 DD x 1.5 Tb (RAID 0) Fisicos

    Infraestructura de red EVA, (SAN Evolution)

    Numero de VMs: 3

    Almacenamiento de SQL Server: en la EVA

    SO VMs: Windows Server 2008 Enterprise x64

    Version de SQL Server: 2008 R2 Enterprise

    Cualquier duda me comentas...

     


    DIEGO FERNANDO NICOLS ARIZALA
    • Marcado como respuesta CMAPM jueves, 11 de noviembre de 2010 20:08
    jueves, 11 de noviembre de 2010 19:49

Todas las respuestas

  • Además de los enlaces que te puse en la otra pregunta respecto a cómo afrontar un proceso de consolidación, te recomiendo también este de SQL Server 2008 sobre Hyper-V: http://sqlcat.com/whitepapers/archive/2008/10/03/running-sql-server-2008-in-a-hyper-v-environment-best-practices-and-performance-recommendations.aspx
    • Propuesto como respuesta Carlos Sacristan jueves, 11 de noviembre de 2010 8:45
    jueves, 11 de noviembre de 2010 8:45
  • Mil gracias Carlos.

    Duda, según lo que entiendo el documento sirve para ejecutar sql server en una maquina virtual, lo cual desde ya me parecer excelente, pero, lo que busco es el paso antes, o sea el poder decidir, si realmente me conviene tener mis sql server virtualizados y básicamente me preocupa la performance en comparación a con una maquina física.

     

    Atte.

    PENTA

    jueves, 11 de noviembre de 2010 13:02
  • Por esto hacía referencia a los otros documentos que te enlacé en la otra respuesta. Con ellos vas a poder decidir si virtualizar o no, mientras que con este último podrás aplicar buenas prácticas en caso de virtualizar
    jueves, 11 de noviembre de 2010 13:08
  • Igual es complejo tomar esa decisión, yo a los que me estan ofreciendo virtualizar les dije:

    Dame una máquina virtual con iguales caracteristicas de una máquina fisica que tengo, y dime si la virtual me dará un mayor o igual rendimiento, pues yo supongo que me dará un bajo rendimiento en lo que respecta a acceso a disco al menos, entonces antes de todo esto quisiera saber opiniones de que alguien haya virtualizado y como le ha ido en comparación a tener el sql en maquina física claro de igual característica.

     

    jueves, 11 de noviembre de 2010 13:18
  • No necesariamente te va a dar un peor rendimiento en cuanto a IO, depende de cómo esté configurado el entorno. Si comparas una máquina física y una virtual (bien configurada, claro), el rendimiento no es peor.

    De todos modos, echa un vistazo a http://sqlserverpedia.com/blog/sql-server-2008/virtualizing-servers-in-production. Ahí vienen una serie de enlaces que desmitifican la teoría de que un servidor virtual es peor siempre que uno físico.

    • Marcado como respuesta CMAPM jueves, 11 de noviembre de 2010 20:08
    jueves, 11 de noviembre de 2010 14:31
  • No creo que tengas ningun problema con la virtualización, todo depende de la maquina host que este virtualizando

    Ahora bien, si vas a virtualizar sql server, te recomendaria que la maquina virtual corriera sobre un host que tenga un sistema operativo x64, yo por ejemplo implemente alguna vez un servidor virtual con Hyper-V Server en una arquitectura x64, con SQL Server 2005 Datacenter y me funciono perfecto, no he tenido problmas con la base de datos ni con el performance.

    Te mando la configuración del Hyper-V para que lo tengas en cuenta

    Arquitectura: x64

    SO: Windows Server 2008 enterprise x64 with Hyper-V Role

    Procesadores 2 x 2.4 Ghz Intel con Virtualización

    Ram 16 Gb

    Storage: 2 DD x 1.5 Tb (RAID 0) Fisicos

    Infraestructura de red EVA, (SAN Evolution)

    Numero de VMs: 3

    Almacenamiento de SQL Server: en la EVA

    SO VMs: Windows Server 2008 Enterprise x64

    Version de SQL Server: 2008 R2 Enterprise

    Cualquier duda me comentas...

     


    DIEGO FERNANDO NICOLS ARIZALA
    • Marcado como respuesta CMAPM jueves, 11 de noviembre de 2010 20:08
    jueves, 11 de noviembre de 2010 19:49
  • Hola.

    Desde hace ya mucho tiempo se está impulsando, desde muchos frentes, la virtualización. Se avanza muchísimo y cada vez más, pero yo todavía estoy por encontrarme un servidor que, virtualizado, funcione de forma más o menos equivalente a como funcionaría en una máquina física de similares características. Puede que sea por una mala configuración, por unos discos inadecuados o por otro montón de razones (muchas de ellas puede que mitos).

    Al final este tipo de conversaciones suelen acabar con un "ya, pero la nueva versión de <producto de virtualización>, ya sí que hace esto o aquello y funciona de maravilla". Y después de esa llega otra versión posterior con nuevas mejoras en lo mismo (es decir, que tan bien no estaría la anterior). Como ejemplo de esto, tenemos el SP1 de Windows 2008 R2, que aporta la modificación dinámica de la memoria como avance significativo, sin que parezca que nadie se haya parado a pensar cómo le puede sentar a un servidor de bases de datos que de pronto le "birlen" 10 Gb de RAM.

    Se virtualiza por la más poderosa de las razones: el dinero (menos espacio en la sala de servidores, menos consumo energético, menos coste en licencias, etc). Ante ese motivo muy poco se puede hacer. Pero de ahí a decir que en condiciones extremas puedan rendir igual, creo que hay un camino por recorrer aún, por lo menos con SQL Server.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/

    jueves, 11 de noviembre de 2010 20:31
    Moderador
  • Justamente y en teoria quiero hacer unas pruebas de comparacion, se esta montando un servidor virtual con iguales caracteristicas a uno fisico, que pruebas prelimianres serian adecuadas para la comparacion ?

    Tareas para ejecutar en paralelo en ambas maquinas:

    - Ejecutar un procedimiento "pesado" unas 5000 veces y ver tiempo de respuesta

    - Proceso una reindexacion.

    - Backup de BD

    - Otras...

     

    Y a la vez ir monitoreando los rendimientos.

     

    Atento a cualquier idea.

    PENTA


    jueves, 11 de noviembre de 2010 21:14
  • Hola.

    Este tipo de pruebas no suelen ser en igualdad de condiciones. Por ejemplo, lo más limitante suele ser el almacenamiento. ¿Es el mismo almacenamiento? Para estresarlo, tienes SQLIOSim (http://support.microsoft.com/kb/231619) entre otro montón de herramientas. En cuanto a los procesos en sí, toma una traza en condiciones de repetición y la corres en ambos servidores. Los backups te darán una idea del comportamiento para lecturas y escrituras secuenciales, otra prueba muy válida. También deberás estresar la memoria y la red. Para la red, es fácil, copias un fichero de gran tamaño (por ejemplo el backup que hiciste en el punto anterior. Para la memoria, también te valdrá SQLIOSim

    Otra prueba, normalmente se virtualiza porque el hardware se comparte. Estresa eso otro que haya en el servidor de máquinas virtuales y repite las pruebas.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/

    jueves, 11 de noviembre de 2010 22:03
    Moderador