ESX 5: Делаем реальный диск доступным в виртуальной машине

Дано:

При создании виртуальной машины (ВМ) в гипервизоре мы видим, что использовать реальные диски напрямую нельзя - разрешено использовать только виртуальные.

Задача:

Задача будет решаться с помощью raw device mapping (RDM), позволяющая осуществлять прямой доступ к реальным дискам из ВМ.

Ссылки:

Последовательность действий

1. подключаемся по SSH к ESX 5 (SSH при этом должен быть включен)

2. далее исходим из того, что вы знаете модель диска (для примера, WDC_WD10EADS2D65L5B1), который нужно сделать доступным в ВМ. Выполняем команду:

# ls /dev/disks/ -l
-rw-------    1 root     root       160041885696 Nov 19 21:38 t10.ATA_____VB0160EAVEQ_____________________________9VYA0CHP____________
-rw-------    1 root     root       160041853440 Nov 19 21:38 t10.ATA_____VB0160EAVEQ_____________________________9VYA0CHP____________:1
-rw-------    1 root     root      1000204886016 Nov 19 21:38 t10.ATA_____WDC_WD10EADS2D65L5B1__________________________WD2DWCAU49290622
-rw-------    1 root     root      1000202241024 Nov 19 21:38 t10.ATA_____WDC_WD10EADS2D65L5B1__________________________WD2DWCAU49290622:1
-rw-------    1 root     root      1500301910016 Nov 19 21:38 t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00399015
-rw-------    1 root     root      1073741824000 Nov 19 21:38 t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00399015:1
-rw-------    1 root     root       426560051712 Nov 19 21:38 t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00399015:2
-rw-------    1 root     root      1500301910016 Nov 19 21:38 t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00980425
-rw-------    1 root     root      1073741824000 Nov 19 21:38 t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00980425:1
-rw-------    1 root     root       426560051712 Nov 19 21:38 t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00980425:2
-rw-------    1 root     root       320072933376 Nov 19 21:38 t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701
-rw-------    1 root     root            4161536 Nov 19 21:38 t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:1
-rw-------    1 root     root         4293918720 Nov 19 21:38 t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:2
-rw-------    1 root     root       314835279360 Nov 19 21:38 t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:3
-rw-------    1 root     root          262127616 Nov 19 21:38 t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:5
-rw-------    1 root     root          262127616 Nov 19 21:38 t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:6
-rw-------    1 root     root          115326976 Nov 19 21:38 t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:7
-rw-------    1 root     root          299876352 Nov 19 21:38 t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:8
lrwxrwxrwx    1 root     root                 74 Nov 19 21:38 vml.0100000000202020202057442d574341553439323930363232574443205744 -> t10.ATA_____WDC_WD10EADS2D65L5B1__________________________WD2DWCAU49290622
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341553439323930363232574443205744:1 -> t10.ATA_____WDC_WD10EADS2D65L5B1__________________________WD2DWCAU49290622:1
lrwxrwxrwx    1 root     root                 74 Nov 19 21:38 vml.0100000000202020202057442d574341563244333430373031574443205744 -> t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341563244333430373031574443205744:1 -> t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:1
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341563244333430373031574443205744:2 -> t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:2
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341563244333430373031574443205744:3 -> t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:3
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341563244333430373031574443205744:5 -> t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:5
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341563244333430373031574443205744:6 -> t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:6
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341563244333430373031574443205744:7 -> t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:7
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341563244333430373031574443205744:8 -> t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2D340701:8
lrwxrwxrwx    1 root     root                 74 Nov 19 21:38 vml.0100000000202020202057442d574d41593030333939303135574443205744 -> t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00399015
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574d41593030333939303135574443205744:1 -> t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00399015:1
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574d41593030333939303135574443205744:2 -> t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00399015:2
lrwxrwxrwx    1 root     root                 74 Nov 19 21:38 vml.0100000000202020202057442d574d41593030393830343235574443205744 -> t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00980425
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574d41593030393830343235574443205744:1 -> t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00980425:1
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574d41593030393830343235574443205744:2 -> t10.ATA_____WDC_WD1501FASS2D00W2B0________________________WD2DWMAY00980425:2
lrwxrwxrwx    1 root     root                 72 Nov 19 21:38 vml.01000000003956594130434850202020202020202020202020564230313630 -> t10.ATA_____VB0160EAVEQ_____________________________9VYA0CHP____________
lrwxrwxrwx    1 root     root                 74 Nov 19 21:38 vml.01000000003956594130434850202020202020202020202020564230313630:1 -> t10.ATA_____VB0160EAVEQ_____________________________9VYA0CHP____________:1

