Как стать автором
Обновить

Тестирование собственного NAS. Какие тесты нужны?

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров10K
Всего голосов 13: ↑12 и ↓1+15
Комментарии24

Комментарии 24

Тест сети нужно проводить не только "по стабильной сети (желательно гигабитный эзернет)", но и для сценариев удалённого доступа, которые для NAS более чем актуальны. Как показывает опыт с тем же SMB/CIFS - то, что летает в локальной сети, может безумно тормозить при latency до клиента 50-100 мс, даже если каналы в интернет и у сервера, и у клиента отличные. Подбор оптимальных настроек samba и сетевого стека, чтобы вытянуть в такой ситуации максимальную скорость, превращается в весьма увлекательный квест.

Кто в здравом уме выставляет голый SMB в интернет? А наличие всяких VPN слегка сглаживает проблему за счет механизмов коррекции.

VPN, етественно, есть. Терминируется на роутере, за которым много чего, и вот из этого "много чего" при прочих равных наибольшие проблемы именно с SMB. Ну не предназначен изначально был протокол для удалённого доступа, что уж там... WebDAV, кстати, даёт наиболее стабильный результат без танцев с бубном, но он у автора поста не упомянут.

Может просто процессора роутера не хватает, чтобы стабильно держать туннель? А так да webdav изначально разрабатывался для интернета, а не для локальной сети. Но мне кажется там не про скорость с учетом всей избыточно передаваемой информации.

Да нет, в моём случае роутер не при чём, он ни по CPU, ни по памяти даже на треть никогда не нагружается, ну и, опять же, другие протоколы через тот же VPN и тот же роутер летают куда шустрее. А вот samba с дюжиной магических опций, которые приходится перепробовать в разных комбинациях по противоречащим друг другу советам из инета, чтобы оно хотя бы стабильные 30 Мбит/с выдавало (при относительно честных 300 Мбит/с к роутеру без VPN, до 200 Мбит/с к серверу через VPN и 500 Мбит/с у клиента, но с latency около 80 мс) - это боль. Причём только вытянешь одно (последовательный доступ к большим файлам, например) - просаживается другое (случайный доступ или много мелких файлов).

Так что если у автора какая-то готовая сборка, а не чистый linux - любопытно, как там всё для таких сценариев настроено. Ну и, кстати, если VPN для внешнего доступа будет на самом NAS - то это отдельно повлияет на тесты, а такой сценарий для простых домашних инсталляций тоже весьма вероятен.

Нет в OMV никаких особых настроек это просто web-интерфейс над консольным ПО. По крайней мере раньше был. Можно было даже на чистый debian накатить подключив дополнительный репозитарий.

WebDAV, кстати, даёт наиболее стабильный результат без танцев с бубном

linux - windows подключение и скорости как у вас? На чем сам webdav?

Сколько не пытался пользоваться различными web-мордами. Всегда наблюдал одно и то же:


  • с одной стороны "комбайн", жрущий ресурсы и добавляющий дыр, от которого мне нужна хорошо если половина неотключаемого функционала.
  • с другой стороны каких-то полезных мне фич не реализовано. Хорошо если есть возможность вручную попровить конфиги приложения. Например зачем мне Samba без модуля аудита и "корзины"? Или FTP без возможности создать "виртуальных" пользователей. Или роутер без возможности поставить любой vpn-клиент доступный для linux…
    Так что всегда откатывал на чистый linux с набором приложений. Максисмум какой-нибудь gui для torrent на удаленной машине.

Справедливо. Даже в базовых сценариях использования нам пришлось лезть "под капот".

Можно подробнее про модуль аудита и корзину?

Пользователи часто удаляют свои файлы. Бонусом туда иногда проваливаются промежуточные сохранения при редактировании.


vfs object = recycle

recycle:repository = /samba/recycle/%S
recycle:keeptree = yes
recycle:versions = yes
recycle:touch = yes
recycle:exclude = ~$* *.tmp *.TMP *.temp *.bak *.log .DS_Store

[RECYCLE$]
path = /samba/recycle
read only = no

recycle:exclude = *.*

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


Чтоб все не копировать проще здесь посмотреть. Сам я давно файлопомойки не настраивал. Нет конфига под рукой.

с одной стороны "комбайн", жрущий ресурсы

Справедливости ради - далеко не всегда. Даже на мусоре OVM + Nextcloud нормально себе работают:

К слову это собрано из самых обычных комповых железок, а uptime на уровне какого-нибудь SOHO роутера, это о вопросе стабильности 'мусора', назло всем злопыхателям  так сказать)
К слову это собрано из самых обычных комповых железок, а uptime на уровне какого-нибудь SOHO роутера, это о вопросе стабильности 'мусора', назло всем злопыхателям так сказать)

Возможно Nextcloud 'разжирается' если юзеров накрутить, но для мелкого офиса/дома - в самый раз

и добавляющий дыр

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

Конечно всё от задач зависит, но вот чтобы всегда - не сильно верится)

  1. Скорость доступа к файлам по сети. Подход - подрубаем одно или несколько устройств к NAS по стабильной сети (желательно гигабитный эзернет), и начинаем писать/читать. 

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

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

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

FTP - один из самых очевидных сценариев использования NAS (доступен через использование плагина openmediavault-ftp).

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

RSync - сценарий понятный и нужный, но не очень ясно, какие требования нужно предъявлять к его производительности. Решили оставить на второй этап.

SMB/CIFS - отличное решение для большинства пользователей. Конечно добавляем в список на тестирование.

SSH - работать с файлами с помощью SCP или WinSCP не так удобно, но зато конфигурация требуется минимальная. Добавляем в список тестов.

WebDAV бы еще.

Попробуем учесть

вместо ftp...

Мне кажется, вместо SMB. Нативная поддержка есть и в windows, и в макоси.

Вебдав в линуксе, настроенном через OMV не факт, что нормально заработает с виндами, судя по костылям, необходимым для nginx для виндовых клиентов...

Пусть лучше будет ещё и самба, она, по-крайней мере, точно работает в локалке.

Самба точно будет. Слишком удобная штука для клиента.
Я, правда, сходу не смог на питончике тест накидать для самбы. Придётся ковыряться.

Запустить `smbclient -N -L $IP` и проанализировать выхлоп?

Так почему вместо FTP?

Из-за юникода, на который забивают и сервера и клиенты?

Из-за необходимости двух соединений, причём в некоторых случаях ещё и в обе стороны?

Из-за отсутствия шифрования? Нет, я знаю про ftp-ssl, но чтоб оно ещё и работало — не видел.

Или из-за того, что для него надо теперь ставить отдельного клиента после выпиливания протокола из браузеров, когда хотел просто чуть-чуть скачать?

Ещё, возможно, у меня профдеформация, но вот что проблем с ftp точно больше, чем с sftp — это видно по количеству обращений клиентов в техподдержку.

А вообще, в локалке нет смысла - по самбе проще. В инет - нет смысла, ибо либо пускать неавторизованным хотя бы на скачивание, либо быть готовым к тому, что пароль утечёт через вайфай того кафе, через который ходил, либо быть готовым к тому, что будут проблемы из-за ната/двойного ната (как минимум, нат, через который хранилище подключено в инет + нат клиентского провайдера, а в случае вайфая добавляется ещё и нат вайфая). Через впн - опять же самба проще.

И в целом, ftp легко заменяется на sftp. И гуевые клиенты в основном его умеют ровно так же. И шифрование, и авторизация по ключам из коробки, и не нужны сертификаты, как в случае с webdav, торчащим наружу.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий