Я схильний запропонувати реплікацію, яка є агностичною, як drbd. Велика кількість файлів призведе до того, що все, що працює на більш високому рівні, ніж "блокування сховища", витратить непотрібну кількість часу, гуляючи по дереву - як ви виявили, використовуючи rsync або створюючи інотифікувати годинник.
Коротка версія моєї особистої історії, що підкріплює це: я не використовував Ceph, але я впевнений, що це не в їх основній ринковій цілі на основі його подібності з Gluster. Однак я останні кілька років намагаюся реалізувати подібне рішення з Gluster. Більшу частину цього часу він працював і працює, хоча кілька основних оновлень версій, але проблем у мене не було. Якщо ваша мета - більше резервування, ніж продуктивність, Gluster може бути не гарним рішенням. Особливо якщо у вашому шаблоні використання багато дзвінків stat (), Gluster не дуже добре реплікації. Це тому, що статичні виклики на реплікувані томи йдуть до всіх реплікуваних вузлів (насправді "цегли", але ви, мабуть, просто матимете одну цеглу на хоста). Якщо у вас є двостороння репліка, наприклад, кожен stat () від клієнта чекає відповіді з обох цеглин, щоб переконатися, що він використовує поточні дані. Тоді у вас також є надмірні витрати FUSE та відсутність кешування, якщо ви використовуєте натиснуту файлову систему gluster для надмірності (а не використовувати Gluster як резервну програму з NFS як протоколу та automounter для надмірності, який все ще виходить з причини stat ()) . Однак Gluster дуже добре працює з великими файлами, де ви можете поширювати дані на декілька серверів; видалення та розповсюдження даних працює добре, оскільки це дійсно для чого. І новіша реплікація типу RAID10 виконує кращі результати, ніж старі прямі реплікації томів. Але, виходячи з того, що я гадаю, це ваша модель використання, я б радив цього. Тоді у вас також є надмірні витрати FUSE та відсутність кешування, якщо ви використовуєте натиснуту файлову систему gluster для надмірності (а не використовувати Gluster як резервну програму з NFS як протоколу та automounter для надмірності, який все ще виходить з причини stat ()) . Однак Gluster дуже добре працює з великими файлами, де ви можете поширювати дані на декілька серверів; видалення та розповсюдження даних працює добре, оскільки це дійсно для чого. І новіша реплікація типу RAID10 виконує кращі результати, ніж старі прямі реплікації томів. Але, виходячи з того, що я гадаю, це ваша модель використання, я б радив цього. Тоді у вас також є надмірні витрати FUSE та відсутність кешування, якщо ви використовуєте натиснуту файлову систему gluster для надмірності (а не використовувати Gluster як резервну програму з NFS як протоколу та automounter для надмірності, який все ще виходить з причини stat ()) . Однак Gluster дуже добре працює з великими файлами, де ви можете поширювати дані на декілька серверів; видалення та розповсюдження даних працює добре, оскільки це дійсно для чого. І новіша реплікація типу RAID10 виконує кращі результати, ніж старі прямі реплікації томів. Але, виходячи з того, що я гадаю, це ваша модель використання, я б радив цього. який все ще смокче з причини stat (). Однак Gluster дуже добре працює з великими файлами, де ви можете поширювати дані на декілька серверів; видалення та розповсюдження даних працює добре, оскільки це дійсно для чого. І новіша реплікація типу RAID10 виконує кращі результати, ніж старі прямі реплікації томів. Але, виходячи з того, що я гадаю, це ваша модель використання, я б радив цього. який все ще смокче з причини stat (). Однак Gluster дуже добре працює з великими файлами, де ви можете поширювати дані на декілька серверів; видалення та розповсюдження даних працює добре, оскільки це дійсно для чого. І новіша реплікація типу RAID10 виконує кращі результати, ніж старі прямі реплікації томів. Але, виходячи з того, що я гадаю, це ваша модель використання, я б радив цього.
Майте на увазі, що вам, мабуть, доведеться знайти спосіб провести головні вибори між машинами або здійснити розподілене блокування. Рішення пристроїв спільного блоку потребують файлової системи, яка обізнана з багатьма майстрами (як GFS) або вимагає, щоб лише один вузол монтував файлову систему зчитування-запису. Файлові системи взагалі не люблять, коли дані змінюються на рівні блоку пристроїв під ними. Це означає, що ваші клієнти повинні мати можливість сказати, хто є головним, і направити туди запити на запис. Це може виявитися великою неприємністю. Якщо GFS та вся його підтримуюча інфраструктура є варіантом, drbd в режимі мульти-мастер (вони називають це "подвійний первинний") може працювати добре. https://www.drbd.org/en/doc/users-guide-83/s-dual-primary-mode для отримання додаткової інформації про це.
Незалежно від напряму, з яким ви йдете, ви схильні виявити, що це все-таки досить великий біль робити в режимі реального часу, не даючи компанії SAN лише вантажопідйом грошей.