stringtranslate.com

Контроллер дискового массива

Контроллер дискового массива — это устройство, которое управляет физическими дисковыми накопителями и представляет их компьютеру как логические единицы . Он почти всегда реализует аппаратный RAID , поэтому его иногда называют RAID-контроллером . Он также часто обеспечивает дополнительный дисковый кэш .

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

Передняя и задняя сторона

Контроллер дискового массива предоставляет интерфейсы front-end и back-end.

Один контроллер может использовать разные протоколы для back-end и front-end связи. Многие корпоративные контроллеры используют FC на front-end и SATA на back-end.

Контроллеры предприятия

В современной корпоративной архитектуре контроллеры дисковых массивов (иногда также называемые процессорами хранения данных или SP [1] ) являются частями физически независимых корпусов , таких как дисковые массивы , размещенные в сети хранения данных (SAN) или серверах сетевых хранилищ (NAS) .

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

Простые контроллеры

Контроллер Promise Technology ATA RAID

Простой контроллер дискового массива может поместиться внутри компьютера, как карта расширения PCI или просто встроенный в материнскую плату . Такой контроллер обычно сам по себе обеспечивает функциональность адаптера шины хоста (HBA) для экономии физического пространства. Поэтому его иногда называют RAID-адаптером .

С февраля 2007 года Intel начала интегрировать собственный контроллер Matrix RAID в свои более дорогие материнские платы, обеспечивая управление 4 устройствами и дополнительными 2 разъемами SATA, и в общей сложности 6 подключений SATA (по 3 Гбит/с каждое). Для обратной совместимости также присутствует один разъем IDE, способный подключать 2 устройства ATA (100 Мбит/с).

История

Хотя аппаратные RAID-контроллеры были доступны в течение длительного времени, они всегда требовали дорогих жестких дисков SCSI и были нацелены на рынок серверов и высокопроизводительных вычислений. Преимущества технологии SCSI включают возможность подключения до 15 устройств на одной шине, независимую передачу данных, горячую замену , гораздо более высокий средний показатель отказов (MTBF) .

Около 1997 года с появлением ATAPI-4 (и, соответственно, Ultra-DMA-Mode 0 , который обеспечивал быструю передачу данных с меньшей загрузкой ЦП ) были представлены первые контроллеры ATA RAID в виде карт расширения PCI. Эти RAID-системы вышли на потребительский рынок, где пользователи хотели отказоустойчивости RAID без необходимости вкладывать средства в дорогие диски SCSI.

Диски ATA позволяют создавать RAID-системы с меньшими затратами, чем с SCSI, но большинство контроллеров ATA RAID не имеют выделенного буфера или высокопроизводительного оборудования XOR для вычисления четности. В результате ATA RAID работает относительно плохо по сравнению с большинством контроллеров SCSI RAID. Кроме того, страдает безопасность данных, если нет резервной батареи для завершения записи, прерванной отключением питания.

Поддержка ОС

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

Обычно RAID-контроллеры можно полностью настроить через BIOS карты до загрузки операционной системы , а после загрузки операционной системы фирменные утилиты настройки доступны от производителя каждого контроллера, поскольку точный набор функций каждого контроллера может быть специфичным для каждого производителя и продукта. В отличие от сетевых интерфейсных контроллеров для Ethernet , которые обычно можно настроить и обслуживать полностью через общие парадигмы операционной системы, такие как ifconfig в Unix , без необходимости использования каких-либо сторонних инструментов, каждый производитель каждого RAID-контроллера обычно предоставляет свои собственные фирменные программные инструменты для каждой операционной системы, которую он считает поддерживаемой, обеспечивая привязку к поставщику и способствуя проблемам надежности. [2]

Например, в FreeBSD , чтобы получить доступ к конфигурации RAID-контроллеров Adaptec , пользователям необходимо включить уровень совместимости Linux и использовать инструментарий Linux от Adaptec, [3] что потенциально ставит под угрозу стабильность, надежность и безопасность их настройки, особенно если учитывать долгосрочную перспективу. [2] Однако это во многом зависит от контроллера и от того, доступна ли соответствующая документация по оборудованию для написания драйвера, а некоторые контроллеры имеют версии своих утилит настройки с открытым исходным кодом, например, mfiutilи mptutilдоступны для FreeBSD начиная с FreeBSD 8.0 (2009), [4] [5], а также mpsutil/ mprutilс 2015, [6] каждый из которых поддерживает только свои соответствующие драйверы устройств, что приводит к раздуванию кода .

Некоторые другие операционные системы реализовали собственные общие фреймворки для взаимодействия с любым RAID-контроллером и предоставляют инструменты для мониторинга состояния тома RAID, а также упрощения идентификации дисков с помощью мигания светодиодов, управления сигналами тревоги, обозначений дисков горячего резерва и очистки данных § RAID из операционной системы без необходимости перезагрузки в BIOS карты. Например, такой подход был принят OpenBSD в 2005 году с ее драйвером псевдоустройства bio(4) и утилитой bioctl , которые предоставляют статус тома и позволяют управлять светодиодами/сигнализацией/горячим резервом, а также датчиками (включая датчик диска ) для мониторинга работоспособности; [7] этот подход впоследствии был принят и расширен NetBSD в 2007 году. [8]

В bioctl набор функций намеренно сведен к минимуму, чтобы каждый контроллер мог поддерживаться инструментом одинаково; первоначальная настройка контроллера должна выполняться через BIOS карты [7] , но после первоначальной настройки весь повседневный мониторинг и ремонт должны быть возможны с помощью унифицированных и универсальных инструментов, для чего и предназначен bioctl.

Ссылки

  1. ^ "Основы хранения - Часть V: Контроллеры, кэш и объединение". 23 марта 2010 г.
  2. ^ ab "3.8: "Хакеры потерянного RAID"". Песни выпуска OpenBSD . OpenBSD . 2005-11-01 . Получено 2019-03-23 ​​.
  3. ^ Скотт Лонг; Adaptec, Inc (2000). "aac(4) — драйвер контроллера Adaptec AdvancedRAID". BSD Cross Reference . FreeBSD .
    • "aac -- Драйвер контроллера Adaptec AdvancedRAID". Страницы руководства FreeBSD.
  4. ^ "mfiutil — Утилита для управления контроллерами LSI MegaRAID SAS". BSD Cross Reference . FreeBSD .
    • "mfiutil -- Утилита для управления контроллерами LSI MegaRAID SAS". Страницы руководства FreeBSD.
  5. ^ "mptutil — Утилита для управления контроллерами LSI Fusion-MPT". BSD Cross Reference . FreeBSD.
    • "mptutil -- Утилита для управления контроллерами LSI Fusion-MPT". Страницы руководства FreeBSD.
  6. ^ "mpsutil — Утилита для управления контроллерами LSI Fusion-MPT 2/3". BSD Cross Reference . FreeBSD.
    • "mpsutil, mprutil -- Утилита для управления контроллерами LSI Fusion-MPT 2/3". Страницы руководства FreeBSD.
  7. ^ ab Тео де Раадт (2005-09-09). "Поддержка управления RAID появится в OpenBSD 3.8". misc@ (Список рассылки). OpenBSD.
  8. ^ Константин А. Муренин (2010-05-21). "1.1. Мотивация; 4. Драйверы датчиков; 7.1. NetBSD envsys / sysmon". Аппаратные датчики OpenBSD — мониторинг окружающей среды и управление вентиляторами ( диссертация на степень магистра математики ). Университет Ватерлоо : UWSpace. hdl :10012/5234. Идентификатор документа: ab71498b6b1a60ff817b29d56997a418.