2009-01-19 8 views

Respuesta

2

Como siempre, depende ...

Asumiendo que usted tiene en ejecución de otra máquina virtual en el mismo servidor, y aquellos otros VM puede manejar las ralentizaciones ocasionales causadas por una acumulación de funcionamiento, luego yo diría que sí. Pero si va a hospedar una sola VM del servidor de compilación en un solo host, o si las otras VM se verán negativamente afectadas por la ejecución ocasional de compilación, entonces no.

Puedo decirles que donde trabajo, hemos cambiado al alojamiento de la mayoría de nuestros servidores de compilación en VMWare. Dado que ejecutamos varias compilaciones por semana de más de 5 líneas de productos, tiene sentido que las alojemos todas en una máquina rápida. También alojamos una gran parte de nuestras máquinas de prueba en el mismo servidor, lo que nos permite darle un buen uso a la máquina y, dado que no hay servidores de producción ejecutándose, las ralentizaciones que ocurren durante las compilaciones no son un problema.

0

No veo ningún beneficio, a menos que su máquina virtual esté en una caja que es un servidor virtual.

10

He aquí algunas de las ventajas de funcionamiento de su servidor de compilación en un entorno virtual:

Compartir una caja gritando rápido a través de varios servidores construcción - Digamos que tienes media docena construir servidores. Arme una máquina muy rápida (4-cpu, 64-128gb ram, discos duros muy rápidos, etc.) y ejecute un hipervisor en ella. Ahora, todos los servidores de compilación pueden acceder a este hardware más rápido si están haciendo compilaciones cuando otros servidores de compilación no lo hacen. Establezca un cronograma de compilación, y debería poder hacer compilaciones más rápidas. Si tiene que usar cuadros físicos, probablemente no podrá pagar ese nivel de calidad de hardware en cada servidor de compilación individual, pero eso es más fácil de justificar cuando se comparte.

Sin tiempo de inactividad cuando la caja no - en lugar de su producción crece llegando a un alto que se estrella cada vez que hay un problema de hardware, sólo tiene que arrancar el servidor de compilación en otro host de virtualización. (Esto solo funciona bien si está usando almacenamiento compartido.)

Actualizaciones de hardware fáciles - cuando llega el momento de un nuevo servidor de compilación, no tiene que volver a instalar ningún sistema operativo molesto. Simplemente mueva el SO invitado al nuevo host físico, y estará listo para las carreras.

1

Un servidor de compilación es algo que debe construirse de una manera muy consistente. Debe tener una receta bien documentada y completamente reproducible para hacer su servidor de compilación.

Sin embargo, los servidores de desarrollo no son masivamente críticos para el rendimiento ... o al menos, no son críticos para el rendimiento de su sistema de producción, por lo que podría tener uno en una VM.

El uso de máquinas virtuales es realmente una buena idea si necesita ser independiente de la compatibilidad de hardware y software. Su proveedor de hardware preferido puede dejar de admitir su versión de SO requerida para su servidor de compilación en sus nuevas máquinas, luego su garantía puede caducar en su antiguo servidor de compilación. Esto te deja potencialmente incapaz de hacer compilaciones en ese sistema operativo.

Enfrentaría una ebay de arrastre para un reemplazo de 2da mano, comprando las existencias obsoletas de su proveedor o haciendo algún truco de software no compatible.(NB: esto casi nos pasó a nosotros, e hicimos un poco de esto)

0

Las ventajas y desventajas de usar una VM para su servidor de compilación son las mismas que usar una VM para cualquier otro servicio.

Esta pregunta es tan aplicable a la utilización de una máquina virtual para un servidor servidor de correo/wiki etc.

(I habría acaba de publicar esto como un comentario, pero no tienen el representante aún)

Cuestiones relacionadas