¿Puedo ejecutar una máquina virtual desde una unidad USB externa?

13

Una pregunta sobre cómo configurar mis máquinas virtuales en discos internos / externos. Primero, aquí está mi configuración:

  • SO host: Windows 10
  • Procesador: i7 5600U
  • RAM: 16 GB
  • VMware Workstation Player (con licencia)

Tengo 3 máquinas virtuales hasta ahora y pronto obtendré una cuarta y ya no hay suficiente espacio en mi SSD interna, por lo que necesito un disco externo para colocar algunas de ellas. Tengo una computadora portátil con puertos USB3 y una base para la computadora portátil con un puerto eSATA. Leí sobre las velocidades de ambos, y 5Gbps vs 6Gbps no me parece una gran diferencia (pero no soy un experto en esto), y los únicos otros dispositivos USB conectados son el mouse y el teclado con cable.

Para qué estoy usando las máquinas virtuales: soy un desarrollador, y las diferentes máquinas virtuales son para diferentes entornos de desarrollo.

  • 1st VM ejecuta Windows Server 2008 con Visual Studio, servidor SQL y K2 Blackpearl.
  • 2nd VM está ejecutando Windows Server 2012 con Visual Studio, SQL Server y BizTalk (entre otras cosas que aún no sé, esta es la nueva VM que obtendré pronto)
  • 3rd VM está ejecutando Ubuntu y se usará para el desarrollo de Python (probablemente en PyCharm)
  • 4ta VM a la que todavía no he llegado - trabajé hace aproximadamente un mes :-)

Mis preguntas:

  1. ¿Es posible ejecutar una VM desde un HDD externo? (¿O el SSD es imprescindible aquí?)
  2. ¿Será suficiente USB3 o debería obtener uno que también sea compatible con eSATA?
  3. ¿Es mejor almacenar las máquinas virtuales que se usan con menos frecuencia en la unidad externa y luego moverlas a la unidad interna, cuando necesito usarla? Esto requerirá que primero mueva una VM de la unidad interna a la externa, de ahí esta pregunta.
  4. ¿Es posible ejecutar una máquina virtual desde una unidad externa sin una gran pérdida de rendimiento?

Creo que eso fue todo por ahora. Espero sus respuestas.

Atentamente,

Joakim

Para cualquiera que encuentre esta publicación y quiera saber el resultado: tenía algunas dudas sobre esta mano previa, y no recomendaría esta configuración a ningún desarrollador. El tiempo de arranque es horrible y el inicio de aplicaciones como Visual Studio tarda al menos 3-4 veces más tiempo.

Mi consejo : solo use esta solución si no tiene alternativas.

Boregore
fuente
¿Fue horrible incluso con un SSD externo, o solo usaste un HDD externo?
yitwail
No pude probarlo con un ssd externo. Me imagino que será algo mejor, pero sigo pensando que tendrías que conectarlo con e-sata para obtener un rendimiento aceptable.
Boregore
1
Recibo un SSD externo USB3 de 500 GB en un par de días, así que pondré una VM con Windows 8 y luego ejecutaré virtualbox y paralelo en el escritorio con un cronómetro, y cuando termine, publicar otro comentario con los resultados
yitwail
Genial: las personas que se topan con esta publicación apreciarán eso, creo.
Boregore
1
El SSD no estaba defectuoso, MacBook Pro necesitaba reiniciar SMC / NVRAM. Entonces, con advertencias, IE11 - Win8.1 Parallels VM es bastante útil. Si lo suspendo / reanudo y cierro aplicaciones antes de suspenderlo, se suspende y se reanuda en 3-4 segundos. Yo uso VM solo para probar IE, y IE es ágil. Parallels tiene tantas configuraciones, así que no puedo decir que tenga una configuración óptima. También modifiqué un poco Win8 para el rendimiento. Supongo que debería repetir el experimento con el disco interno, pero alguien más puede hacer eso. Para su información, es una Retina MacBook Pro de 128 GB, de ahí la necesidad de poner VM en un SSD externo.
yitwail

