Назад | Перейти на главную страницу

Соответствует ли SCSI HBA ata_piix или mptspi виртуальному диску виртуальной машины в VMware?

У меня есть виртуальная машина Debian, работающая на VMware, где cat /sys/class/scsi_host/host?/proc_name возвращает следующий вывод:

ata_piix
ata_piix
mptspi

Из этого я понимаю, что виртуальная машина имеет три (виртуальных) SCSI HBA.

Как я могу узнать, какие из этих HBA (host0, host1, или host2) поддерживает виртуальный диск моей виртуальной машины?

vSphere Client показывает виртуальные машины Hard Disk 1 с участием Virtual Device Node: SCSI (0:0) Hard Disk 1 и это SCSI controller 0 так как SCSI Controller Type: LSI Logic Parallel. На хосте, по-видимому, работает VMware ESXi 6.0.0.

Есть несколько способов сделать это - я только что перечислил два ниже.

  1. Использовать hwinfo если он у вас установлен:

    $ hwinfo --disk
    ...
    28: IDE 06.0: 10600 Disk
    ...
    SysFS Device Link: /devices/pci0000:00/0000:00:01.0/0000:01:00.0/host0/port-0:6/end_device-0:6/target0:0:6/0:0:6:0
    ...
    Driver: "mpt3sas", "sd"
    Driver Modules: "mpt3sas", "sd_mod"
    Device File: /dev/sdg
    ...
    

    Контроллер находится в SysFS Device Link (PCI ID 01: 00.0 идентифицирует его).

  2. Найдите диски, связанные с вашими контроллерами:

    $ lspci
    ...
    03:00.0 Serial Attached SCSI controller: VMware PVSCSI SCSI Controller (rev 02)
    
    $ ls -l /sys/block/sd* |grep 03:00
    lrwxrwxrwx 1 root root 0 Dec 20 10:19 /sys/block/sda -> ../devices/pci0000:00/0000:00:15.0/0000:03:00.0/host0/target0:0:0/0:0:0:0/block/sda
    lrwxrwxrwx 1 root root 0 Dec 20 10:19 /sys/block/sdb -> ../devices/pci0000:00/0000:00:15.0/0000:03:00.0/host0/target0:0:1/0:0:1:0/block/sdb
    

    Выше мы находим идентификаторы PCI для контроллеров дисков, а затем выясняем, какие диски подключены к интересующему нас контроллеру (в данном случае 03:00 это идентификатор контроллера).

Примечание: Приведенные выше выходные данные команд поступают с двух разных машин.