Comments 109
Тут возник один несколько идиотский вопрос. Допутим все происходит из-под винды и все хорошо. Но вот когда-то винда подпортилась или еще чего случилось, я гружусь с лайва, что-то делаю с данными — файл вордовский, например, поправил. Потом восстановил винду, допустим, из образа акрониса, т.е. StableBit установлен, и все настроено. Загружаемся. И… что будет? Вопросы какие-то будут задаваться типа: «Копии не синхронизированы, а вы об этом знаете, кэп? А вот кикие отличия...»
Попробовал сделать подобное — пока что ничего не поменялось. Измененный файл лежит как измененный, копии лежат в предыдущем виде. Посмотрю, что произойдет дальше.
Но вообще тоже вопрос к разработчикам, надо будет задать.
Я, например, могу физически вытащить два диска, поработать с оставшимся, а потом, после recovery, добавить в пул обратно два вытащенных диска, чтобы все корректно произошло.
When DrivePool makes a duplication pass, it compares the files. If it notices that one of the files doesn't match the other two, it would generate a warning and let you know. At that point, you can decide what to do.
Ситуация такова. Есть два харда по 500Гб. Добавляю их в пул. В настройках пула включаю «Pool File Duplication». Рядом с пулом загорается зеленый квадратик «х2». Потом копирую на виртуальный диск папочку и убеждаюсь, что она появляется в служебных папках пула на обоих реальных жестких дисках. Но вот что меня смущает… Почему размер пула равен терабайту, а не равен емкости одного харда в 500Гб? Или емкость будет уменьшаться с копированием файлов *2. Просто это не очень удобно для оценки свободного места и может ввести в некоторое заблуждение — свободен терабай, копируешь 700Мб, а на переданных 500Мб вдруг оказывается что места уже нету. Это надо в уме свободное пространство надо /2 )))
А так, в целом, программа мне понравилась. Даже приобрел без полномасштабного тест-драйва)
Пул же не «знает» заранее, будете вы все файлы копировать с дублированием или нет. Так что показывает реальное имеющееся свободное место. А помнить о том, что эта папка у вас дублируется, а эта — нет, обязан человек.
Просто такое решение я хотел использовать для работы человека, который выполняет чисто менеджерские задачи и в компах не очень того. В идеале еще хотелось бы иметь возможность отправки сообщений о потере диска или иной неисправности на e-mail, что бы постоянно не мониторить его комп.
Я же включил опцию «Pool File Duplication»!
А, это пропустил. Надо тогда пнуть разработчиков. На форуме задайте вопрос, там отвечают.
1) Я на пул перенес системные паки в Win7 — документы, рабочий стол и т.д. При установке некоторых программ я периодически вижу надписи: «Ошибка 1325.Documents не является допустимым коротким именем файла». «Мои документы» вернешь на место (диск С), начинают ругаться на Favorites.
2) Некоторые программы, ACDSee например, вообще отказываются устанавливаться — еще на этапе установщика где-то чего-то не может запуститься — в результе видим сбой установки.
Программная замена моему рейду не получается короче. А жаль — продукт понравился. Но назначение получается — только хранение файлов? И то еще непонятно насколько это корректно все будет себя вести, если файлы открывать/закрывать офисом, какие-нибудь картинки редактировать, смотреть видео — уже нет гарантий что не будет каких-то проблем с «короткими именами файлов».
периодически вижу надписи: «Ошибка 1325.Documents не является допустимым коротким именем файла».
Пинать разработчиков.
Программная замена моему рейду не получается короче.
RAID1 я бы этой штукой заменять не решился.
непонятно насколько это корректно все будет себя вести, если файлы открывать/закрывать офисом, какие-нибудь картинки редактировать, смотреть видео — уже нет гарантий что не будет каких-то проблем с «короткими именами файлов».
С этим у меня пока проблем не было — но доступ к файлам исключительно по сети, локально на сервере мало что делаю.
Мегаэксперимент, конечно, но у меня как-то сдох контроллер рейда и я по полной огреб с восстановлением данных из-под этого рейда, хоть он и 1. Неделю помню парился «собирая» этот рейд программно. Теперь у меня две одинаковые платы с контроллером рейда — одна рабочая, вторая на полочке )))
Исходя из номера ошибки и умозаключений я нашел такой способ лечения. Если логическому диску присвоить метку на английском языке, например «data», то все проблемы испаряются! Если же метка диска пустая, то вполне возможно что подставляется кириллица «Логический диск», что приводит к вышеописанным эффектам. Если кто желает может проблему с моих слов в баг-трекер послать.
Немножко потестил. Я на этот диск закинул всякого софта и начал устанавливать его. Запускал по 2-3 установки в параллель. Устанавливал впараллель с удалением «тяжелых» файлов и большой кучи маленьких файлов. Короче, у меня пока только приятные впечатления.
Единственный косяк — с размером (выше где-то я писал). При объедиенни двух дисков в «Pool File Duplication» размер почему-то созданного логического диска пула = сумме размеров дисков в него входящих, хотя должен быть равен размеру одного из дсисков (с минимальным размером?) в пуле. А если зайти в «Менеджер управления дисков» в винде, то этот размер тома еще и удвоен — так винда пишет! Т.е. берем 2 диска по 500Гб, размер созданного диска с пулом в проводнике равен 1Тб, а в «Менеджере управления дисков» (WIN7: Администрирование-Управление компьютером-Управление дисками) равен 2Тб :D НО! Если щелкнуть под диску в «Менеджере управления дисков», и посмотреть свойства тома, то размер будет равен 1Тб. Тут зачетное волшебство, короче. На форуме разработчика я тему завел по этому поводу.
Если реакция StableBit будет, то стану их клиентов.
Надо вообще будет этот вопрос у них на форуме поднять, может я недопонял чего — вдруг подождать надо было.
I believe you do need to remove the failed/missing disk before it will start re-duplicating the remaining data (should be *all* of it in that scenario). But as long as you have a copy of the data, it will try to duplicate it when it makes a duplication pass.
То есть вообще должно сработать автоматически, но не сразу, а когда придет время очередного «duplication pass».
Поделюсь своим опытом хранения данных на ZFS в продакшене вот уже 4 года. Использую RaidZ, это аналог RAID5, то есть может выйти из строя любой диск.
1. Независимость и целостность. RaidZ ближе всего подходит под условие аппаратно\программно независимый массив.
Можно полностью заменить аппаратную платформу, не меняя программную (достаточно перенести диски и флешку с ОС на другой ПК и включить его. Обычно используются системы построенные на FreeBSB которые поддерживают широкий спектр оборудования, от самых старых до самых новых ПК) Проверено много раз.
Можно полностью сменить программную платформу. Главное, что бы ОС поддерживала файловую систему ZFS (OpenSolaris, FreeBSD, Linux пока из коробки не поддерживает). После установки ОС Zpool импортируется одной командой! Проверено много раз.
2. Версионность (лучшая из виденных мною)
Механизм снапшотов интегрирован в файловую систему. Отсюда вытекает очень много положительных моментов.
Снапшоты аппаратно\программно независимы и не исчезнут из-за сбоя оборудования или ОС.
Снапшоты не замедляют работу ФС, как например в NTFS (этому способствует структура ФС, подробнее в Wiki, там очень интересно). У меня сейчас более 1000 снапшотов 8 тб файловой системы и все работает отлично. На то, что бы создать снапшот уходит пара секунд. Можно монтировать снапшоты когда нам требуется и получать полный доступ к данным внутри снапшота.
В EXT3\4 и NTFS снапшоты тоже возможны, но требуют отдельных сложных механизмов, которые не столь надежны и целостны.
3. Целостность.
Я настолько доверяю ZFS, что меня перестало интересовать какая ОС ее реализует и будут ли проблему у этой ОС. Zpool как бы существует отдельно от ОС, т.к. полностью обслуживается ZFS драйвером, а все параметры и снапшоты хранятся в самом пуле, а не в ОС. То есть если дисковый массив подключить к другому оборудованию и заново установить любую ОС, которая поддерживает ZFS, мы увидим наш пул, все файлы, снапшоты, разрешения фс, и старые настройки самого пула (например применять ли сжатие, использовать ли дедупликацию).
4. Дедупликация прозрачная и это бесплатно.
Для примера в Windows Server 2012 дедупликация есть, но она не прозрачная, то есть выполняется после того как файлы записаны или изменены в фоне по заданному расписанию (например ночью, когда сервер более свободен, т.к. это требует серьезных ресурсов).
5. Надежность
Уже успел столкнуться с выходом из строя одного из жестких дисков. Заметил по характерным звукам в соседней комнате. Лучше сразу настраивать оповещения, т.к. ZFS продолжает обслуживать пул и восстанавливает данные на лету по контрольным суммам. У меня даже скорость не упала при копировании через SMB. Пересборка 10 тб пула, заполненного на половину, после замены вышедшего из строя 2 тб диска заняла 16 часов.
Надеюсь мой опыт будет кому-то полезен!
Дома zfs разве что гики используют. Хотя сами они наверняка уверены, что zfs должна быть в каждом компьютере, начиная с телефонов. :)
А как задачу бэкапа решаете?
Бэкап… Бэкапится не все, а примерно 500 гигабайт. Остальное из разряда «скачаю заново, если что» — музыка, фильмы, игрушки… Cobian Backup, по сети на другой компьютер (линуксовый сервер у провайдера стоит). Фото время от времени заливаю руками на flickr.
Мелочи и текущая работа в дропбоксе.
Пытался решить аналогичную проблему (так и не решил для себя). Пока лично мне наиболее подходящим выглядят Windows Storage Spaces, но хочется убить их разработчиков за невозможность вывести диск, уже однажды заведенный в пространство, без полного убийства и создания его заново (на сервере можно, но только если у вас все диски — зеркало или с четностью). Вот всё жду, мож кто утилиту напишет или поправят, была надежда на 8.1, но обломалась :(
Я так понимаю, там очень простая система распределения блоков по виртуальным дискам, нельзя отдельный блок «переназначить» на другой диск. Диск вывести нельзя, зато дешево, надежно и практично.
У меня например сделано так — одно пространство (так проще) зеркало для личных данных (фото-видео), зеркало для исходников видео (большие, удаляем), четность для бэкапов (перестрахуемся) и обычный диск для треша который не жалко потерять (торренты, сериалы и т.п.). Что ни говори, а возможность «диска в 30ТБ, а оно там само выбирает куда писать» — удобно. Но перестроить — геморрой конечно. Вот там сейчас 2Тб+2Тб+1Тб — и есть у меня еще один 2Тб, но пихать уже особо некуда (портов нет да и куда столько в домашнем компе) — а чтобы перестроить надо куда-то слить эти почти 5Тб (ну 4, с учетом зеркала).
Собственно задача «объединили несколько дисков в один» — как раз и одна из самых популярных применений storage spaces, что даже готовы мириться с тормозами (они всё-таки тормозные, забавно насколько раньше было важно скорость hdd, а сейчас пофиг — это просто хранилище, а для быстроты есть ssd :) И другие решения кривее :( (упомянутые в статье я смотрел)
Причем я не понимаю, ну в чем была сложность с программной точки зрения реализовать фичу «по команде сливаем всё не-четное с диска Х на другие (если хватает места)». На буржуйских форумах столько стонов на эту тему :)
> четность для бэкапов (перестрахуемся)
У нас разные представления о том, что такое overhead :)
У меня четность 3:1 без зеркал, +треш под бекапы.
> а чтобы перестроить надо куда-то слить эти почти 5Тб (ну 4, с учетом зеркала).
с учетом зеркала — 3
>У нас разные представления о том, что такое overhead :)
есть немного (извратное у меня)
> с учетом зеркала — 3
ага, где-то так. В любом случае — не тривиальная задача, особенно если дисков больше станет. В итоге и получается, что задача «создать единый storage данных, чтобы можно было легко вставлять-доставать (заменять) диски» в домашних условиях не решается :-( (на винде) FlexRAID вроде обещал, но у него такой заумный интерфейс, что я не осилил :( Ну или на Storage Spaces делать всё в четность и мирится с падением производительности (на зеркало как-то жалко потерь 50% места).
Я вообще говоря не очень понимаю желания вставлять-доставать диски из JBOD. Но если уж очень хочется, то через powershell можно управлять на каких физических дисках какие виртуальные и в какой конфигурации. Если бить виртуальные по 1ТБ (то есть гарантировать, что один влезет в другой) — их можно ручками вычищать и удалять диски из пула без повреждения остальных.
да всё просто, я же выше пример привел — вот есть у меня 2+2+1, место уже заканчивается, есть свободный 2, а портов свободных нет. «И как?» (с)анекдот
> Если бить виртуальные по 1ТБ (то есть гарантировать, что один влезет в другой)
интересное решение, хотя и извратное. Надо подумать в этом направлении (на безрыбье и сам раком… :)
powershell же и в обычной вин8 доступен?
powershell конечно есть.
согласен, но как это часто бывает — «так получилось» ))) внешние контроллеры не люблю как-то — к винтам на них не достучишься, SMART не посмотришь…
спасибо
По моему опыту винты дохнут или сразу с хорошими показателями, или годами работают, накручивая счетчик…
А storage spaces — вот из-за невозможности убрать/добавить диск без геморроя я связываться и не стал.
MirrorFolder is a real-time folder mirroring and synchronization software to backup files
Резервные копии, а совсем не объединение нескольких дисков в единый массив.
Как же мне не хватало подобной софтинки. В одном из четырех ПК, стоящих дома, собрано 9 хардов (2х1тб, 2х1.5тб, 3х2тб, 1х3тб), и все это богатство доступно по сети. При этом частенько на разных дисках появлялись дубли. Очень часто это выглядело так:
Надо перепрошить телефон, сохраню-ка я на всякий случай память (16гб+64гб microSD) на диск в папочку «телефон».
Решил на ноутбуке сменить соотношение разделов (заодно попробовать, какую-нибудь экзотику из софта или OS), сохраню-ка я для простоты экспериментов весь жесткий ноутбука (1тб) на комп в папочку «ноутбук».
А потом с этих папочек все заливаешь обратно, но не все без разбора, а делается попытка отсортировать. В итоге папочки доживают до следующего «шила в заднице». И снова данные летят на ПК, но уже на другой диск. Потому, что снова:
потом разгребу.
Теперь же в сеть смотрит только один (но гигантский) диск. Таким образом легче отлавливать дубли (как минимум). А для папочки с семейным фото-архивом поставил дупликацию на 4 диска.
А еще у этой «тулзы» есть система плагинов, хоть их пока и не много.
А где их искать, если что?
В тексте даже картинка есть ;)

