NAS для домашнего использования. Часть 2. Реализация

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

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

Основная идея  - построить NAS вокруг 4-х канального аппаратного RAID контроллера, на базе материнской платы mATX с соответствущими возможностями для подключения данного устройства. Кроме этого, материнская плата должна быть оснащена портами Gigabit LAN, иметь достаточно производительный процессор и необходимое количество оперативной памяти (материнскую плату, можно потом поменять на другую). Корпус должен позволять установку 4-6 HDD , которые могли бы нормально охлаждаться, иметь качественный блок питания.

Так вышло, что ранее я пытался собрать несколько иной компонент домашней сети - HTPC, который проработал у меня несколько лет в качестве медиаплеера, подключенного к телевизору.

Когда минусы такого решения перевесили плюсы, я убрал HTPC на кухню, а в комнате поселился сетевой медиаплеер, который мог проигрывать файлы с HTPC. Чуть позже возникла необходимость в сервере и  HTPC стал выполнять роль дополнительного WEB сервера (основной был в корпусе mini-ITX), который еще мог скачивать торренты, пока я был на работе.

В итоге, HTPC стал использоваться как NAS, правда не было никакой отказоустойчивости и я надеялся что ничего не сломается и скачаные на него фильмы не придется скачивать снова. Обьемы данных росли, жесткий диск стал сначала 500Гб, потом 2Тб, потом я установил еще один 2Тб диск , потому что сериалы перестали помещаться на одном. Когда я апгрейдил один из настольных компьютеров , мне понадобилось еще около 1Тб свободного места и я купил третий 2Тб диск, на который слил всю инфу с десктопа, а сам диск подключил к HTPC, чтобы он был доступен по сети.

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

Я начал искать аппаратный 4-х канальный RAID контроллер с поддержкой RAID 5 и мне удалось приобрести 3Ware 9650 значительно дешевле его магазинной цены. Далее, я докупил четвертый 2Тб жесткий диск WD EARX, на 5400 оборотов (как два из трех имеющихся у меня), потому что он был тихий и не сильно грелся, в отличие от его 7200 собратьев. Разница в оборотах подразумевала разницу в скорости, но меня это не волновало, потому что я планировал собирать RAID5 из 4-х дисков, что обещало с лихвой перекрыть порог скорости передачи данных по сети.

Ранее, с покупкой третьего диска , я приобрел корзину на 3 SATA диска в 2х5.25" отсеки и это добавило удобства и мобильности для моего решения. Четвертый диск я разместил в корпусе, рядом с системным, т.е. это было последнее оставшееся свободное место.

Некоторое время ушло на резервирование, хранившихся на 2Тб дисках, данных, которые я раскидал по настольным компьютерам , ноутбукам и внешним жестким дискам. Потом я подключил все диски к новому контроллеру и стал пытаться создавать разные массивы.

Характеристики RAID 0 из четырых дисков меня очень обрабовали. Скорость линейного чтения доходила до 450мб.с. Вариант с RAID 5 на чтении оказался менее скоростным и показывал около 320Мб.с. что было тоже совсем неплохо. Чтение больших файлов по сети с дискового массива показывало скорость около 130мб.с. что было близко к пределу Gigabit LAN и меня вполне устроило.

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

Опытным путем было установлено, что после перезагрузки , второй логический раздел пропадал и не форматировался. В итоге, я удалил оба раздела и создал один на 6Гб. Кстати, при инициализаци диска в Windows7 пришлось указывать тип GPT, потому что размер диска был более 2Тб, но это особенности больших дисков. Посде создания одного диска на 6Тб, система падать перестала и я потестировав ее еще немного, начал переливать на него данные.

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

Я вернул на NAS все содержимое папок VIDEO и Music , перенастроил торрент клиента на новые пути , а также , аналогичным образом скорректировал настройки папок у DC++. Все что работало ранее на раздельных дисках, стало работать на одном большом.

Почему я хотел разбить массив на логические диски? Дело в том, что я уже не первый раз работаю с массивами и HDD и знаю, что скорость чтения жесткого диска падает в разы при чтении первых и последних секторов. Связано это с конструкцией пластин, но суть в том, что если создать логический диск в зоне начала, примерно на первых 60%, то скорость этого логического диска будет стабильной и высокой. Там можно хранить данные, которые необходимо читать и записывать с высокой скоростью. А всякий мусор и то, что может подождать, можно положить на оставшуюся часть диска.

Я планировал положить в начало диска фотографии в несжатом виде, всякое домашнее видео, которое хотел попробовать монтировать, читая по сети, а фильмы и музыку разместить в конце диска, потому что скорости их чтения даже так, вполне хватит медиаплееру. Из минусов такой реализации  - невозможно заранее предугадать скорость разростания коллекции и необходимость изменения размеров разделов. Как вы понимаете, забекапить раздел на 6Тб, я просто так не смогу. По крайней мере, сейчас в 2012 году это очень длительный процесс. А значит, нужно делать все сразу правильно.

В результате моих действий, получилось внешнее отказоустойчивое сетевое хранилище на 6Тб со скоростью чтения данных по сети, близкой у пределу пропускной способности сетевого интерфейса Gigabit LAN, т.е. около 133мб.с.  Стоимость этого решения составила около 12тр (без стоимости LCD экрана в морде) плюс стоимость дисков. В дальнейшем я планровал поменять процессор на более мощный или заменить всю платформу целиком с LGA775 на более современную, с поддержкой 16Гб оперативки и создавать на на этой системе виртуальные машины. Глобальные планы, требующие приличных вложений.

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

Отваливавшийся периодически диск, висел на первом канале контроллера и отличался от остальных производителем. Он был Hitachi, а остальные WD. Теперь у меня была марка и модель, которая точно работает и марка и модель, которая не работает в массиве как надо и требует замены.

Решение простое. Купил еще один WD EARX. Хитачи сунул в один из компов, где он выдал около 120 мб.с. по чтению и чуть меньше по записи. Это уровень скорости массива RAID0 из дисков 80Гб, которые использовались мной ранее. Благо, прогресс на месте не стоит и сейчас можно ставить в компьютер один диск, чисто под систему и неважные данные. А все важное можно хранить на NAS. Раньше для достижения нужной скорости нужно было поставить минимум 5, а то и 7 дисков и стоимость конструкции получалась приличная, а обьем массива не более, чем сейчас у одного современного диска. Зато сейчас , если потратиться на несколько дисков обьемом 2-3Тб, сунуть их в массив на аппаратный контроллер, то получившегося обьема диска хватит, чтобы хранить не только личную информацию, а еще и несколько тысяч видеофайлов с сериалами и прочего барахла (бла, бла, бла...), которым люди засерают себе винты...какими бы большими они не были.

З.Ы. К слову сказать, WD EARS и EARX имеют не очень хорошую статистику по отзывам. Многие жаловались на отказы, что не очень бьется с характеристиками диска. У него скорость вращения шпинделя 5400 об.с. и от этого он греется значительно слабее своих 7200 собратьев. Потери в скорости передачи от перехода на менее скоростной шпиндель, важны при работе одиночного диска , но в массиве, да еще сетевом, где ограничение уже есть - это скорость сетевого интерфейса, бессмысленно гнаться за небольшим приростом, если его пощупать будет сложно. Зато минусы от скорости 7200 превышают плюсы, если дисков несколько, они находятся в закрытой коробке, греются там себе, перегреваются, выходят из строя...

 {jcomments on}