Posso executar uma máquina virtual a partir de uma unidade USB externa?

11

Uma pergunta sobre como configurar minhas VMs em discos internos / externos. Primeiro, aqui está minha configuração:

  • Sistema operacional do host: Windows 10
  • Processador: i7 5600U
  • RAM: 16 GB
  • VMware Workstation Player (Licenciado)

Eu tenho 3 VMs até agora e logo estou ganhando um quarto e não há mais espaço suficiente no meu SSD interno, então preciso de um disco externo para colocar alguns deles. Eu tenho um laptop com portas USB3 e um dock para o laptop com uma porta eSATA. Eu li sobre as velocidades de ambos, e 5Gbps vs 6Gbps não parece ser uma grande diferença para mim (mas eu não sou especialista nisso) - e os únicos outros dispositivos USB conectados são mouse e teclado cabeados. / p>

Para que estou usando as VMs: sou um desenvolvedor e as diferentes VMs são para diferentes ambientes de desenvolvimento.

  • A 1ª VM está executando o Windows Server 2008 com o Visual Studio, o servidor SQL e o K2 Blackpearl.
  • A segunda VM está executando algum Windows Server 2012 com Visual Studio, servidor SQL e BizTalk (entre outras coisas que eu ainda não conheço - essa é a nova VM que eu vou receber em breve)
  • A 3ª VM está executando o Ubuntu e será usada para desenvolvimento em Python (provavelmente no PyCharm)
  • 4ª VM que ainda não conheci - trabalhei há cerca de um mês: -)

Minhas perguntas:

  1. É possível executar uma VM a partir de um disco rígido externo? (Ou é SSD uma obrigação aqui?)
  2. O USB3 será suficiente ou devo obter um que também suporte o eSATA?
  3. É melhor armazenar as menos usadas VMs na unidade externa e depois movê-las para a unidade interna, quando eu precisar usá-la? Isso exigirá que eu mova uma VM da unidade interna para a externa primeiro, daí a pergunta.
  4. É possível executar uma VM a partir de uma unidade externa sem perda significativa de desempenho?

Acho que foi por agora. Estou ansioso por suas respostas.

Atenciosamente,

Joakim

Para quem encontrar esta postagem e quiser saber o resultado: Eu tinha algumas dúvidas sobre essa pré-mão e não recomendaria essa configuração para nenhum desenvolvedor. O tempo de inicialização é horrível e iniciar aplicativos como o Visual Studio leva pelo menos 3-4 vezes mais tempo.

Meu conselho : use esta solução somente se você não tiver alternativas.

    
por Boregore 12.10.2015 / 16:19

2 respostas

10

A resposta depende um pouco do que as VMs devem fazer. Para "papelada", como escrever e ler, você vai ficar bem. "Perda de desempenho importante" não é um valor bem definido.

Para a maioria das pessoas, tudo bem. Se você se tornar um usuário de computador extremamente impaciente, obtenha o equipamento mais rápido que puder, eu sugiro substituir o SSD interno por um maior. Um SSD de 2 TB está agora no mercado, o que pode ou não ser muito caro para você (700-800 $).

Para programação, você provavelmente não terá muito mais impacto ao escrever código. Você pode obter um aumento de desempenho ao compilar. Se você não é do tipo que faz coisas paralelas enquanto seu código está compilando, obtenha o equipamento mais rápido possível.

O TLDR é: Se você puder pagar ou se você não tiver HDD por aí, adquira um SSD, interno ou externo (eSATA ou USB 3). Em caso de dúvida, pegue as coisas boas.

  1. É possível executar uma VM a partir de um disco rígido externo? (Ou é SSD uma obrigação aqui?)

Sim, é possível, mas você provavelmente terá alguma perda de desempenho. A VM deve funcionar corretamente, desde que você não tenha operações que exijam muita gravação de arquivos. Além disso, quanto menor a VM, melhor. Se você tiver uma VM de 50 a 60 GB do Windows, ela será muito lenta em um HD externo de 5400 com USB 3. Estou falando por experiência aqui. Você ainda pode fazer coisas, mas vai demorar um pouco.

A execução de mais de uma VM em um HDD externo de cada vez pode resultar em uma grave perda de desempenho. Considere o uso de dois HDDs externos para esse cenário.

  1. O USB3 será suficiente ou devo obter um que também suporte o eSATA?