Дождитесь ребаланса или руками его запустите.
понял, это был глюк Тотал Командира странный.
в проводнике еще раз обновил, и всё увидел
Вот на RAID'е использоваться можно — там с восстановлением данных возиться не принято, диск поменял и живёшь дальше.
На счет глюкавости — на своих задачах (просто объединить диски и расшарить полученный массив по сети) я за время использования drivepool глюков не встречал.
Но действительно, никакие облачные клиенты у меня с этим диском не работают. Только btsync.
а я уже лицензию его успел купить :)
что-то этот google drive какой-то привередливый…
StableBit Scanner — покупать?
1. Как сейчас ситуация — тем же решением пользуетесь или нашли что то более интересное?
2. Встречали подобное ПО с поддержкой SSD кэширования?
1. Всё пользуюсь, более интересного не искал. По слухам, допилили drive bender — он с точки зрения цены выглядит лучше, чем drivepool + scaner, а умеет вроде всё то же самое. Но меня устраивает драйвпул, так что смысла проверять альтернативы я просто не вижу.
2. Нет. Меня скорость не слишком беспокоит, всё равно всё ограничивается гигабитной сетью. Да и вообще вроде как ссд-кэширование — аппаратная фича контроллеров?
Диски объединяются в пул, можно легко выводить\добавлять диски, поддержка SSD tiering. Ну и в целом нативное решение Windows.
Заинтересовало именно потому что есть возможность за небольшую сумму значительно повысить скорость используя SSD, и все работает софтово без аппаратных излишеств.
В конце 20-го читал статью на хабре про что уже и не помню, в вашем комментарии под статьей было упоминание обсуждаемой утилиты. И было упоминание что можно использовать в качестве кэша для JBOD небольшого SSD. Теперь не могу найти где об этом шла речь, может подскажите?
Drive Bender больше можно не рассматривать в качестве альтернативы https://blog.division-m.com/2023/04/01/a-very-sad-day/. Испытание временем выиграл Drivepool.
DriveBender, по-моему, уже несколько лет как не шевелился, только багфиксы изредка выпускал.
На https://www.greyhole.net/ можно глянуть, примерно аналогичное решение, то чисто серверное — на базе самбовых шар работает, а не локальных дисков.
Хотя лично я на домашнем сервере перешел с винды на unraid, а drivepool держу на основной рабочей станции — три ссдшки по два терабайта мне дешевле обошлись, чем одна на шесть.
Поставил себе этот DrivePool потестировать, и что-то никак не врублюсь, как он работает... может кто объяснит?
Не могу понять следующее: я объединил в массив 2 диска по 1ТБ. И на выходе получился массив объёмом 1,8ТБ. Получается, зеркалирование данных на этом массиве не работает? Полез в настройки искать, где его включить. На вкладке "File placement" для каждой папки, размещённой в массиве, стоят галочки напротив обоих дисков... то есть, вроде как, зеркалирование всё-таки должно работать. Но откуда тогда объём массива 1,8ТБ?
Также, я думал, что все файлы, которые я сохраняю в массив, можно будет увидеть на каждом отдельном диске массива. Но когда я открываю отдельный диск, там пусто. То есть, если я переставлю этот диск в другой компьютер, информацию с него уже не вытащить?
Ещё, не могу понять, что за настройки на вкладке "Balancers"
И ещё, перед объединением дисков в массив я создал на одном из дисков пару тестовых файлов и папок. Мне казалось логичным, чтобы при объединении дисков они либо зеркалировались на второй диск, либо, на худой конец, удалились с первого. Но с ними не произошло ни того, ни другого. Они так и остались лежать на первом диске. И кроме них на нём ничего не отображается, при том, что в массив я уже записал другие данные. В общем, не понятно, как всё это работает, и можно, ли, например, импортировать данные с диска в массив при его добавлении...
Как он считает размер свободного места тоже не понимаю. Он как будто не учитывает дубликацию файлов или там какой-то хитрый механизм.
Зеркалирование настраивается в Manage Pool - File Protection - Folder (Pool File) duplication. Pool file duplication включает зеркалирования для всего пула. В Folder duplication можно задать конкретные папки для зеркалирования. Вкладка File Placement настраивает только возможность жестко задать где будут храниться файлы. Если галки стоят на обоих дисках, то выбор диска без дупликации выбирается автоматом. https://stablebit.com/Support/DrivePool/2.X/Manual?Section=File Protection
Файлы появятся на обоих дисках при сохранении в pool, если включить дупликацию.
Balancers - это плагины, которые настраивают как будут распределяться файлы в пуле. Из описаний и настроек вроде всё понятно.
Файлы, которые уже были на дисках пула никуда не денутся. На дисках при создании пула просто создаётся скрытая папка, в которой хранятся файлы и метаданные пула. Импортировать данные в пул можно простым переносом данных с диска в пул.
Извините, что долго не отвечал, только сейчас заметил вопросы. В принципе, по многому уже ответили.
Свободное место тут считается просто как объём всех дисков в массиве. И по другому его считать сложно - потому что свободного места именно столько.
Файлы массива хранятся в скрытых папках на каждом диске - PoolPart.XXXX. Вы по прежнему можете хранить файлы непосредственно на дисках, входящих в массив - и они с массивом никак пересекаться не будут.
"Импортировать" данные можно методом переноса их в скрытую папку массива. На сам пул, впрочем, переносить будет правильнее, чтобы сразу балансировка и дублирование отрабатывались.
StableBit DrivePool — дисковый массив с дублированием файлов