Если производительность не является проблемой, то почему аппаратный рейд лучше, чем программный. Пока я сделал следующие выводы.
Аппаратный рейд ограничен рейдовым контроллером, если он укомплектован, вам нужен другой из точных рейд-контроллеров. Если ваш сервер или ОС упакованы с помощью программного рейда, вы можете переключить все диски на другой компьютер и использовать ту же самую ОС.
Каково ваше мнение по этому поводу, так как это единственное преимущество аппаратного рейда, которое я обнаружил.
Ваш вопрос в основном отражает мою философию.
Я предпочитаю аппаратные RAID-контроллеры в «корпоративных» развертываниях. Если я знаю, что у меня будет гарантия, наличие запасных частей и поддержка поставщика, я обычно предпочитаю иметь производительность и функции аппаратного RAID.
В сценариях малого бизнеса, где существует вероятность того, что заказчик откажется от поддержки, я бы предпочел "удар" производительности (все более и более незначительный) и использовать программный RAID (обычно RAID-1 в малых предприятиях, в которых я работаю, в любом случае ). Обычно это дешевле, чем аппаратное решение. В конце концов, я бы предпочел какую-то защиту от сбоя диска, чем никакой вообще.
Как вы говорите, с программным RAID я знаю, что смогу читать диски, используя ту же реализацию программного RAID на любом другом компьютере без специального контроллера. Обычно заказчик не выходит за рамки производительности своего сервера и не нуждается в необычных функциях, поэтому в конечном итоге он ничего не теряет и получает некоторую возможность восстановления в случае катастрофического отказа серверного компьютера.
Производительность программного RAID за последние несколько лет стала довольно хорошей, но я использовал его в небольших развертываниях вплоть до Windows NT 4.0 с хорошими результатами. Это дешевый страховой полис.
У аппаратного RAID есть два основных преимущества:
2 действительно идет рука об руку с 1, но он также играет роль с точки зрения целостности данных: давайте рассмотрим две идентичные машины, одну с программным RAID, другую с аппаратным RAID с батарейным питанием, обе с включенным кэшированием записи.
Если мы запишем на эти две машины целую кучу данных, а затем вырвем вилку из стены, прежде чем данные будут синхронизированы с диском (ОС на программном RAID-блоке или контроллером на аппаратном RAID-блоке), теперь у нас есть два разных сценария:
Когда питание будет восстановлено, аппарат с аппаратным RAID-массивом увидит, что в кеше есть записи, раскрутит диски, синхронизирует данные с диском и продолжит свою жизнь.
После восстановления питания машина Software RAID перезагрузится в обычном режиме. Поскольку системная оперативная память потеряла питание, записи, которые накапливались в ожидании сброса на диск, исчезли навсегда. Результаты здесь могут варьироваться от неудобных (небольшая потеря данных) до катастрофических (таблица разделов была съедена, жизненно важные незаменимые данные остались в наполовину записанном, поврежденном состоянии и т. Д.).
Теперь, когда я изобразил кошмарный сценарий, подумайте о его вероятности. Предположительно ваш сервер находится на ИБП, в идеале с резервными источниками питания, питающимися от разные Схемы ИБП. Вероятность катастрофического отказа в этом сценарии относительно невелика, и вы можете спокойно доверять программному RAID.
В обмен на этот (теоретически небольшой) риск вы не обязаны определенной марке контроллера и версии микропрограммы контроллера в случае, если что-то пойдет не так, и вы получаете гибкость, предоставляемую программным RAID (который часто включает зеркалирование только часть диска или возможность зеркалировать диски разных размеров, скоростей шпинделя и т. д. - возможно, стоит учитывать, если у вас есть оборудование Франкенштейна).