Из примера выше, нас интересуют строки, ссылающиеся на искомую модель диска, а именно:

lrwxrwxrwx    1 root     root                 74 Nov 19 21:38 vml.0100000000202020202057442d574341553439323930363232574443205744 -> t10.ATA_____WDC_WD10EADS2D65L5B1__________________________WD2DWCAU49290622
lrwxrwxrwx    1 root     root                 76 Nov 19 21:38 vml.0100000000202020202057442d574341553439323930363232574443205744:1 -> t10.ATA_____WDC_WD10EADS2D65L5B1__________________________WD2DWCAU49290622:1

А точнее, только имя ссылки vml.0100000000202020202057442d574341553439323930363232574443205744

3. Переходим в каталог /vmfs/volumes/:

# cd /vmfs/volumes/

и выполняем просмотр содержимого каталога:

# ls -l

Видим вывод:

/vmfs/volumes # ls -l
drwxr-xr-x    1 root     root                  8 Jan  1  1970 4ec6edb4-f33b1dab-a76e-d48564cc56a9
drwxr-xr-t    1 root     root               1400 Nov 19 01:36 4ec6edbc-44036971-0ad4-d48564cc56a9
drwxr-xr-x    1 root     root                  8 Jan  1  1970 4ec6edbd-97439b40-a0e3-d48564cc56a9
drwxr-xr-x    1 root     root                  8 Jan  1  1970 6514d37c-1b3189a9-cbd0-d4a5c1272d59
drwxr-xr-x    1 root     root                  8 Jan  1  1970 a1924e72-26ac046e-e9e8-53d6c01cd524
lrwxr-xr-x    1 root     root                 35 Nov 19 21:46 datastore1 -> 4ec6edbc-44036971-0ad4-d48564cc56a9

Нам нужно перейти в файловую систему, которая подключена к гипервизору и на которой хранятся файлы виртуальных машин. Это легко понять по символической ссылке, в моем случае datastore1. Итак, заходим в ФС:

 # cd datastore1/

4. Создаем каталог с любым именем, к примеру RDMs:

# mkdir RDMs

и заходим в этот каталог:

# cd RDMs

5. Выполняем команду

vmkfstools -z /vmfs/devices/disks/<ссылка с шага 2> RDM1P.vmdk -a lsilogic

т.е.

vmkfstools -z /vmfs/devices/disks/vml.0100000000202020202057442d574341553439323930363232574443205744 RDM1P.vmdk -a lsilogic

если все успешно, то в текущем каталоге вы увидите созданный файл.

Описанный метод подключения диска не работает в виртуальной среде (если вы поставили ESX в виртуальную машину в VMWare Workstation)

6. Большая часть работы выполнена. Осталось создать ВМ в клиенте vSphere Client 5.0, в свойствах ВМ добавить жесткий диск и указать использовать существующий виртуальный диск: 7. На этапе выбора местонахождения файла диска выберите ваше хранилище (у меня по-умолчанию datastore), каталог который вы создали на шаге 4 и файл, который отображает содержимое реального диска: 8. Все! Диск подключен, осталось включить ВМ и загрузиться с реального диска.

TAG: