Puis-je exécuter une machine virtuelle à partir d'un lecteur USB externe?

13

Une question concernant la configuration de mes machines virtuelles sur des disques internes / externes. Tout d'abord, voici ma configuration:

  • Système d'exploitation hôte: Windows 10
  • Processeur: i7 5600U
  • RAM: 16 Go
  • VMware Workstation Player (sous licence)

J'ai jusqu'à présent 3 machines virtuelles et j'en reçois bientôt une quatrième et il n'y a plus assez d'espace sur mon SSD interne, j'ai donc besoin d'un disque externe pour en placer certaines. J'ai un ordinateur portable avec des ports USB3 et une station d'accueil pour l'ordinateur portable avec un port eSATA. J'ai lu sur les vitesses des deux, et 5 Gbit / s vs 6 Gbit / s ne me semblent pas faire une grande différence (mais je ne suis pas un expert en la matière) - et les seuls autres périphériques USB connectés sont la souris et le clavier câblés.

Pourquoi j'utilise les machines virtuelles: je suis développeur et les différentes machines virtuelles sont destinées à différents environnements de développement.

  • La 1ère VM exécute Windows Server 2008 avec Visual Studio, SQL server et K2 Blackpearl.
  • La 2e machine virtuelle exécute Windows Server 2012 avec Visual Studio, SQL Server et BizTalk (entre autres choses, je ne sais pas encore - c'est la nouvelle machine virtuelle que j'obtiendrai bientôt)
  • La 3e VM exécute Ubuntu et sera utilisée pour le développement Python (probablement dans PyCharm)
  • 4e VM que je n'ai pas encore rencontrée - J'étais employé il y a environ un mois :-)

Mes questions:

  1. Est-il possible d'exécuter une VM à partir d'un disque dur externe? (Ou le SSD est-il un must ici?)
  2. L'USB3 suffira-t-il ou devrais-je en obtenir un qui prend également en charge eSATA?
  3. Est-il préférable de stocker les machines virtuelles utilisées moins fréquemment sur le disque externe, puis de les déplacer sur le disque interne, lorsque je dois l'utiliser? Cela nécessitera que je déplace une machine virtuelle du disque interne vers un disque externe en premier, d'où cette question.
  4. Est-il même possible d'exécuter une machine virtuelle à partir d'un disque externe sans perte de performances majeure?

Je pense que c'était tout pour l'instant. J'attends vos réponses avec impatience.

Meilleures salutations,

Joakim

Pour tous ceux qui trouvent ce post et veulent connaître le résultat: j'avais des doutes sur cette pré-main, et je ne recommanderais pas cette configuration à aucun développeur. Le temps de démarrage est horrible et le démarrage d'applications comme Visual Studio prend au moins 3 à 4 fois plus de temps.

Mon conseil : n'utilisez cette solution que si vous n'avez pas d'alternative.

Boregore
la source
Était-ce horrible même avec un SSD externe, ou avez-vous uniquement utilisé un disque dur externe?
yitwail
Je n'ai pas pu l'essayer avec un ssd externe. J'imagine que ce sera un peu mieux, mais je pense toujours que vous auriez besoin de le connecter à e-sata pour une performance acceptable, cependant.
Boregore
1
Je reçois un SSD externe USB3 de 500 Go dans quelques jours, donc je vais y mettre une machine virtuelle Windows 8, puis exécuter virtualbox & parallels desktop dessus avec un chronomètre dessus, et quand cela sera fait, je poster un autre commentaire avec les résultats
yitwail
Cool - les gens qui tombent sur ce post apprécieront que je pense.
Boregore
1
Le SSD n'était pas défectueux, le MacBook Pro avait besoin d'une réinitialisation SMC / NVRAM. Donc, avec des mises en garde, IE11 - Win8.1 Parallels VM est tout à fait utilisable. Si je le suspend / le reprends et ferme les applications avant de le suspendre, il se suspend et reprend dans 3-4 secondes. J'utilise VM uniquement pour tester IE, et IE est accrocheur. Parallels a tellement de paramètres, donc je ne peux pas dire que j'ai une configuration optimale. J'ai également modifié légèrement Win8 pour les performances. Je suppose que je devrais répéter l'expérience avec le disque interne, mais quelqu'un d'autre peut le faire. Pour info, il s'agit d'un Retina MacBook Pro de 128 Go, d'où la nécessité de mettre la VM dans un SSD externe.
yitwail

