Какой лучше файл сервер
Что я понимаю под файловым сервером? Хороший вопрос. В идеале это должна быть система по типу каталога, способная хранить большие объемы двоичных файлов (pdf, doc, xls, msi, avi и др.), позволяющая тегировать файлы для гибкого поиска по хранилищу, автоматически индексировать их содержимое и метаданные, производить поиск по множеству критериев, предоставлять доступ к файлам как локально, так и через браузер (web-интерфейс), совместно редактировать файлы, иметь клиенты для разных ОС, синхронизирующие версии с сервера, но что-то я замечтался… Конечно, же, такой системы не существует. Сейчас, наверное, многие возразят мне и укажут на Microsoft SharePoint Server, однако для небольшой компании этот продукт неподъемен ввиду сложности в обслуживании и астрономической цены.
Такие варианты как Dropbox, SkyDrive и другие сразу же отбрасываются, так как руководство не хочет распространять проекты компании неизвестно куда, опять же есть ограничения на скорость доступа (в случае файлового сервера в локальной сети большинство запросов поступает по высокоскоростным соединениям и лишь часть — через веб-интерфейс), а также на размер хранимых данных.
Какие же существуют свободные аналоги, частично решающие задачи, перечисленные выше? Я произвел тщательное исследование этого вопроса и готов поделиться с вами своим горьким опытом.
Скажу сразу, что я до сих пор нахожусь в поиске наилучшего варианта и те средства, о которых я расскажу ниже, лишь отчасти удовлетворяют предьявляемым требованиям. Сочетая несколько средств, может быть, есть шанс получить желаемый эффект.
OwnCloud
Недавно вышла новая версия (4.5) системы для организации хранения, синхронизации и обмена данными OwnCloud. Ранее на Хабрахабре уже появлялась замечательная статья об OwnCloud, которая и мотивировала меня познакомиться с облаком поближе.
Об особенностях процесса установки OwnCloud хабраюзером BlackIce13 была написана прекрасная статья Опыт установки ownCloud 6 на Debian 7 wheezy.
Первое впечатление было просто волшебным: современный web-интерфейс, возможность онлайн просмотра (txt, PDF, ODF) и редактирования (txt) файлов, календарь, задачи, адресная книга, синхронизация по протоколу WebDAV, поиск по содержимому, а что самое главное — возможность монтирования локальных папок и внешних хранилищ по протоколам FTP, Samba, и др. Однако после более плотного знакомства обнаружилось огромное количество багов и глюков, как достаточно безобидных и даже забавных, так полное и безвозвратное падение системы. С OwnCloud врагам не нужно применять хитрые DDoS-атаки ибо эта функция изначально заложена разработчиками в ядро системы.
Больше всего интересовала функция монтирования удаленной файловой системы через Samba. То есть в локальной сети выделялся web-сервер с системой управления проектами и OwnCloud, а также простой Windows-файловый сервер, с которого web-интерфейс и подтягивал бы данные для удаленного доступа. Однако монтирование через Samba не захотело функционировать ни при каких условиях, несмотря на официально заявленную функциональность и примеры на сайте OwnCloud. Была произведена попытка обмануть OwnCloud и подсунуть её «локальную» папку с примонтированной Samba-шарой, но это вгоняло OwnCloud в неадекватное состояние.
Вообще, средство достаточно неплохое для домашнего использования, или если Вам достаточно пространства жесткого диска сервера на всю компанию. Стоит отметить развитое сообщество разработчиков OwnCloud, в котором Вам всегда подскажут как бороться с очередным фэйлом. Добавьте ссылку на их багтрекер себе в избранное, так как вам часто придется общаться с этими ребятами.
iFolder
SparkleShare
Достаточно интересное средство, написанное согласно приданию некими хакерами, которым надоело синхронизировать свои файлы. Оно основано на системе управления версиями git и по сути является надстройкой. Для файлового сервера создается отдельный репозиторий и затем над ним навешивается SparkleShare. Клиенты, работая с файлами, синхронизируют их между собой и сервером по аналогии клиента для Dropbox. Кроме официального сайта, есть неплохая инструкция по установке и работе с SparkleShare. «Благодаря» фундаменту в виде git возникают и недостатки, свойственные системам такого класса: клиенты хранят полную локальную копию репозитория, что в случае больших объемов просто невозможно. Существует способ «ленивого» доступа к репозиторию посредством git-fs, но только в режиме чтения. Опять же для непрограммистов (экономисты, отдел кадров), это слишком высокотехнологичное решение и они скорее будут пересылать друг другу документацию бесконечными e-mail, чем воспользуются git. Опять же ненависть репозиториев к бинарным файлам окончательно исключает SparkleShare из списка возможных решений.
Syncany
Rsync и Lsyncd
Выполняют функции, сходные с Dropbox, то есть синхронизацию локальной и удаленной папки. Это не совсем то, что я искал, поэтому не буду слишком подробно останавливаться на этом решении. Отмечу лишь отсутствие графического интерфейса и клиентов для ОС Windows, что автоматически исключает Rsync и Lsyncd из списка.
AeroFS
Если предыдущие продукты можно было скромно называть облачными, то AeroFS использует это понятие по полной. По сути AeroFS — это p2p сеть, которая коллективно хранит файлы не обязательно с использованием центрального сервера! Система полностью распределенная и использует сложные алгоритмы репликации данных. Есть возможность выделить центральный сервер, который привносил бы два положительных момента — web-интерфейс и дополнительную дупликацию данных (вдруг все уедут в командировку и сеть начнет испытывать истощение). До сих пор у меня к AeroFS много вопросов, ответы на которые получить пока не удается. Скачивание релиза доступно только по инвайтам, поэтому ждемс… Обязательно отпишусь по результата разворачивания AeroFS.
UPD: AjaXplorer
Благодаря umcherrel мы можем познакомиться с ещё одним средством: AjaXplorer. Впечатление, как и от OwnCloud, самые положительные. На сайте разработчиков есть возможность протестировать демо-хранилище за что им огромный плюс. Стоит также отметить простоту установки и добавления репозиториев. С технической точки зрения AjaXplorer характеризуется свойствами: онлайн просмотр (txt, pdf, zip, графика, мультимедиа) и редактирование файлов (txt), разграничение прав, адаптируется под браузеры iOS и Android, поиск (c внешними хранилищами все же лучше не использовать, к сожалению), множество плагинов на любой случай жизни. Также нужно отметить возможность дружбы AjaXplorer с различными системами управления версиями посредством плагина, что для нас тоже важно. Внешние хранилища можно подключать по Samba, FTP(S), WebDAV, IMAP, POP. И это прекрасно. Из недостатков можно отметить лишь ресурсоемкость. С другой стороны, за все нужно платить…
UPD: Amahi
Благодаря srs2k, мы узнали об Amahi. Что это за зверь? На самом деле Amahi — прекрасная платформа для домашнего медиа-центра в концепции «умного дома». Сразу бросается в глаза медиа ориентированность: Squeezebox сервер, DLNA сервер, Gallery 2, UPnP сервер uShare, медиа стриммеры Jinzora и Ampache, медиа-библиотеки OpenDB и VCD-db, учет домашнего хозяйства Home Inventory, хранение рецептов phpRecipeBook, торрент-клиенты, вики, форумы и пр. Стоит отметить также «бесплатную» услугу отслеживания динамического IP, то есть в некоторых случаях (стоит сказать, весьма ограниченных), Вам не понадобится покупать белый статический IP-адрес. Также существует возможность расширять функциональность плагинами.
Установка хоть и выполняется из терминала, но Вам настойчиво и весьма бесцеремонно установят графическую панель конфигурирования, сменят IP-адрес сервера, включат DHCP, перезагрузят сервер и вообще будут себя чувствовать как дома. Конечно, для неопытных пользователей такое решение «из коробки» просто необходимо, но в большинстве случаев, я считаю, это недопустимо.
С технической точки зрения Amahi поддерживает Samba, VPN, WebDAV (Outlook, iCal) и др. Более подробно прошу на сайт за красочными презентациями.
С точки зрения применимости Amahi для корпоративных нужд вопрос пока остается открытым.
Вывод
Подводя итог, скажу, что мы пока выбрали в качестве временной альтернативы решение OwnCloud. Согласно поговорке нет ничего более постоянного, чем нечто временное, но мы надеемся найти альтернативный вариант, так как вероятность, что OwnCloud в ближайшие сроки избавится абсолютно от всех недостатков, к сожалению, стремится к 0. Скорее всего, мы перейдем на AjaXplorer, если лучшей альтернативы не появится.
Вот таким образом обстоит ситуация со средствами для организации файлового хранилища. Обращаясь к Хабрасообществу, прошу поделиться своим опытом решения такой важной для государства задачи. Понимаю, что абсолютно бесплатных средств совсем не много и, между тем, начальство даже(. ) готово заплатить разумные деньги за действительно функциональную вещь.
Хотелось бы узнать, как решается такая проблема в более крупных компаниях с поставленным процессом разработки?
Post scriptum: Встречался ли кто с системами оповещения работников (по email, sms и др.) о запланированных или циклических задачах с веб-интерфейсом? Наверное, это тема другой статьи. Поэтому to be continued.
Выбор операционной системы для файлового сервера, во многом, зависит от среды ИТ и поставленных задач, поэтому однозначно на вопрос выбора ответить нельзя. Попробуем разобраться, какие есть варианты с их плюсами и минусами.
Выводы
1. Стоит ориентироваться на знания. Установка и настройка файлового сервера — верхушка айсберга. После будет этап поддержки, который потребует знаний и навыков работы с системой.
2. Для домашнего сервера можно смело выбрать готовую сборку, например, FreeNAS или XigmaNAS. Также может подойти недорогое готовое решение на базе QNAP или Asustor.
3. При отсутствии оборудования, стоит подумать о покупке готового решения, которое избавит от необходимости долгого чтения документации и настройки сервера.
4. Для корпоративной среды стоит настраивать файловый сервер с нуля на базе Linux или Windows. Готовые решения могут ограничить опытного системного администратора, а также затруднить поиск и решение возможных проблем.
В качестве примера используется Windows Server 2012 R2 (2016, 2019). Инструкция разбита на несколько шагов и представляет из себя полный цикл настройки файлового хранилища для использования в малых и средних компаниях.
Достаточно ли места для хранения файлов?
Объем хранилища — краеугольный камень файлового сервера. Произведя оценку объема хранимых данных и динамики роста, можно через полгода прийти к неприятному выводу, что с прогнозом вы ошиблись, и данные растут быстрее, чем планировалось.
В случае виртуализации хранилища вы практически всегда (при разумном подходе к планированию СХД) сможете расширить дисковую подсистему виртуальной машины или увеличить LUN. В случае физического файлового сервера и локальных дисков, ваши возможности будут значительно скромнее. Даже не смотря на наличие свободных слотов в сервере для дополнительных дисков, можно столкнуться с проблемой подбора накопителей, подходящих для вашего RAID-массива.
Но прежде чем решать проблему экстенсивным путем, следует вспомнить и о технических средствах, помогающих бороться с нехваткой места.
Дисковые квоты NTFS
Один из самых старых и надежных механизмов ограничения пользователей — квоты файловой системы.
Включив квоты для тома, вы можете ограничивать объем файлов, сохраняемых каждым пользователем. В квоту пользователя попадают файлы, для которых на уровне NTFS он является владельцем. Главным недостатком механизма является то, что, во-первых, не так просто определить, какие файлы принадлежат конкретному пользователю, а во-вторых, файлы, созданные администраторами, не будут включены в квоту. Механизм квот редко используется на практике, его практически полностью заместил File Server Resource Manager, впервые появившийся в Windows Server 2003 R2.
File Server Resource Manager
Этот компонент Windows Server позволит квотировать дисковое пространство на уровне конкретной папки. Если вы выделяете для сотрудников персональные домашние каталоги на файловых серверах, а также выделенные папки для общих документов отделов, то FSRM — наилучший выбор.
Конечно, квотирование само по себе не увеличит объем файлового хранилища. Но пользователи, как правило, лояльно относятся к справедливому (равному) делению ресурсов, а в случае нехватки готовы преодолеть небольшие бюрократические процедуры для расширения дискового пространства.
Квоты помогут и от перегрузки сервера в случае случайного размещения пользователем большого объема информации. По крайнее мере, это не скажется на других сотрудниках или отделах.
Кроме того, FSRM включает в себя механизм «скрининга» (фильтрации) файлов, которые можно сохранять на сервере. Если вы уверены в том, что mp3- и avi- файлам не место на файловом сервере, то можно запретить их сохранения средствами FSRM.
Компрессия NTFS
Обычные файлы хорошо поддаются сжатию средствами NTFS, а с учетом производительности современных процессоров, у сервера достаточно ресурсов на эту операцию. Если места не хватает — можно смело включать её для тома или отдельных папок. К примеру, в Windows Server 2012 появился более совершенный механизм, при использовании которого NTFS-сжатие на файловых серверах для большинства сценариев остается в прошлом.
Дедупликация
Windows Server 2012 включает в себя возможность дедупликации данных, расположенных в томе NTFS. Это достаточно продвинутый и гибкий механизм, сочетающий в себе как дедупликацию с переменной длинной блока, так и эффективную компрессию сохраняемых блоков. При этом для разных типов данных механизм может использовать разные алгоритмы сжатия, а если сжатие не эффективно — не использовать её. Такие тонкости недоступны традиционному сжатию средствами NTFS.
Кроме того, дедупликация не оптимизирует файлы, с которыми пользователи работали последние 30 дней (этот интервал можно настроить) для того, чтобы не снижать скорость работы с динамично изменяемыми данными.
Оценить потенциальную прибавку свободного места можно утилитой ddpeval. На типичном файловом сервере экономия составляет 30-50%.
Производительность файлового сервера
Как мы отмечали ранее — файловый сервер не самый требовательный к ресурсам сервис, но всё же следует разумно подойти к конфигурации дисковой и сетевой подсистем.
Дисковая подсистема
Линейная скорость чтения или записи не играют для файлового сервера решающего значения. Любой современный жесткий диск имеет высокие характеристики линейной скорости чтения/записи, но они важны лишь в тех случаях, когда пользователь копирует к себе на локальный диск большой файл, или, наоборот, размещает его на сервере.
Если посмотреть на статистику Perfmon, средняя скорость чтения/записи для 150-200 пользователей достаточно низка и составляет всего лишь несколько мегабайт в секунду. Более интересны пиковые значения. Но следует иметь в виду, что и эти пики ограничены скоростью сетевого интерфейса, а для обычного сервера это 1 Гбит/с (т.е. 100 Мб обмена с дисковой подсистемой).
В обычной работе доступ к файлам идет нелинейно, с диска считываются и записываются произвольные блоки, поэтому более критичным является производительность диска в операциях случайного доступа, то есть максимальный IOPS.
Для 150-200 сотрудников показатели достаточно скромны — 10-20 операций ввода вывода в секунду с дисковой очередью в пределах 1-2.
Этим требованиям удовлетворит любой массив из стандартных SATA дисков.
Для 500-1000 активных пользователей количетсво операции подскакивает до 250-300, а дисковая очередь достигает 5-10. Когда очередь достигает этой величины, пользователи могу заметить, что файловый сервер «подтормаживает».
На практике для достижения производительности в 300 IOPS вам уже потребуется массив как минимум из 3-4 дисков типичных SATA-дисков.
Для определения необходимого количества дисков используем формулу:
RAID-5 с penalty на запись в 4 операции, профилем чтение 50%, запись 50%, скоростью диска в 75 IOPS, целевая производительность в 300 IOPS:
Если у вас много активных пользователей, то вам потребуется ёмкий сервер или более производительные диски, такие как SAS со скоростью вращения 10 000 RPM.
Скорость сетевого интерфейса
Низкая скорость сетевого интерфейса — одна из причин задержек при работе с файловым сервером. В 2016 году сервер с 100 Мбит/с сетевой картой — нонсенс.
Типичный сервер оборудован сетевой картой со скоростью 1 Гбит/с, но и это ограничивает дисковый обмен скоростью около 100 Мб/с. Если в сервере несколько сетевых карт, то вы можете объединить их (агрегировать) в один логический интерфейс для увеличения как производительности, так и доступности облака. Хорошая новость в том, что для файлового сервера («много клиентов обращаются к одному серверу») агрегация работает хорошо.
Владельцы серверов HP могут использовать фирменную утилиту HP Network Configuration Utility
Если вы используете Windows Server 2012, то более простым и надежным способом будет использование штатного средства NIC Teaming.
Подробнее об этой настройке и нюансах использования ее в среде Hyper-V вы можете узнать из этой статьи.
Выборочная синхронизация
Бухгалтеру Светлане не нужно на компьютере 2ТБ видео с которыми работает видеограф Андрей. Для этого система должна иметь функцию выборочной синхронизации, то есть пользователь должен вручную отметить какие файлы ему нужны локально на компьютере, а какие только по запросу. Все четыре сервиса поддерживают эту функцию. Однако приложение Google Drive позволяет отметить только папки в корне диска, то есть нельзя включить синхронизацию только для Бухгалтерия --> Отчеты --> 2018, можно только для всей папки Бухгалтерия.
Резервное копирование
Для файлового сервера все просто — необходимо резервировать все рабочие папки и файлы. Лучшим решением будет ежедневное копирование новых данных, и с определенной периодичностью (например, раз в месяц), создавать полный архив.
Мы работаем с большими объемами медиа данных: видео, рендеры, фото, иллюстрации. Чтобы обеспечивать коллективную работу, нам нужен постоянный общий доступ ко всем этим файлам.
В какой-то момент нам перестало хватать собственного сервера, и мы начали искать облачное хранилище, удовлетворяющее нашим запросам.
Мы сравним популярные облачные хранилища для бизнеса: Google Drive, DropBox, Citrix ShareFile и Microsoft OneDrive.
Наши требования к облачному хранилищу:
- Безлимитный объем данных — у нас много данных, в среднем около 10ТБ. Не хочется постоянно думать сколько нужно докупить места в этом месяце и почему вдруг кончилась квота.
- Версионность файлов и логирование — git приучил нас, что все изменения можно видеть и откатить. Поэтому и с файлами должны быть точно так же: любое изменение, удаление должно быть обратимо и легко контролироваться.
- Права доступа — никаких больше общих папок доступных всем. Каждый сотрудник должен иметь свою область видимости.
- Upload без регистрации — клиенты не должны больше искать файлообменники, чтобы прислать нам тяжелый файл. Файлы должны сразу загружаться в наше хранилище без промежуточных сервисов.
Файловый сервер на основе сборки
Также стоит знать, что есть готовые сборки файловых серверов, которые поставляются в виде ISO-образа. Данные сборки построены на основе конкретных операционных систем. Выбирая среди таких сборок, как правило, не обращают внимание на конкретные ОС — важнее функциональные возможности.
Среди таких сборок можно выделить:
1. FreeNAS — файловое хранилище на основе FreeBSD.
2. OpenMediaVault — система управления сетевым хранилищем на основе Debian.
3. XigmaNAS (ранее NAS4Free) — свободная операционная система для сетевого хранилища на базе FreeBSD.
4. Rockstor — на основе CentOS.
Шаг 4. Тюнинг файлового сервера или профессиональные советы
Данные настройки, по сути, представляют секреты того, как сделать файловый сервер лучше, надежнее и безопаснее. Применяя их, администраторы создают более правильную и профессиональную среду ИТ.
С самого начала стоит создавать общие папки в пространстве имен DFS. На это есть две основные причины:
- При наличии или появлении нескольких файловых серверов пользователям будет удобнее находить общие папки в одном месте.
- Администратор легко сможет создать отказоустойчивую систему при необходимости.
Настройка шары (общей папки)
Создаем первую папку, которую хотим предоставить в общее использование. Затем кликаем по ней правой кнопкой мыши и нажимаем Свойства:
В открывшемся окне переходим на вкладку Доступ и нажимаем Расширенная настройка:
Ставим галочку Открыть общий доступ к этой папке и нажимаем кнопку Разрешения:
Предоставляем полный доступ всем пользователям:
* конечно же, мы не будем давать доступ всем пользователям, но для этого есть вкладка безопасность (см. ниже).
Нажимаем OK и еще раз OK.
Теперь переходим на вкладку Безопасность и нажимаем Дополнительно:
В открывшемся окне нажимаем Отключение наследования и Преобразовать унаследованные разрешения в явные разрешения этого объекта.
Выставляем необходимые права на папку, например:
Совет: старайтесь управлять правами на ресурсы только при помощи групп. Даже если доступ необходимо предоставить только одному человеку!
Теперь нажимаем OK два раза. Папка настроена для общего использования и в нашем примере доступна по сетевому пути \\fs1\Общая папка.
Шаг 2. Установка Windows и настройка системы
Шаг 3. Базовые настройки файлового сервера
Это стандартные действия, которые выполняются при настройке обычного файлового сервера.
Настройка системы
- Проверяем правильность настройки времени и часового пояса;
- Задаем понятное имя для сервера и, при необходимости, вводим его в домен;
- Если сервер не подключен напрямую к сети Интернет, стоит отключить брандмауэр;
- Для удаленного администрирования, включаем удаленный рабочий стол;
- Устанавливаем все обновления системы.
Запрос файлов и анонимная загрузка
Раньше нам приходилось создавать временный аккаунт на FTP сервере и выдавать его клиенту. Попутно долго объясняя, как настроить FTP клиент, как восстановить закачку после обрыва и так далее. Сейчас же можно просто нажать «запросить файлы» на любой папке, и сервис создаст анонимную ссылку, по которой можно залить файлы через браузер. При этом разрешена только загрузка, нельзя увидеть, что уже находится в папке или как-то просматривать на сервере. Это избавляет от необходимости создавать временные учетные записи для клиентов и следить за их удалением. Эту функцию поддерживают только ShareFile и Dropbox.
Как это было раньше
Когда данных было поменьше, а облачных сервисов (за разумные деньги) не было, нам приходилось держать здоровенный сервер с хрустящими жесткими дисками в RAID массиве. Доступ к нему происходил через SMB. За ним нужно было постоянно присматривать, менять жесткие диски, бекапить. Раз в месяц у него что-то происходило: то скорость записи/чтения резко падала, то какая-то папка или файл становились недоступны из-за недопустимых символов в названии и т.д.
Когда сотрудников стало больше, они начали работать удаленно, да и еще и с разных операционных систем: Windows, macOS. Для доступа к серверу пришлось развернуть VPN, который обеспечивал хоть и медленный, но доступ к файлам. В какой-то момент стало понятно, что этот подход устарел и мы стали искать ему замену.
Готовые решения
Также файловый сервер может быть организован на базе готового решения, которое работает на собственной операционной системе. К плюсам таких решений можно отнести простоту использования. Обратная сторона медали — нет возможности применить тонкие настройки.
Пример программно-аппаратных комплексов для развертывания файловых хранилищ:
3. Asustor. Хранилище от ASUS. Хорошо подходит для организации домашнего файлового сервера.
Почему своё?
Сейчас на рынке есть множество публичных облачных сервисов. Для многих малых и средних компаний они действительно становятся хорошим выбором, особенно если речь идет об услугах с оплатой только за использованные ресурсы либо проведении тестирования сервиса. Однако свое облачное хранилище также дает ряд преимуществ. Оно придется очень кстати, если:
-
Деятельность компании налагает ограничения на местоположение серверов. Российские гос. учреждения, а также организации, занимающиеся обработкой персональных данных, по закону обязаны хранить всю свою информацию на территории РФ. Соответственно, арендовать заграничные серверы для них не представляется возможным, да и в целом очень нежелательно доверять деликатную информацию подрядчикам. Создание частного хранилища поможет использовать все преимущества облака без нарушения правовых норм.
Шаг 1. Выбор оборудования и подготовка сервера
В качестве сервера, желательно, выбрать профессиональное оборудование. Системные требования для файлового сервера не высокие:
- Процессор может быть самый простой;
- Оперативная память также не сильно используется;
- Дисковая система — самый основной компонент. Ее объем зависит от специфики бизнеса. Примерная формула — не менее 15 Гб на пользователя и не менее 1 Тб на сервер. До 50 пользователей можно рассматривать диски SATA, после — SAS или SSD.
Например, для компании в 300 пользователей подойдет сервер с процессором Xeon E3, 8 Гб ОЗУ и 5 Тб дискового пространства на дисках SAS 10K.
Анализатор соответствия рекомендациям
В диспетчер управления серверами Windows встроен инструмент для проверки конфигурации сервера — анализатор соответствия рекомендациям. Чтобы им воспользоваться переходим в диспетчере в Локальный сервер:
Находим раздел «Анализатор соответствия рекомендациям» и справа кликаем по ЗАДАЧИ - Начать проверку BPA:
Рассмотрим решения некоторых рекомендаций.
1. Для XXX должно быть задано рекомендованное значение.
Это набор однотипных рекомендаций, для выполнения которых нужно обратить внимание на описание и задать значение параметро, которое в нем указано. Например, для CachedOpenLimit в описании проблемы есть описание решения — «Задайте для CachedOpenLimit рекомендуемое значение 5». Чтобы это сделать, открываем Powershell от администратора и вводим команду:
Set-SmbServerConfiguration -CachedOpenLimit 5
* мы задаем параметру CachedOpenLimit значение 5, как это и рекомендовано анализатором.
На запрос, уверены ли мы, что хотим выполнить команду, отвечаем утвердительно.
Остальные параметры задаем аналогичными действиями.
2. Файл Srv.sys должен быть настроен на запуск по требованию.
В командной строке от имени администратора вводим:
sc config srv start= demand
3. Создание коротких имен файлов должно быть отключено.
В командной строке от имени администратора вводим:
fsutil 8dot3name set 1
Установка роли и вспомогательных компонентов
Как правило, данная роль устанавливается вместе с Windows. Остается только это проверить и доустановить компоненты, которые нужны для полноценной эксплуатации сервиса.
Открываем Диспетчер серверов. Он может быть запущен из панели быстрого запуска.
Нажимаем Управление - Добавить роли и компоненты.
В открывшемся окне оставляем Установка ролей и компонентов и нажимаем Далее.
В следующем окне выбираем нужный сервер (выбран по умолчанию, если работаем на сервере, а не через удаленную консоль) и нажимаем Далее.
Среди ролей находим Файловые службы и службы хранилища, раскрываем ее и проверяем, что установлены галочки напротив следующих компонентов:
Если данные службы не установлены, выбираем их и нажимаем Далее.
В окне Выбор компонентов просто нажимаем Далее.
Откроется окно Подтверждение установки компонентов. Нажимаем Установить и после окончания процесса перезагружаем сервер.
Выбор системы для файлового сервера
Обычно, выбор падает на такие системы как Windows или UNIX (например, Linux Ubuntu, Linux CentOS, FreeBSD).
В целом, любая из них хорошо справится с ролью файлового сервера, и чаще всего, системные администраторы выбирают ту, в которой лучше всего ориентируются. Но есть несколько причин выбрать ту или иную ОС.
+/- | Windows | UNIX |
---|---|---|
Плюсы | 1. Хорошо подходит для сред, IT-инфраструктура которых построена на базе Active Directory. AD DS дает большие возможности по управлению правами пользователей и аудиту. 2. Отсутствует постоянный системный администратор и есть необходимость в самостоятельном управлении сервером. Windows проще в настройке и управлении. | 1. Бесплатность. Для файловой помойки нет смысла покупать дорогостоящую лицензию. Проще использовать бесплатную сборку Linux или BSD. 2. У UNIX систем лучше работает функция дедупликации. Это удобно, если на файловом сервере будут храниться одинаковые данные, например резервные копии. 3. Высокая стабильность. Данные системы сложно взломать или подвергнуть вирусной атаке. Они лучше защищены и реже выходят из строя, особенно, если их устанавливать без графической оболочки. |
Минусы | 1. Высокая стоимость. Серверная операционная система стоит дорого. 2. Подверженность вирусным атакам. Windows слаба защищена от вирусных атак. Антивирусные программы (которые также стоят денег для серверной ОС) помогают, но не являются панацеей. | 1. Сложное управление. Командная строка — не самый удобный способ для работы с операционной системой. Некоторые специалисты не согласятся с данным утверждением, однако, большинство предпочитают графический интерфейс. Последний можно установить для UNIX-систем, но это снизит безопасность и надежность. |
Шаг 5. Настройка средств обслуживания
Ни одна инфраструктура не может полноценно существовать без мониторинга и резервного копирования. Предупредить о возможной проблеме, узнать о последней раньше пользователей или иметь возможность восстановить данные — показатели высокой ответственности и профессионализма системного администратора.
Права доступа
Разные сотрудники должны иметь доступ только к определенным папкам и файлам. Система должна сохранять подробный журнал изменений прав доступа и обращений к файлам. Все четыре системы имеют такой функционал. У Citrix ShareFile и DropBox можно включить уведомления в случае доступа к определенным файлам и папкам. Это может быть полезно для файлов с особо охраняемой информацией. Например, можно установить алерт на доступ к файлам клиентбанка и некоторым документам, и быть в курсе, что кто-то в нерабочее время вдруг обратился к этим файлам.
Аудит
Аудит позволит вести протокол доступа к данным — понять, кто и когда удалил важные данные или внес в них изменения.
О том, как настроить данную возможность читайте статью Как включить аудит доступа к файлам Windows.
Установка системы
На этом шаге все стандартно, за исключением одного нюанса: разбивая во время установки Windows жесткий диск, стараемся выделить небольшую часть (70 - 120 Гб) для системы и все остальное под данные. Если выделить много дискового пространства для системного раздела, увеличится время его обслуживания и фрагментация, что негативно скажется на производительности и надежности системы в целом.
Вывод
Мы сразу отбросили Microsoft Onedrive из-за нелепого ограничения 15ГБ на размер файла. Google drive не позволяет нормально пользоваться диском без почты на g suite (бывший google apps). Поэтому на текущий момент мы выбираем между Dropbox и Citrix ShareFile. Решающим фактором, полагаю, станет качество ПО, потому что в остальном сервисы похожи. У каждого есть свои странности. Например, программа Dropbox для windows в какой-то момент тихо перестает синхронизировать файлы, при том, что внешне никаких признаков проблемы нет. Лечится очисткой системной папки temp.
Данные — основа любого бизнеса. Если место их хранения недостаточно надежно или неспособно обеспечить постоянный доступ, то под угрозой будет практически вся деятельность предприятия.
Конечно, можно и нужно обеспечивать сохранность и доступность информации правильным выбором серверного ПО и грамотной конфигурацией. Но не менее важно и железо — оборудование, которое хранит и обрабатывает данные. Если оно не соответствует потребностям компании, то никакой софт не сделает его достаточно надежным и отказоустойчивым.
В этой статье мы рассмотрим один из подходов к выбору железа для создания корпоративного облачного хранилища.
Доступ по WebDAV и FTP
В некоторых случаях установка стороннего ПО на компьютер не желательна или невозможна, например на корпоративных системах. У ShareFile есть доступ по (S)FTP и WebDAV. Google Drive имеет сторонние программы для доступа к диску по WebDAV, но все они требуют передачи доступа к аккаунту третьим лицам. Dropbox не имеет поддержки сторонних протоколов, доступ возможен только через клиент.
Клиенты для этих протоколов встроены в большинство операционных систем. Правда клиент macOS почему-то часто монтирует WebDAV в режиме read only.
Хранилище Citrix ShareFile можно подключить по WebDAV без установки стороннего софта
Microsoft OneDrive
В бизнес тарифах Microsoft OneDrive максимальный размер файла ограничен 15ГБ. Это просто какое-то недоразумение! Во времена, когда даже бюджетные камеры снимают видео с битрейтом 200Mbit/s и легко генерируют файлы размером сотни гигабайт. Это ограничение делает сервис OneDrive полностью бесполезным для нас.
Выбор оборудования
При приобретении оборудования под облачное хранилище часто возникает вопрос: арендовать машины или покупать свои. Выше мы уже разбирались, в каких случаях собственный сервер незаменим. Однако организовать облако можно и на сторонних сервисах. Особенно это актуально для небольших компаний, потому что не всегда есть возможность выделить из бюджета необходимую сумму на покупку серверов, не всегда есть возможность создать собственную серверную, да и не нужно тратиться на обслуживание машин.
Но если вы всё же решили брать собственные серверы под облачное хранилище, то стоит иметь ввиду, что изменить оборудование будет проблематично и затратно. Не страшно, если мощности окажется недостаточно: всегда можно добавить еще одну машину в кластер. А вот если производительность окажется избыточной, то с этим ничего уже сделать не получится. Поэтому перед выбором стоит сделать следующее.
Четко определить цель, для которой будет использоваться сервер. В нашем случае — это файловое хранилище. Соответственно, наибольший интерес представляют накопители. На что следует обратить внимание при их выборе:
Ёмкость. Зависит от того, сколько сотрудников будет пользоваться хранилищем, какие типы файлов они будут закачивать на сервер, сколько информации уже сейчас ждет переноса в облако и на сколько увеличивается объем рабочих данных ежегодно.
В среднем для работы с текстовыми файлами, презентациями, PDF и небольшим количеством изображений нужно в среднем 10-15 Гб на сотрудника. Для работы с большими объемами высококачественных картинок и фотографий нужно увеличить минимум до 50-100 Гб, а то и больше. Потребности персонала, занимающегося обработкой видео и аудио, могут достигать нескольких терабайт на человека. В ряде случаев, например, при использовании крупных корпоративных программных пакетов с поддержкой версионности проектов, речь может идти и о 10 терабайтах на одного пользователя облака. Не забудьте учесть емкость под резервные копии файлов и непредвиденные нужды компании.
Что касается RAID-контроллеров, то для корпоративного облака лучше не использовать набортные решения. Их производительности может оказаться недостаточно для обслуживания большого количества запросов с удовлетворительной скоростью. Так что лучше выбрать дискретные модели из нижнего и среднего ценовых диапазонов.
Также необходимо определиться с вычислительной мощностью. Если вы создаёте облачное хранилище на базе нескольких серверов, то рекомендуется подбирать идентичные или очень близкие конфигурации. Это несколько упростит управление распределением нагрузки. И вообще лучше не делать ставку на одну мощную машину, комплектуя её дорогим процессором и оперативной памятью, а купить подешевле 2-3 машины. Почему?
Если ваше хранилище будет только принимать и отдавать статичные файлы, без возможности их запуска, то мощность процессора не слишком важна. Поэтому лучше не гнаться за количеством ядер и выбрать модель с хорошим «тактом». Из недорогих вариантов неплохо подойдут процессоры Intel Xeon серии E56XX с 4 ядрами, из более дорогих моделей можно порекомендовать машины на Intel Core i5.
Объем хранилища и цены
Мы храним большие объемы данных, около 10ТБ в среднем. Во время активной работы эта цифра может увеличиваться в несколько раз. Проекты приходится хранит еще несколько месяцев после сдачи клиенту, а то и вечно. Поэтому для нам нужно безлимитное хранилище, чтобы каждый месяц не думать сколько нужно докупить гигабайтов.
Количество сотрудников варьируется в пределах десяти, поэтому для удобства мы будем считать стоимость тарифов на 10 сотрудников.
Citrix ShareFile | Dropbox | Google Drive | Microsoft OneDrive | |
---|---|---|---|---|
Объем | Не ограничен | Не ограничен | Не ограничен | Не ограничен |
Цена за 10 пользователей в месяц | 150$ | 200$ | 100$ | 125$ |
У большинства сервисов такой ценник только при оплате на год вперед, и при оплате помесячно цена выше на 20-40%. Это нужно учитывать.
Примеры моделей серверов
Если вы предпочитаете не собирать сервер самостоятельно, а сразу приобретать готовое к работе оборудование, то обратите внимание на несколько подходящих моделей для создания файлового хранилища.
Dell PowerEdge T110. Сервер оснащен процессором Intel Core i3 2120 с всего двумя ядрами, но зато каждое из них обладает неплохой тактовой частотой в 3,3 ГГц, что для нашего облака важнее. Начальная конфигурация оперативной памяти не очень велика — 4 Гб, однако может быть расширена до 32 Гб. Сервер поставляется в двух комплектациях — без предустановленного жесткого диска или с HDD-накопителем емкостью в 1 Тб и интерфейсом SATA.
Lenovo ThinkServer RS140. Имеет мощный процессор Intel Xeon E3 с четырьмя ядрами по 3,3 Ггц каждое. Оперативная память «из коробки» — 4 Гб, плюс еще четыре слота для ее расширения. Также в комплект входят два жестких диска по 1 Тб с SATA-интерфейсом.
HP ProLiant ML10 Gen9. Во многом схож с описанной выше моделью — всё тот же Intel Xeon E3 и два терабайтовых HDD. Основное отличие в оперативной памяти — сервер HP имеет две пластины по 4 Гб каждая.
Теневые копии
Позволят вернуться к предыдущим версиям файлов. Это очень полезная функция позволит не только восстановить некорректно отредактированный документ, но и вернуть случайно удаленный файл или папку.
Как настроить и пользоваться данной возможностью, читайте подробнее в инструкции Как включить и настроить теневые копии.
Скрытые ограничения
Обычно, если что-то указано как безлимитное, нужно искать мелкий серый текст в условиях. У каждого сервиса есть свои особенности, которые можно не разглядеть с первого взгляда. У некоторых они настолько странные, что делают их полностью бесполезными для нашей задачи.
- Dropbox — максимальный объем загружаемого файла 50ГБ
- Citrix ShareFile — максимальный объем загружаемого файла — 100ГБ. Не очень много, но терпимо.
- Google Drive — У Google Drive максимальный размер файла 5ТБ!
Для каждого аккаунта или общего диска максимальный размер отдельного файла, который можно загрузить или синхронизировать, составляет 5 ТБ. Максимальный объем файлов, которые можно загрузить за один день, составляет 750 ГБ
Дополнительные требования
- Для обеспечения сохранности информации при выходе из строя жесткого диска, необходим RAID-контроллер. Настройка последнего выполняется из специального встроенного программного обеспечения, которое запускается при загрузке сервера;
- Сервер должен быть подключен к источнику бесперебойного питания;
- Необходимо предусмотреть резервное копирование. Для этого нужен дисковый накопитель (внешний жесткий диск) или другой сервер.
Подробнее о выборе оборудования читайте статью Как выбрать сервер.
Почему облако?
Облачная инфраструктура имеет ряд преимуществ:
-
Возможность быстрого масштабирования. Увеличение ёмкости и вычислительной мощности хранилища достигается с помощью быстрого подключения дополнительных серверов и СХД. Особенно это актуально для компаний, у которых нагрузка на облако предполагается нерегулярной.
Версионность
Теперь мы можем мгновенно обратится к любой версии файла. Особенно приятно, что видно каким пользователем были сделаны изменения. Это исключает ситуации, когда можно сказать "это не я, оно уже так было".
Список изменений файла в ShareFile с указанием даты и аккаунта который вносил изменения.
Читайте также: