Прошло уже 3 года как я собрал себе бюджетный файловый сервер на 8 HDD. Подробнее про выбор комплектующих и их цены можно почитать там, а сегодня я хочу рассказать как использовался и используется данный агрегат.
3 года назад мои проекты не были такими объёмными (веб проекты на сегодня уже около 400Гб суммарно занимают) и мне для резервного копирования хватало Raspberry Pi-3 с подключенным жёстким диском на 1Тб. Управлялось это хозяйство при помощи Slackware arm и вполне себе неплохо жило. Но понимая что это собранное на коленке хозяйство не блещет надёжностью пришлось создавать более совершенное хранилище.
В организации NAS было все продумано под мои нужды и бюджет. Распишу о том как использовались диски.
Материнская плата имеет всего 4 SATA порта, на ней других шин кроме PCI нет. Сама шина PCI старая и позволяет передавать данные до 133 Мбайт/с, но т.к. плата расширения рулит 4 дисками, то скорость делится поровну между ними. Итого возможная скорость передачи ограничивается в 33 Мбайт/с. Учитывая это я и выстроил стратегию резервного копирования о которой ниже.
В качестве операционной системы была выбрана Ubuntu server 16.04 LTS. Этот выбор был в следствии того, что я планировал данную машину использовать в качестве резервного сервера BigBlueButton. Оно даже какое то время работало, но потом со временем пришло понимание — проще перенести мероприятие, чем пытаться использовать заведомо слабое устройство. Да и BBB сервер достаточно быстро разворачивается и настраивается + всегда можно извернуться и устроить стрим на ютубе либо использовать Zoom и прочие групповые чатики.
Файловой системой я выбрал Ext4 — это на мой взгляд одна из самых стабильных файловых систем. Использую её я где то с 2008 или 2009 года. RAID естественно выбрал mdadm. Причём даже если у меня финансы будут позволять приобретать качественный аппаратный рейд контроллер, я по прежнему буду пользоваться софтверный — «Жертвуй производительностью ради переносимости =)» LVM мной не рассматривался к использованию и не настраивался.
8 дисков были распределены следующим образом:
- 2 по 500Гб — RAID-1 для системы и резервного копирования записей вебинаров
- 2 по 1Тб — RAID-1 для копирования файлов и дампов баз всех своих web проектов
- 4 по 1Тб — RAID-5 для хранения личных файлов и архивов слитых с 2х предыдущих рейдов
Выглядит это так: Ежедневно по cron на удалённом сервере вебинаров запускается скрипт, который инициализирует подключение к NAS, запускается rsync для синхронизации записей и сырцов вебинаров, после синхронизации отключается соединение. Тоже самое с веб сервером, только на другой RAID массив. Скорость передачи файлов довольно приличная, т.к. сам сервер подключен к интернету по высокоскоростному каналу и диски работают через SATA-3.
Полученные после синхронизации файлы уже на файловом сервере еженедельно сжимаются и отправляются на хранение в «медленное хранилище» RAID-5 на 3Тб.
Таким образом всегда имеется 2 резервные копии файлов. Одна ежедневная и одна еженедельная. Резервных копий баз данных больше, но они и места занимают меньше.
Ещё в планах дополнить процесс шифрованием архивов, с последующей отправкой в какое нить облачное хранилище типа mega, gdrive, dropox и т.п.
В настоящее время с сервера были вычищены все следы лишних приложений, оставлено только все для работы с файлами. Саму же операционную систему менять не стал. Она корректно обновилась до версии 18.04 LTS, поддержка этого дистрибутива ещё осуществляется, посему следуя золотому правилу K.I.S.S. «Что хорошо работает — лучше не трогать» ещё пару лет посижу на ней )))
P.S. Шуточный клип в тему
P.P.S. Из облачных хранилищ выбрал себе Google Drive 2Тб
P.P.P.S. На дворе 2023 год, на сервере уже стоит в качестве OS devuan, gdrive давно окуклился из-за отсутствия возможности оплаты.