Réponses:

11

La réponse dépend un peu de ce que les VM sont censées faire. Pour la "paperasse" comme l'écriture et la lecture, tout ira bien. La «perte de performance majeure» n'est pas une valeur bien définie.

Pour la plupart des gens, ça devrait aller. Si vous vous trouvez être un utilisateur d'ordinateur extrêmement impatient, obtenez l'équipement le plus rapide possible, je suggérerais même de remplacer le SSD interne par un plus gros. Un SSD de 2 To est maintenant sur le marché, ce qui peut ou non être trop cher pour vous (700-800 $).

Pour la programmation, vous n'obtiendrez probablement pas beaucoup plus lors de l'écriture de code. Vous pourriez obtenir une amélioration des performances lors de la compilation. Si vous n'êtes pas du genre à faire des choses en parallèle pendant la compilation de votre code, obtenez l'équipement le plus rapide possible.

Le TLDR est: Si vous pouvez vous le permettre ou si vous n'avez pas de disque dur, procurez-vous un SSD, interne ou externe (eSATA ou USB 3). En cas de doute, procurez-vous les bonnes choses.

  1. Est-il possible d'exécuter une VM à partir d'un disque dur externe? (Ou le SSD est-il un must ici?)

Oui, c'est possible, mais vous perdrez probablement des performances. La machine virtuelle devrait fonctionner correctement tant que vous n'avez pas d'opérations qui nécessitent beaucoup d'écriture de fichiers. En outre, plus la machine virtuelle est petite, mieux c'est. Si vous avez une machine virtuelle Windows de 50 à 60 Go, ce sera très lent sur un 5400 HD externe avec USB 3. Je parle d'expérience ici. Vous pouvez toujours faire des choses, mais cela prendra un certain temps.

L'exécution de plusieurs machines virtuelles sur un disque dur externe à la fois peut entraîner une grave perte de performances. Pensez à utiliser deux disques durs externes pour ce scénario.

  1. L'USB3 suffira-t-il ou devrais-je en obtenir un qui prend également en charge eSATA?

L'USB3 devrait convenir, du moins c'était dans les cas où je les utilisais. Plus vite c'est mieux. Si vous n'avez pas encore acheté le disque dur externe, vous voudrez peut-être opter pour eSATA car vous ne savez jamais pour quoi vous utiliserez vos ports USB de rechange. (Vous voudrez peut-être ajouter un deuxième disque dur externe à des fins de sauvegarde.) Avec un disque dur, vous n'obtiendrez peut-être pas beaucoup plus de performances d'eSATA car les vitesses d'écriture et de lecture de fichiers sur un disque en rotation sont le facteur limitant.

Essayez également d'obtenir un SSD ou au moins un disque dur à 7200 tr / min pour le lecteur externe, si vous pouvez toujours en trouver un. Ou créez-en un à partir d'un boîtier externe et d'un boîtier USB externe. Si vous ne pouvez pas vous permettre un SSD, un 7200 réduira les temps de transfert de fichiers de quelques points de pourcentage.

  1. Est-il préférable de stocker les machines virtuelles utilisées moins fréquemment sur le disque externe, puis de les déplacer sur le disque interne, lorsque je dois l'utiliser? Cela nécessitera que je déplace une machine virtuelle du disque interne vers un disque externe en premier, d'où cette question.

Je pense que vous devriez garder les machines virtuelles qui feront beaucoup de travail lourd comme l'écriture de fichiers et des trucs intensifs sur le disque interne, quelle que soit la fréquence à laquelle vous les utilisez. Les déplacer peut être assez pénible. La copie d'une machine virtuelle de 20 Go d'un disque dur interne vers un disque dur externe prendra environ 6 à 7 minutes à 60 Mo / s. Le SSD interne à externe sera considérablement plus rapide. Si vous trouvez que les performances des machines virtuelles sur le disque externe sont acceptables, il peut ne pas être nécessaire de les déplacer. Vous pouvez traverser ce pont lorsque vous y arrivez.

  1. Est-il même possible d'exécuter une machine virtuelle à partir d'un disque externe sans perte de performances majeure?

Voir 1., oui, il est possible pour un travail informatique normal à moyen, si la machine virtuelle est petite. Si vous effectuez la conception graphique ou de nombreux transferts de fichiers, il peut y avoir une grave perte de performances.

Pour votre programmation a besoin , je suggérerais sur des données recueillies par ailleurs que vous obtenez un SSD ( Qu'est - ce qui est plus important CPU ou RAM pour compiler un grand logiciel, par exemple bootstrapping gcc? , Http://www.overclock.net/t/997361/compiling- et-cpu-usage ). Bien qu'il existe des opinions dissidentes ( /programming/15199356/speed-up-compile-time-with-ssd ). Encore une fois, en cas de doute, procurez-vous les bonnes choses.

Edit: 5 janvier 2016 - a ajouté quelques informations en raison d'expériences récentes

l'utilisateur 99572 est très bien
la source
Merci beaucoup pour votre réponse. J'aurais dû préciser quel genre de travail je fais cependant. J'ai plutôt ajouté ce que je fais au message principal car je ne peux pas faire de nouvelles lignes dans les commentaires
Boregore
Je suppose que la partie écriture de fichiers est ce à quoi je dois penser. Avez-vous des commentaires à ce sujet en ce qui me concerne en tant que développeur de logiciels? Je vais attendre un peu et voir si quelqu'un d'autre a quelque chose à ajouter et finalement accepter votre réponse si rien de mieux n'arrive :-)
Boregore
@joborr Ow, vous avez certainement obtenu mon jus avec votre 2ème commentaire. ;) Un vote positif pourrait adoucir mon humeur. Mais sérieusement, je ne suis pas programmeur donc je ne peux rien dire à ce sujet. Si vous compilez du code Voici une autre idée: achetez un SSD externe pour chaque machine virtuelle. Ce sera une aubaine. Voir ci-dessus (dans environ 2 minutes).
utilisateur 99572 va bien
Très bien, merci pour tous vos conseils - très apprécié :-)
Boregore
3

J'ai exécuté une machine virtuelle sur une clé USB3 au cours de la dernière année. C'était super facile à faire et très pratique, mais il y a quelques notes à faire.

  • Je ne suis pas sûr de VMWare, mais pour VirtualBox, il suffit de déposer votre fichier de disque virtuel sur l'USB et de le lier à votre machine virtuelle. Vous devrez faire une configuration sur chaque hôte avec lequel vous l'utilisez, mais ce n'est qu'une chose unique. Les hôtes jouent assez bien les uns avec les autres. La seule chose que j'ai remarquée est que ma machine virtuelle aura une interface réseau pour chaque réseau hôte auquel elle a été connectée, mais sinon cela ne m'a donné aucun type de conflit.

  • Mon USB a finalement cédé, ce qui n'est pas surprenant. Les clés USB ne sont pas conçues pour prendre constamment des cycles d'écriture, elles s'useront assez rapidement si vous utilisez votre machine virtuelle à des fins de développement, surtout si votre machine virtuelle agit comme un serveur et écrit constamment dans des fichiers journaux / cache.

  • Les performances peuvent être un problème. Si vous obtenez une clé USB, recherchez spécifiquement celles qui ont des vitesses de lecture et d'écriture élevées, mais même alors, vous remarquerez un impact.

  • Je pense qu'un disque SSD externe pourrait être le meilleur choix, c'est moins pratique qu'un petit bâton, mais généralement ils sont toujours assez portables pour être facilement transportés, avoir des performances plus élevées et vivre plus longtemps. (Je suis conscient que Flash et SSD sont vraiment une seule et même technologie ces jours-ci, mais les SSD sont conçus avec une fréquence de lecture et d'écriture plus élevée alors que les clés USB sont principalement axées uniquement sur le stockage de fichiers)

J'ai choisi d'utiliser une sorte de solution hybride ces jours-ci. C'était vraiment pratique d'avoir ma suite de programmation complète à l'intérieur d'une machine virtuelle portable, mais mon IDE fonctionnait sensiblement plus lentement à l'intérieur et se bloquait parfois pendant quelques secondes. Maintenant, j'utilise la plupart de mes outils de programmation sur l'hôte tout en conservant le code source et les serveurs sur l'invité. Ma machine virtuelle est toujours un bureau à part entière aussi, donc pour les rares occasions où je dois encore travailler sur un ordinateur étranger, je peux simplement faire tourner l'interface graphique de ma machine virtuelle et travailler avec son IDE et ses outils de programmation.

Hydde87
la source