Как вы проходите через SATA диски к гостю на ESXi?

9

У меня ESXi 4.0 работает на плате Intel DX58S0 Mothboard с процессором Intel Core i7 930. VT-d также включен.

У меня есть три диска в системе, диск 0 используется для ESXi. Диски 1 и 2 содержат данные со старой машины и отображаются в разделе «Адаптеры хранилища» в конфигурации.

Я хотел бы разрешить гостевой машине доступ к данным на этих дисках (как можно более наивно). Я включил проход встроенного в материнскую плату контроллера SATA (Intel / Marvell 88SE6121). Этот контроллер отображается в моей гостевой ОС, но гость не показывает никаких дисков, кроме обычного виртуального диска. Я попробовал гостя Linux и Windows7. Я также настроил хост-машину, чтобы попробовать режимы IDE / RAID / ACHI для контроллера SATA.

Любые идеи, как я могу настроить один из моих гостей, чтобы получить необработанные данные на этих дисках?


источник
2
Являетесь ли вы системой / компонентами на VMWare HCL, конкретно перечисляя совместимость VT-d.
Chopper3
Будет ли VT-d иметь отношение к диску SATA, если вы не собираетесь проходить через весь хост-адаптер SATA?
rackandboneman

Ответы:

9

У меня была похожая проблема с некоторыми дисками с сервера, который вышел из строя, я нашел ответ на этой странице. http://www.vm-help.com/esx40i/SATA_RDMs.php

Это намного проще, чем прохождение через контроллер или любой другой трюк, о котором я подумал, но вам нужно иметь возможность использовать консоль службы (gsh esxi, неподдерживаемый режим ssh)

резюме:

Шаг 1) fdisk -lнайти имя устройства

Шаг 2) ls /dev/disks -lнайти идентификатор VML

Шаг 3) vmkfstools -r VMLid aVMDKName.vmdk

Шаг 4) Добавьте aVMDKName.VMDKк виртуальной машине.

например: vmkfstools -r /vmfs/devices/disks/naa.5000c5003010054f /vmfs/volumes/hdd/lanparty.vmdk

Я не смог загрузиться с дисков, как я надеялся (P2V, не копируя 500 ГБ по сети), но я смог подключить их к другой виртуальной машине и получить данные.

kevinf
источник
Ваше /vmfs/volumes/hddсуществующее хранилище данных связано с существующими дисками или новое хранилище данных должно быть создано для нового диска?
Голимар
1

Другим решением было бы выполнить следующее:

Шаг 1) Убедитесь, что удаленная техническая поддержка (SSH) включена и работает. Шаг 2) SSH к хосту Шаг 3) fdisk -l | grep -B4 'не содержит допустимой таблицы разделов'

Примечание: Это покажет вам все физические диски, у которых еще нет разделов, например, недавно предоставленный SAN LUN. Это должно выглядеть примерно так:

Диск /dev/disks/naa.60060e801004eb90052fab6900000000: 42,9 ГБ, 42949672960 байт, 255 головок, 63 сектора / дорожка, 5221 цилиндров. Единицы = цилиндры 16065 * 512 = 8225280 байт.

Диск /dev/disks/naa.60060e801004eb90052fab6900000000 не содержит допустимой таблицы разделов

Диск /dev/disks/naa.60060e801004eb90052fab6900000001: 42,9 ГБ, 42949672960 байт, 255 головок, 63 сектора / дорожка, 5221 цилиндров. Единицы = цилиндры 16065 * 512 = 8225280 байтов

Диск /dev/disks/naa.60060e801004eb90052fab6900000001 не содержит допустимой таблицы разделов

Диск /dev/disks/naa.60060e801004eb90052fab6900000002: 42,9 ГБ, 42949672960 байт, 255 головок, 63 сектора / дорожка, 5221 цилиндров. Единицы = цилиндры 16065 * 512 = 8225280 байт.

Диск /dev/disks/naa.60060e801004eb90052fab6900000002 не содержит допустимой таблицы разделов

Если эта команда не показывает какие-либо устройства, моя процедура, вероятно, не для вас, поскольку я, как и предыдущие авторы, предполагаю, что причина, по которой ваш переключатель VC «Raw Device Mappings» неактивен, состоит в том, что У LUN нет раздела.

Шаг 4) Создайте новый раздел «fdisk /dev/disks/naa.60060e801004eb90052fab6900000000» Примечание. Здесь вам нужно будет использовать собственное имя устройства. Шаг 5) Если вы не слишком знакомы с fdisk, вы можете сделать это:

а) «р» для печати существующих разделов. Если вы не видите ничего, тогда, вероятно, безопасно продолжить.

б) «п», чтобы создать новый раздел.

в) «р» для основного

г) "1" для раздела 1

д) выбрать начальный сектор по умолчанию

f) выбрать конечный сектор по умолчанию

г) "ш" написать

h) "q", чтобы выйти

Шаг 6) Теперь вы сможете назначить сырой диск в VirtualCenter.


источник
0

Последний ответ верен, но с некоторыми изменениями в командах, таких как эти

  1. fdisk -l найти имя устройства
  2. ls /dev/disks -l найти идентификатор VML
  3. vmkfstools VMDKName-withFullPath.vmdk (то есть /vmfs/volumes/disk2/somename.vmdk) -a тип_адаптера -z /vmfs/devices/disks/vml.0200000000600508b1001037383941424344450d004c447
  4. Добавьте VMDKName-withFullPath.vmdk на виртуальную машину.

Примечание . На шаге 3 вы можете использовать -rпереключатель вместо -z. Эти параметры зависят от вашего контроллера диска. Другая важная проблема заключается в том, что это решение для прямого доступа к диску. Чтобы получить доступ к разделу физическим способом, возможно, вы должны использовать -rпереключатель.

Мостафа Резаеи
источник