Comment transmettre des disques SATA natifs à un invité sur ESXi?

9

J'ai ESXi 4.0 fonctionnant sur une carte mère Intel DX58S0 avec un processeur Intel Core i7 930. VT-d est également activé.

J'ai trois disques dans le système, le disque 0 est utilisé pour ESXi. Les lecteurs 1 et 2 contiennent des données d'une machine plus ancienne et apparaissent sous la section "Adaptateurs de stockage" dans la configuration.

Je voudrais autoriser une machine invitée à accéder aux données sur ces disques (aussi nativement que possible). J'ai activé le passthrough du contrôleur SATA intégré de la carte mère (Intel / Marvell 88SE6121). Ce contrôleur apparaît dans mon système d'exploitation invité, mais l'invité n'affiche aucun lecteur en dehors du lecteur virtuel normal. J'ai essayé un invité Linux et Windows7. J'ai également configuré la machine hôte pour essayer les modes IDE / RAID / ACHI pour le contrôleur SATA.

Des idées sur la façon dont je peux configurer un de mes invités pour obtenir les données brutes sur ces disques?


la source
2
Votre système / composants est-il sur VMWare HCL, répertoriant spécifiquement la compatibilité VT-d.
Chopper3
VT-d serait-il même pertinent avec un lecteur SATA à moins que vous n'ayez l'intention de passer par l'ensemble de l'adaptateur hôte SATA?
rackandboneman

Réponses:

9

J'ai eu un problème similaire avec certains lecteurs d'un serveur en panne, j'ai trouvé la réponse sur cette page. http://www.vm-help.com/esx40i/SATA_RDMs.php

C'est beaucoup plus facile que le pass-through du contrôleur ou l'une des autres astuces auxquelles j'avais pensé, mais vous devez pouvoir utiliser la console de service (google esxi mode non pris en charge ssh)

sommaire:

Étape 1) fdisk -lpour trouver le nom de l'appareil

Étape 2) ls /dev/disks -lpour trouver l'identifiant VML

Étape 3) vmkfstools -r VMLid aVMDKName.vmdk

Étape 4) Ajoutez le aVMDKName.VMDKà une machine virtuelle.

par exemple: vmkfstools -r /vmfs/devices/disks/naa.5000c5003010054f /vmfs/volumes/hdd/lanparty.vmdk

Je n'ai pas pu démarrer les disques comme je l'avais espéré (P2V sans copier 500 Go sur le réseau), mais j'ai pu les attacher à une autre machine virtuelle et accéder aux données.

kevinf
la source
Votre /vmfs/volumes/hddbanque de données existante est-elle associée à des disques existants ou une nouvelle banque de données doit-elle être créée pour le nouveau disque?
golimar
1

Une autre solution consisterait à effectuer les opérations suivantes:

Étape 1) Assurez-vous que le support technique à distance (SSH) est activé et en cours d'exécution. Étape 2) SSH vers l'hôte Étape 3) fdisk -l | grep -B4 'ne contient pas de table de partition valide'

Remarque: Cela vous montrera tous les disques physiques qui n'ont pas encore de partitions, comme un nouveau LUN SAN provisionné. Ça devrait ressembler a quelque chose comme ca:

Disque /dev/disks/naa.60060e801004eb90052fab6900000000: 42,9 Go, 42949672960 octets 255 têtes, 63 secteurs / piste, 5221 cylindres Unités = cylindres de 16065 * 512 = 8225280 octets

Le disque /dev/disks/naa.60060e801004eb90052fab6900000000 ne contient pas de table de partition valide

Disque /dev/disks/naa.60060e801004eb90052fab6900000001: 42,9 Go, 42949672960 octets 255 têtes, 63 secteurs / piste, 5221 cylindres Unités = cylindres de 16065 * 512 = 8225280 octets

Le disque /dev/disks/naa.60060e801004eb90052fab6900000001 ne contient pas de table de partition valide

Disque /dev/disks/naa.60060e801004eb90052fab6900000002: 42,9 Go, 42949672960 octets 255 têtes, 63 secteurs / piste, 5221 cylindres Unités = cylindres de 16065 * 512 = 8225280 octets

Le disque /dev/disks/naa.60060e801004eb90052fab6900000002 ne contient pas de table de partition valide

Si cette commande ne vous montre aucun périphérique, ma procédure n'est probablement pas pour vous, car, comme les affiches précédentes, je suppose que la raison pour laquelle votre bouton radio VC "Raw Device Mappings" est grisé est parce que le Le LUN n'a pas de partition.

Étape 4) Créez une nouvelle partition, "fdisk /dev/disks/naa.60060e801004eb90052fab6900000000" Remarque: Vous devrez utiliser votre propre nom d'appareil ici. Étape 5) Si vous n'êtes pas trop familier avec fdisk, vous pouvez le faire:

a) "p" pour imprimer les partitions existantes. Si vous n'en voyez pas, alors vous pouvez probablement continuer.

b) "n" pour créer une nouvelle partition.

c) "p" pour primaire

d) "1" pour la partition 1

e) pour sélectionner le secteur de démarrage par défaut

f) pour sélectionner le secteur final par défaut

g) "w" pour écrire

h) "q" pour quitter

Étape 6) Vous devriez maintenant pouvoir attribuer le disque brut dans VirtualCenter.


la source
0

La dernière réponse est vraie mais avec quelques modifications dans les commandes, comme celles-ci

  1. fdisk -l pour trouver le nom de l'appareil
  2. ls /dev/disks -l trouver l'identifiant VML
  3. vmkfstools VMDKName-withFullPath.vmdk (c'est-à-dire /vmfs/volumes/disk2/somename.vmdk) -a adaptertype -z /vmfs/devices/disks/vml.0200000000600508b1001037383941424344450d004c4f4749434
  4. Ajoutez le VMDKName-withFullPath.vmdk à une machine virtuelle.

Remarque : à l'étape 3, vous pouvez utiliser -rswitch au lieu de -z. Ces commutateurs dépendent de votre contrôleur de disque. Un autre problème important est que cette solution concerne l'accès brut au disque. Pour accéder à une partition de manière physique, vous devez peut-être utiliser -rswitch.

Mostafa Rezaei
la source