Есть ли избыточный метод хранения, который хорошо справляется с дисками разных размеров? Что насчет роста?

Есть ли избыточный метод хранения, который хорошо справляется с дисками разных размеров? Что насчет роста?

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

Допустим, у меня есть четыре диска разного размера, потому что я беден. Если я правильно понимаю, то вот как это будет выглядеть в RAID 5:

введите описание изображения здесь

Фактически сохранено 9 ГБ данных.

Но существует ли что-то подобное?:

введите описание изображения здесь

Фактически будет храниться 12 ГБ данных.

Кроме того, есть ли метод хранения, который позволяет иметь избыточность, но также и возможность наращивать пул дисков, просто добавляя больше хранилища? Я хотел бы расширить свой сервер без необходимости его полной перестройки (опять же, плохо).

Спасибо

решение1

Чтобы максимально эффективно использовать пространство, можно создать raid-5 с первыми 3 ГБ всех 4 дисков, затем создать еще один raid 5 для оставшихся 2 ГБ на 3 дисках по 5 ГБ и объединить оба raid в raid 0 (с чередованием). Однако расширение raid 5 будет невозможно, поэтому единственным вариантом расширения является добавление (виртуального/физического) устройства к родительскому raid 0.

Чтобы попытаться использовать все диски и при этом разрешить расширение, вы можете разделить диски на две группы с максимально возможной одинаковой общей емкостью, создать расширяемый raid 0 (чередующийся) для каждой группы, а затем реализовать систему raid 1 (зеркальную) с двумя системами raid 0. Это может даже работать для raid 5 с 3 или более группами, если вы сможете сгруппировать их соответствующим образом. Расширение этого будет означать добавление диска во все группы, расширение их систем raid 0, а затем расширение родительского raid для использования нового пространства. Хотя на фундаментальном уровне это просто, последний шаг может оказаться сложным на практике.

Честно говоря, все это звучит как головная боль. Я думаю, что лучшим вариантом будет объединить диски одинакового размера, создать raid 1 (зеркало) с каждой парой и иметь расширяемую реализацию raid 0 (чередование), например, пулы ZFS, чтобы поместить их в одно устройство. Вы можете не использовать все диски, и вы можете добавлять только два диска за раз, но это просто, расширяемо, понятно и довольно избыточно.

Полосатые/зеркальные пулы ZFS (https://www.freebsd.org/doc/handbook/zfs-zpool.html)

решение2

Если вы используете Windows, это будет возможно с Storage Spaces в Windows 8.1 и выше. Смотрите:

https://serverfault.com/questions/770472/смешивание-дисков-разных-размеров-в-пуле-хранилищ/771293#771293

https://www.pcsteps.com/738-software-raid-windows-storage-pools/

Связанный контент