O USB3 deve estar bem, pelo menos nos casos em que os usei. Mais rápido é melhor. Se você ainda não comprou o disco rígido externo, talvez prefira o eSATA porque nunca sabe para que usará suas portas USB sobressalentes. (Você pode querer adicionar uma segunda unidade externa para fins de backup.) Com uma HDD, você pode não obter muito mais desempenho da eSATA porque a velocidade de gravação e leitura de arquivos em um disco de prato giratório é o fator limitante.

Além disso, tente obter um SSD ou pelo menos um HD de 7200 rpm para o disco externo, se ainda puder encontrar um. Ou construa um a partir de um gabinete externo e um gabinete USB externo. Se você não puder pagar um SSD, um 7200 reduzirá os tempos de transferência de arquivos em alguns pontos percentuais.

  1. É melhor armazenar as menos usadas VMs na unidade externa e depois movê-las para a unidade interna, quando eu precisar usá-la? Isso exigirá que eu mova uma VM da unidade interna para a externa primeiro, daí a pergunta.

Acho que você deve manter as VMs que farão muito trabalho pesado, como material intensivo de gravação de arquivos e computação na unidade interna, independentemente de quantas vezes você as usa. Mudá-los pode ser bastante doloroso. A cópia de uma VM de 20 GB do HDD interno para o externo leva cerca de 6 a 7 minutos a 60 MB / s. O SSD interno para externo será substancialmente mais rápido. Se você achar que o desempenho das VMs no disco externo é aceitável, movê-los pode não ser necessário. Você pode atravessar a ponte quando chegar lá.

  1. É possível executar uma VM a partir de uma unidade externa sem perda significativa de desempenho?

Veja 1., sim, é possível para o trabalho normal ou médio do computador, se a VM é pequena. Se você fizer design gráfico ou várias transferências de arquivos, pode haver uma perda grave de desempenho.

Para suas necessidades de programação, eu sugeriria em dados reunidos em outro lugar que você obtém um SSD ( O que é mais importante CPU ou RAM para compilar grandes softwares, por exemplo, bootstrapping gcc? , link ). Embora existam algumas opiniões dissidentes ( link ). Mais uma vez, quando em dúvida, pegue as coisas boas.

Edit: Januar 5th, 2016 - adicionou algumas informações devido a experiências recentes

    
por 12.10.2015 / 17:00
1

Eu executei uma VM em um pen drive USB3 no último ano. Foi super fácil de fazer e muito conveniente, mas existem alguns sidenotes a serem feitos.

  • Não tenho certeza sobre o VMWare, mas para o VirtualBox é só uma questão de soltar o arquivo do disco virtual no USB e vinculá-lo à sua VM. Você terá que fazer uma configuração em cada host que você usa, mas isso é apenas uma coisa de uma vez. Os anfitriões jogam muito bem um com o outro. A única coisa que notei é que minha VM terá uma interface de rede para cada rede de host à qual ela está conectada, mas, por outro lado, não me deu nenhum tipo de conflito.

  • Meu USB acabou, o que não é surpreendente. Os pen drives USB não são destinados a ciclos de gravação constantes, eles se desgastam muito rapidamente se você usar sua VM para fins de desenvolvimento, especialmente se sua VM estiver atuando como um servidor e constantemente gravando arquivos de log / cache.

  • O desempenho pode ser um problema. Se você tiver um pen drive, procure especificamente por aqueles com alta velocidade de leitura e gravação, mas mesmo assim você notará um impacto.

  • Eu acho que um disco SSD externo pode ser a melhor escolha, é menos conveniente do que um pequeno dispositivo, mas normalmente ainda é portátil o suficiente para ser transportado facilmente, tem melhor desempenho e vida longa. (Estou ciente de que o Flash e o SSD são realmente a mesma tecnologia atualmente, mas os SSDs são projetados com frequência de leitura e gravação mais altas em mente, enquanto os pen drives USB são focados principalmente no armazenamento de arquivos)

Eu optei por usar algum tipo de solução híbrida nos dias de hoje. Foi muito conveniente ter minha suíte de programação completa dentro de uma VM portátil, mas meu IDE estava visivelmente mais lento e, ocasionalmente, congelava por alguns segundos. Agora eu uso a maioria das minhas ferramentas de programação no host, mantendo o código fonte e os servidores no guest. Minha VM ainda é uma área de trabalho bem desenvolvida, portanto, nas raras ocasiões em que ainda tenho que trabalhar em um computador externo, posso simplesmente girar a GUI da VM e trabalhar com suas ferramentas de programação e IDE.

    
por 12.10.2018 / 16:38