Всем привет
Есть два сервера по 32 диска на 2Тб каждый. В каждом сервере из всех дисков собран raid6 (это было ошибкой). Данные на обоих серверах зеркальные, синхронизируются через lsync (обертка для rsync). Файлы только очень большие, размером от 1Гб. 99% операций - чтение. Запись очень медленная и вносит огромные задержки, но ее мало, поэтому пока миримся с этим
Сперва скорости чтения хватало, потом добавили по 2Тб SSD кэша, в одном сервере через dm-cache, на втором bcache, эксперементировали что лучше будет работать. Из-за характера данных (качают в основном последние данные) это дало хороший прирост производительности, 30-40% чтения стало браться с кэша
Текущая отдача около 7-8 гбит в пиковые часы с обоих серверов суммарно
Сейчас сервера работают на пределе, в часы пик иногда начинаются задержки чтения. Нужно как то это все модернизировать, хочется продумать, что делать, чтобы система стала более масштабируемой. Хочу избавиться от аппаратного массива, так как данные итак зеркальные. Хочется иметь возможность постепенно менять диски на более объемные. Иметь возможность добавить третий сервер с другим количеством дисков и объема. В общем по описанию подходит под описание работы распределенной системы ceph
Но ceph какой то страшный и сложный, но с этим можно разобраться. Еще везде пишут, что с 2-3 серверами с ceph ловить нечего. И какую даст ceph просадку/прирост по производительности в моем случае? Или может есть что-то более подходящее, чем ceph?
Как вообще организуют такие системы хранения? Подскажите в какую сторону копать?