Контроллер SCSI и другие типы контроллеров VMware

Контроллеры хранения соединяют жесткие диски с компьютером. Существуют различные стандарты и типы контроллеров хранения, такие как IDE, SATA и SCSI контроллеры. В виртуальных машинах виртуальные контроллеры хранения соединяют виртуальные и физические диски с этими машинами. Для виртуальных машин VMware доступны различные типы контроллеров хранения для подключения дисков и CD/DVD-приводов.

Каждый вид контроллера хранения имеет свои преимущества и ограничения, но эта статья в основном сосредотачивается на SCSI контроллерах. Затем я сравниваю SCSI контроллеры с другими типами контроллеров хранения, доступными в настройках виртуальной машины VMware vSphere, чтобы выяснить, какой контроллер хранения был бы лучшим для определенной ситуации.

Общая информация о контроллерах хранения

При создании виртуальной машины VMware vSphere по умолчанию в конфигурации ВМ создается как минимум один виртуальный контроллер хранения. Если виртуальный диск и CD/DVD-привод подключены к различным контроллерам хранения, то после создания ВМ может быть два контроллера хранения. Вы также можете добавить больше контроллеров хранения для подключения жестких дисков при создании ВМ.

При создании виртуальной машины на хосте ESXi с использованием VMware Host Client или VMware vSphere Client, или в VMware Workstation, оптимальный контроллер хранения выбирается автоматически для обеспечения наилучшей производительности для выбранной гостевой операционной системы. Как мы увидим, это делает выбор соответствующей гостевой ОС в мастере создания ВМ очень важной задачей.

Важность выбора правильного контроллера хранения нельзя недооценить. Новые типы контроллеров хранения могут не поддерживаться в старых операционных системах. Поэтому драйверы, включенные в выбранную гостевую ОС, должны быть учтены при выборе лучшего контроллера по умолчанию. Совместимость аппаратного обеспечения виртуальной машины (версия аппаратного обеспечения VMware) и тип устройства (виртуальный жесткий диск или DVD-ROM) также являются важными факторами. Новые версии аппаратного обеспечения поддерживают больше контроллеров хранения.

Перед изменением контроллера хранения, используемого для загрузочного диска, следует убедиться, что гостевая операционная система (ОС) поддерживает этот тип контроллера и что соответствующие драйверы установлены в гостевой ОС. При подключении устройств хранения к нескольким контроллерам хранения производительность ввода/вывода может быть увеличена по сравнению с подключением всех дисков к одному контроллеру хранения. Поэтому, если для ВМ используется более одного SCSI-контроллера, рекомендуется распределить виртуальные диски по этим SCSI-контроллерам для лучшей производительности.

Еще одна причина добавить контроллер хранения – когда превышено максимально поддерживаемое количество подключенных к контроллеру дисковых устройств. В этом случае важно, как добавляется новый контроллер. Некоторые контроллеры могут быть добавлены в конфигурацию ВМ с использованием функции горячего добавления. Другие типы контроллеров хранения требуют холодной операции, то есть сначала отключения ВМ.

По умолчанию номер первого контроллера хранилища на ВМ – 0. Если вы добавляете второй контроллер хранилища, назначенный номер будет 1 и так далее. Последующие контроллеры нумеруются последовательно. Нумерация устройств хранения, подключенных к контроллеру хранилища, также начинается с 0. Например, если на вашей ВМ есть один контроллер хранилища и один виртуальный диск, подключенный к этому контроллеру, диск нумеруется как (0:0). Если вы добавляете второй виртуальный диск к тому же контроллеру, тогда номер будет (0:1). Если вы подключаете еще один виртуальный диск ко второму контроллеру хранилища, номер диска в этом случае будет (1:1). Полное имя и номер узла подключения содержат интерфейс контроллера и номер контроллера и диска, например, SCSI (0:0), SCSI (1:3), SATA (1:7), IDE (0:0) и т. д. SCSI (z:7) не может быть назначен в параметрах контроллера, потому что этот номер зарезервирован для виртуального узла устройства.

Доступные контроллеры хранилищ VMware

Существует множество типов контроллеров хранилищ. Типы контроллеров хранилищ для ВМ VMware vSphere – SCSI, IDE, AHCI SATA и NVM Express (NVMe).

В пределах SCSI контроллеров существуют четыре подтипа:

  • BusLogic Parallel
  • LSI Logic Parallel
  • LSI Logic SAS
  • VMware Paravirtual SCSI

A maximum of four SCSI controllers are supported per VMware virtual machine. There is a 15-device limit for devices connected to a single SCSI controller.

BusLogic Parallel

Этот контроллер SCSI VMware был одним из первых типов контроллеров хранения, эмулированных для виртуальных машин VMware vSphere. В старых версиях Windows содержится драйвер для этого типа контроллера по умолчанию, и поэтой причине этот контроллер может быть использован в конфигурациях виртуальных машин для установки старых версий Windows на виртуальную машину (например, Windows 2000). Контроллер BusLogic Parallel SCSI теперь считается устаревшим. Виртуальные машины с дисками размером более 2 ТБ не поддерживаются. Глубина очереди ограничена до 1 драйвером, и это влияет на производительность. Если вам нужна более высокая производительность для хранения виртуальных машин, рассмотрите возможность использования контроллера хранения LSI Logic Parallel SCSI.

LSI Logic Parallel

LSI Logic Parallel ранее известен как контроллер SCSI LSI Logic. Это еще один контроллер хранения SCSI VMware, который был доступен с первых версий виртуализационной платформы VMware. Контроллер LSI Logic Parallel SCSI также эмулируется и поддерживается большим количеством операционных систем, включая старые операционные системы, потому что они по умолчанию содержат драйвер для этого контроллера хранения. Драйверы поддерживают глубину очереди 32, что сделало этот контроллер SCSI VMware общим выбором и выбором по умолчанию для многих гостевых операционных систем. LSI Logic Parallel выбирается по умолчанию при создании виртуальной машины с Windows Server 2003, потому что этот контроллер хранения поддерживает команды SCSI2, и Windows Server 2003 поддерживает этот стандарт SCSI.

LSI Logic SAS

Контроллер параллельного хранения LSI Logic эволюционировал в контроллер SAS LSI Logic. Начиная с Windows Server 2008, контроллер SAS LSI Logic выбирается по умолчанию при создании новой виртуальной машины, потому что LSI Logic SAS совместим с командами SCSI3, а более новые операционные системы Windows также поддерживают более новый стандарт. Во многих случаях предпочтительно использовать этот контроллер SCSI VMware.

Совместимость: ESXi 4.x или позднее.

VMware Paravirtual SCSI

В отличие от предыдущих контроллеров SCSI VMware, описанных в этом блоге, этот контроллер поддерживает виртуализацию и обеспечивает высокую пропускную способность. Нагрузка на процессор ниже по сравнению с эмулированными контроллерами хранения VMware. Нет реального аппаратного эквивалента контроллера параллельного SCSI VMware (PVSCI), и поэтому многие операционные системы (в основном более старые операционные системы) не поддерживают этот контроллер “из коробки”. Драйвер должен быть установлен вручную, чтобы операционная система работала с контроллером параллельного SCSI VMware. Этот контроллер принят для высокой производительности IOPS (ввод-выводных операций в секунду).

Если есть снимки для виртуальных дисков, подключенных к контроллеру параллельного SCSI, или если память распределена на хосте, то производительность может быть ниже ожидаемой при использовании этого типа контроллера хранения для виртуальной машины.

Совместимость: ESXi 4.x или позднее. Поддерживаются Windows Server 2003 или позднее.

НУЖЕН H2

Изменение контроллера хранения для виртуальной машины VMware при установленной операционной системе гостя может сделать существующие виртуальные диски недоступными, если не установлен необходимый драйвер в гостевой ОС. Средства VMware должны быть установлены в гостевой ОС, поскольку средства VMware содержат необходимый драйвер для работы с контроллером VMware для паравиртуализации SCSI.

При установке Windows на виртуальную машину и подключении системного диска к контроллеру VMware для паравиртуализации SCSI, может потребоваться вставить виртуальный образ дискеты, содержащий драйверы, и выбрать драйвер для контроллера во время установки, чтобы Windows обнаружила установочный диск.

Чтобы добавить контроллер VMware для паравиртуализации SCSI в конфигурацию виртуальной машины, может потребоваться добавить один из поддерживаемых контроллеров SCSI, таких как контроллер логики LSI, установить средства VMware, выключить виртуальную машину, добавить контроллер VMware для паравиртуализации SCSI в конфигурацию виртуальной машины, и, наконец, подключить виртуальный диск к контроллеру VMware для паравиртуализации SCSI (или изменить тип существующего контроллера хранения на контроллер для паравиртуализации SCSI).

AHCI SATA

Этот контроллер хранения новый и доступен с VMware vSphere 5.5 с Virtual Hardware 10. Вы можете подключить большое количество хранилища (включая виртуальные диски большой емкости) к виртуальной машине VMware, используя контроллер хранения AHCI SATA. Контроллеры хранения SATA могут быть использованы для загрузочных дисков для загрузки гостевой операционной системы (ОС). Убедитесь, что контроллер AHCI SATA поддерживается операционной системой. Производительность не так высока, как у контроллеров PVSCI или LSI Logic. Лучше использовать другие контроллеры для запуска приложений, чувствительных к производительности диска. Контроллер SATA обычно используется по умолчанию для CD/DVD-привода виртуальной машины.

Совместимость: Совместимость с аппаратным обеспечением ESXi 5.5 или более поздней версии. Поддерживается максимум четыре контроллера SATA на одну виртуальную машину. Максимальное количество устройств хранения, которые можно подключить к одному контроллеру SATA, составляет 30 (0-29).

NVMe

Контроллер NVM Express или NVMe (Non-Volatile Memory) – это контроллер, разработанный для работы с накопителями SSD. Протокол NVMe принят для немагнитных дисков, чтобы обеспечить наивысшую производительность и многопоточную коммуникацию. Протокол NVMe поддерживается в VMware vSphere, и вы можете добавить контроллер хранения NVMe в конфигурацию виртуальной машины. Максимальное количество очередей – 65535, а максимальная глубина очереди – 64000.

Требования: VMware vSphere 6.5 и версия аппаратного обеспечения виртуальной машины 13. Гостевая ОС должна поддерживать NVMe. Поддерживается максимум четыре контроллера NVMe, и к одному контроллеру NVMe можно подключить 15 дисков (0-14).

Контроллеры хранения IDE

Эмулируемый контроллер хранилища IDE – один из старейших типов контроллеров хранилища. Максимум один контроллер IDE может быть подключен к виртуальной машине с четырьмя устройствами хранения (два канала – основной и вторичный, каждый с двумя устройствами – мастером и слейвом). Горячее добавление и изменение размера диска не поддерживается. Чтобы изменить конфигурацию диска, необходимо выключить виртуальную машину. Контроллеры IDE используют ATAPI.

Общее количество дисков, которое можно подключить к виртуальной машине, определяется типом контроллера, как показано в таблице ниже.

Общие рекомендации

Существуют общие рекомендации по выбору контроллера хранения для конфигурации виртуальных машин VMware vSphere с точки зрения производительности и совместимости.

Если вы не уверены, какой SCSI-контроллер использовать для вашей виртуальной машины, следуйте этому порядку (приоритет):

  1. VMware Paravirtual (PVCSI) (если поддерживается гостевая ОС)
  2. LSI Logic SAS (если поддерживается гостевая ОС)
  3. LSI Logic Parallel
  4. BusLogic Parallel (если ничто другое не работает)

Если вы хотите изменить контроллер хранения для загрузочного диска, убедитесь, что драйвер контроллера хранения установлен в режиме загрузки. Если виртуальная машина настроена на использование BIOS, возможно, вам придется изменить конфигурацию виртуальной машины и настройки BIOS. Если виртуальная машина настроена на использование UEFI, варианты изменения контроллера хранения для загрузочного диска более гибкие, и в большинстве случаев дополнительная настройка не требуется.

Ссылайтесь на таблицу совместимости, чтобы узнать, сможет ли гостевая операционная система загрузиться после изменения конфигурации контроллера хранения для виртуальной машины.

См. также таблицу с общими рекомендациями по использованию различных типов контроллеров хранения для виртуальных машин и гостевых операционных систем.

Настройка контроллеров хранения VMware

Теперь, когда мы ознакомились с типами контроллеров хранения, доступных в VMware vSphere, давайте посмотрим, как редактировать настройки контроллера хранения в клиенте VMware vSphere. В моем примере у меня есть виртуальная машина с контроллером хранения по умолчанию, а на этой виртуальной машине установлена Ubuntu Linux.

Для редактирования настроек контроллера хранения для виртуальной машины требуется привилегия Добавление или удаление устройства в конфигурации виртуальной машины.

Откройте клиент VMware vSphere, перейдите в Хосты и кластеры, выберите необходимый хост и виртуальную машину. Щелкните правой кнопкой мыши по виртуальной машине и в открывшемся меню выберите Редактирование настроек. Вы также можете нажать Действия > Редактировать настройки.

Изменение типа контроллера

В окне Редактирование настроек я вижу, что моя виртуальная машина использует контроллер SCSI 0, а тип контроллера SCSI – LSI Logic Parallel. Ниже вы найдете контроллер SATA 0, который используется для подключения виртуального CD/DVD-привода к виртуальной машине. Щелкните по контроллеру SCSI, чтобы развернуть параметры, затем в строке Изменить тип выберите тип существующего контроллера хранения из выпадающего меню. Нажмите OK, чтобы сохранить настройки. Помните, что виртуальная машина и гостевая операционная система должны поддерживать выбранный контроллер. Это особенно важно, если к этому контроллеру подключен загрузочный диск.

Добавление нового контроллера хранения

Чтобы добавить новый контроллер хранения в конфигурацию виртуальной машины, в окне Изменить настройки щелкните Добавить новое устройство, а затем в открывшемся меню выберите необходимый контроллер (в разделе Контроллеры). В моем примере я могу выбрать контроллер NVMe, контроллер SATA или контроллер SCSI. Давайте добавим контроллер SATA в конфигурацию виртуальной машины.

Примечание: Контроллер USB должен быть добавлен, если вы хотите использовать передачу USB и подключить физическое USB-устройство (например, USB-жесткий диск или флеш-накопитель) напрямую к виртуальной машине (USB-устройство должно быть подключено к физическому USB-порту хоста).

Контроллер SATA 1 добавлен. Изначально новый контроллер называется Новый контроллер SATA. После того, как вы нажмете ОК для сохранения настроек виртуальной машины, имя контроллера хранения SATA сохранится как Контроллер SATA 1.

Подключение виртуального диска к контроллеру хранения

Давайте добавим новый виртуальный жесткий диск и подключим этот виртуальный диск к контроллеру SATA. В окне Изменить настройки щелкните Добавить новое устройство > Жесткий диск.

Новый жесткий диск теперь отображается в конфигурации виртуальной машины, но вам необходимо настроить параметры виртуального диска, такие как размер диска, thin или thick provisioning, и расположение, а также выбрать необходимый контроллер устройства виртуального устройства в разделе Виртуальное устройство узла. Вы также можете настроить опции обмена, режим диска и ограничения IOPs, если понадобится.OK , чтобы сохранить настройки, имя нового жесткого диска New Hard Disk сохраняется как Hard Disk 2.

Если вам необходимо подключить существующий виртуальный диск к другому контроллеру хранения, следуйте той же логике – откройте настройки виртуальной машины, разверните параметры диска и редактируйте параметры опций узла виртуального устройства.

Если я подключаю новый виртуальный жесткий диск к контроллеру SATA 0, к которому подключен привод CD/DVD, я могу выбрать SATA (0:1), SATA (0:2) или другие (0:x) узел, за исключением SATA (0:0), поскольку виртуальный DVD-ROM использует SATA (0:0). Если я подключаю новый виртуальный диск к новому контроллеру SATA 1, я могу выбрать SATA (1:0), SATA (1:1) и любой другой свободный узел на этом контроллере хранения.

Редактирование файла конфигурации VMX

Вы можете редактировать тип контроллера SCSI и другие типы контроллеров хранения для виртуальной машины, редактируя файл конфигурации VMX. Это альтернативный метод редактирования конфигурации в графическом интерфейсе пользователя VMware vSphere Client и может использоваться в интерфейсе командной строки. Рекомендуется в общем использовать VMware vSphere Client и редактировать файл VMX вручную только в исключительных случаях.

Давайте рассмотрим начальный файл конфигурации VMX нашей виртуальной машины Ubuntu перед добавлением дополнительных контроллеров хранилища и виртуальных дисков. В части конфигурации, отображенной ниже, отображаются только строки, связанные с конфигурацией хранения. Полный файл конфигурации также содержит другие настройки, но я их пропущу, чтобы сосредоточиться только на конфигурации хранения и контроллерах хранения в этом блоге.

config.version = “8”

virtualHW.version = “17”

vmci0.present = “TRUE”

scsi0.virtualDev = “lsilogic”

scsi0.present = “TRUE”

sata0.present = “TRUE”

scsi0:0.deviceType = “scsi-hardDisk”

scsi0:0.fileName = “blog-Ubuntu1.vmdk”

sched.scsi0:0.shares = “normal”

sched.scsi0:0.throughputCap = “off”

scsi0:0.present = “TRUE”

sata0:0.deviceType = “cdrom-raw”

sata0:0.clientDevice = “TRUE”

sata0:0.fileName = “emptyBackingString”

sata0:0.present = “TRUE”

displayName = “blog-Ubuntu1”

guestOS = “ubuntu-64”

Наиболее интересные строки конфигурации:

scsi0.virtualDev = “lsilogic” – это контроллер LSI Logic Parallel SCSI, используемый для подключения виртуального жесткого диска.

scsi0:0.deviceType = “scsi-hardDisk” – это тип устройства хранения, подключенного к SCSI (0:0).

scsi0:0.fileName = “blog-Ubuntu1.vmdk” – это имя виртуального дискового файла, подключенного к узлу SCSI (0:0).

После того как я добавил второй контроллер SATA и второй виртуальный диск, подключенный к контроллеру SATA, в файл конфигурации VMX были добавлены следующие строки:

sata1.present = “TRUE”

sata1:0.fileName = “blog-Ubuntu1_1.vmdk”

sched.sata1:0.shares = “normal”

sched.sata1:0.throughputCap = “off”

sata1:0.present = “TRUE”

Если мы изменяем контроллер параллельного SCSI LSI Logic на LSI Logic SAS в конфигурации VM, нам следует изменить строку

scsi0.virtualDev = “lsilogic”

на

scsi0.virtualDev = “lsisas1068”

Давайте рассмотрим параметры конфигурации VMX, связанные с контроллерами хранения, включая SCSI-контроллеры. Вам может потребоваться изменить значения 0, 0:0 и другие значения (x:x) на соответствующие значения в соответствии с вашей конфигурацией VM.

scsi0.present = “” – определяет, присутствует ли SCSI-контроллер 0 (возможные значения: TRUE или FALSE).

scsi0:0.deviceType = “” используется для определения SCSI ID. Поддерживаемые значения: “scsi-hardDisk”, “PhysicalDrive0”, “rawDisk”, “scsi-passthru”, “scsi-nonpassThru-rdm”, “scsi-passthru”, “scsi-passThru-rdm”.

scsi0:0.fileName = “diskname.vmdk” – определяет имя файла виртуального диска, подключенного к определенному узлу виртуального устройства (в данном случае SCSI(0:0)). Если файл виртуального диска находится в том же каталоге, достаточно установить “diskname.vmdk”. Если файл виртуального диска находится в другом каталоге, необходимо указать полный путь к файлу VMDK.

sched.scsi0:0.throughputCap = “off” – ограничения пропускной способности и пропускной способности отключены. Пример установки предела для этого параметра: sched.scsi0:0.throughputCap = 80IOPS, 10KIOps, 4GBps и т. д.

scsi0:0.present = “” – определяет, присутствует ли SCSI-устройство хранения. Может быть TRUE или FALSE.

scsi0.virtualDev = “” – определяет тип SCSI-контроллера.

Все поддерживаемые значения для параметра scsi0.virtualDev = “”, который определяет тип SCSI-контроллера:

  • buslogic – BusLogic SCSI
  • lsilogic – LSI Logic SCSI
  • lsisas1068 – LSI Logic SAS
  • pvscsi – VMware Paravirtual SCSI

Вы можете использовать процессы, описанные в этом блоге, чтобы изменить конфигурацию контроллеров хранения для виртуальных машин, работающих на VMware Workstation и VMware Player, и подключить устройства хранения к необходимым контроллерам хранения. Вы также можете попрактиковаться в настройке домашней лаборатории VMware в vSphere 6.7 и vSphere 7.

Заключение

Контроллеры хранения VMware используются для подключения устройств хранения, таких как виртуальные диски, к виртуальным машинам. В этом блоге рассмотрены типы виртуальных контроллеров хранения, включая SATA, IDE, NVMe и SCSI, а также настройка этих контроллеров в графическом интерфейсе клиента VMware vSphere. Производительность системы хранения и правильная работа гостевой операционной системы зависят от выбора правильного типа контроллера. По умолчанию в конфигурации ВМ выбирается оптимальный контроллер хранения, но всегда можно отредактировать настройки ВМ и изменить или добавить другой тип контроллера.

Не забудьте защитить ваши виртуальные машины VMware и выполнить резервное копирование вовремя. Рассмотрите NAKIVO для резервного копирования и репликации ВМ для защиты ваших виртуальных машин и других нагрузок.

Source:
https://www.nakivo.com/blog/scsi-controller-and-other-vmware-controller-types/