Respuestas:

11

La respuesta depende un poco de lo que se supone que deben hacer las máquinas virtuales. Para "papeleo" como escribir y leer estarás bien. La "pérdida importante de rendimiento" no es un valor bien definido.

Para la mayoría de las personas debería estar bien. Si te encuentras como un usuario de computadora extremadamente impaciente, obtén el equipo más rápido que puedas, incluso te sugiero reemplazar el SSD interno por uno más grande. Ahora hay un SSD de 2 TB en el mercado, que puede ser o no demasiado costoso para usted (700-800 $).

Para la programación, es probable que no obtengas mucho más al escribir código. Puede obtener un aumento de rendimiento al compilar. Si no eres del tipo que hace cosas en paralelo mientras se compila tu código, obtén el equipo más rápido que puedas.

El TLDR es: si puede permitírselo o si no tiene un HDD por ahí, obtenga un SSD, interno o externo (eSATA o USB 3). En caso de duda, obtenga las cosas buenas.

  1. ¿Es posible ejecutar una VM desde un HDD externo? (¿O el SSD es imprescindible aquí?)

Sí, es posible, pero es probable que tenga alguna pérdida de rendimiento. La VM debería funcionar bien siempre que no tenga operaciones que requieran mucha escritura de archivos. Además, cuanto más pequeña sea la VM, mejor. Si tiene una VM de Windows de 50-60 GB, será muy lenta en un 5400 HD externo con USB 3. Estoy hablando por experiencia aquí. Todavía puedes hacer cosas, pero tomará un tiempo.

Ejecutar más de una VM en un HDD externo a la vez puede ocasionar una pérdida de rendimiento severa. Considere usar dos discos duros externos para ese escenario.

  1. ¿Será suficiente USB3 o debería obtener uno que también sea compatible con eSATA?

USB3 debería estar bien, al menos en los casos en que los usé. Más rápido es mejor. Si aún no ha comprado el HDD externo, es posible que desee optar por eSATA porque nunca sabe para qué utilizará sus puertos USB de repuesto. (Es posible que desee agregar una segunda unidad externa para fines de respaldo). Con un HDD, es posible que no obtenga mucho más rendimiento de eSATA porque las velocidades de escritura y lectura de archivos en un disco de disco giratorio son el factor limitante.

También intente obtener un SSD o al menos un HDD de 7200 rpm para el disco externo, si aún puede encontrar uno. O construya uno desde una carcasa externa y una carcasa USB externa. Si no puede pagar un SSD, un 7200 reducirá los tiempos de transferencia de archivos en unos pocos puntos porcentuales.

  1. ¿Es mejor almacenar las máquinas virtuales que se usan con menos frecuencia en la unidad externa y luego moverlas a la unidad interna, cuando necesito usarla? Esto requerirá que primero mueva una VM de la unidad interna a la externa, de ahí esta pregunta.

Creo que debe mantener las máquinas virtuales que harán mucho trabajo pesado, como la escritura de archivos y el uso intensivo de la informática en la unidad interna, independientemente de la frecuencia con la que las use. Cambiarlos puede ser bastante doloroso. Copiar una máquina virtual de 20 GB de HDD interno a externo tomará entre 6 y 7 minutos a 60 MB / s. La SSD interna a externa será sustancialmente más rápida. Si considera que el rendimiento de las máquinas virtuales en el disco externo es aceptable, puede que no sea necesario moverlos. Puedes cruzar ese puente cuando llegues allí.

  1. ¿Es posible ejecutar una máquina virtual desde una unidad externa sin una gran pérdida de rendimiento?

Ver 1., sí, es posible para el trabajo de computadora normal a medio, si la VM es pequeña. Si hace diseño gráfico o muchas transferencias de archivos, puede haber una pérdida severa de rendimiento.

Para su programación necesita que sugeriría en los datos reunidos en otra parte que se obtiene un SSD ( ¿Cuál es la CPU o la memoria RAM es más importante para la compilación de software grande, por ejemplo de programa previo gcc? , Http://www.overclock.net/t/997361/compiling- y-uso-cpu ). Aunque hay algunas opiniones disidentes ( /programming/15199356/speed-up-compile-time-with-ssd ). Nuevamente, en caso de duda, obtenga las cosas buenas.

Editar: 5 de enero de 2016: se agregó información debido a experiencias recientes

el usuario 99572 está bien
fuente
Muchas gracias por tu respuesta. Sin embargo, debería haber especificado qué tipo de trabajo estoy haciendo. Agregué lo que hago a la publicación principal, ya que no puedo hacer nuevas líneas en los comentarios
Boregore
Creo que la parte de redacción de archivos es en lo que necesito pensar. ¿Tiene algún comentario sobre esto con respecto a mí como desarrollador de software? Esperaré un poco y veré si alguien más tiene algo que agregar y eventualmente aceptaré tu respuesta si no surge nada mejor :-)
Boregore
@joborr Ow, ciertamente tienes mis jugos en marcha con tu segundo comentario. ;) Un voto a favor podría suavizar mi estado de ánimo. Pero en serio, no soy programador, así que no puedo decir nada al respecto. Si está compilando código Aquí hay otro pensamiento: Compre un SSD externo para cada VM. Será una bendición. Ver arriba (en aproximadamente 2 minutos).
usuario 99572 está bien
Muy bien, gracias por todos tus consejos - muy apreciado :-)
Boregore
3

Ejecuté una VM en una memoria USB3 durante el año pasado. Fue muy fácil de hacer y muy conveniente, pero hay algunas notas al margen.

  • No estoy seguro acerca de VMWare, pero para VirtualBox solo es cuestión de soltar el archivo de su disco virtual en el USB y vincularlo a su VM. Tendrás que hacer una configuración en cada host con el que lo uses, pero eso es solo una vez. Los anfitriones juegan bastante bien entre ellos. Lo único que noté es que mi VM tendrá una interfaz de red para cada red host a la que se haya conectado, pero de lo contrario no me ha dado ningún tipo de conflicto.

  • Mi USB se acabó, lo cual no es sorprendente Las memorias USB no están diseñadas para tomar constantemente ciclos de escritura, se desgastarán bastante rápido si usa su VM para fines de desarrollo, especialmente si su VM está actuando como un servidor y escribe constantemente en archivos de registro / caché.

  • El rendimiento puede ser un problema. Si obtiene una memoria USB, busque específicamente para aquellos con altas velocidades de lectura y escritura, pero incluso entonces notará un impacto.

  • Creo que un disco SSD externo podría ser la mejor opción, es menos conveniente que un pequeño palo, pero por lo general todavía son lo suficientemente portátiles como para transportarlos fácilmente, tener un mayor rendimiento y vivir más tiempo. (Sé que Flash y SSD son realmente una misma tecnología en estos días, pero los SSD están diseñados teniendo en cuenta una mayor frecuencia de lectura y escritura, mientras que las memorias USB se centran principalmente en el almacenamiento de archivos)

He optado por utilizar algún tipo de solución híbrida en estos días. Era realmente conveniente tener mi suite de programación completa dentro de una VM portátil, pero mi IDE era notablemente más lenta y ocasionalmente se congelaba por unos segundos. Ahora uso la mayoría de mis herramientas de programación en el host mientras mantengo el código fuente y los servidores en el invitado. Sin embargo, mi VM todavía es un escritorio completo, por lo que para las raras ocasiones en que todavía tengo que trabajar en una computadora extranjera, simplemente puedo activar la GUI de mi VM y trabajar con su IDE y herramientas de programación.

Hydde87
fuente