Cкоростная синхронизация миллиарда файлов
Cкоростная синхронизация миллиарда файлов
Есть несколько идентичных серверов (4 ноды) на Amazon EC2 с Ubuntu. Каждый генерирует и хранит у себя на диске кэш, который хотелось бы синхронизировать. Но простой rsync тут не подойдет — файлов несколько миллиардов, nfs — слишком медлителен, и т. д. Полный список рассмотренных вариантов с пояснениями ниже.
К тому же, время от времени нужно удалять устаревшие файлы сразу на всех серверах, что пока делается вручную и занимает несколько суток. Вопрос наиболее быстрой для такого Use Case файловой системы планирую описать позже. Оговорюсь только, что по нескольким причинам была выбрана XFS.
После теста нескольких кластерных технологий и файловых систем, по совету старшего товарища, решили использовать тот же rsync, но в связке с inotify. Немного поискав в интернете готовое такое решение, дабы не изобретать велосипед, наткнулся на csyncd, inosync и lsyncd. На хабре уже была статья о csyncd, но он тут не подходит, т.к. хранит список файлов в базе SQLite, которая вряд-ли сможет сносно работать даже с миллионом записей. Да и лишнее звено при таких объемах ни к чему. А вот lsyncd оказался именно тем, что нам и было нужно.
UPD: Как показала практика, необходимо ощутимое измение и дополние в тексте. Я решил внести лишь незначительные правки в основную часть, а новыми выводами поделиться в конце статьи.
Защита конфиденциальности данных при использовании службы OmniPresence
Мы понимаем, что иногда вы хотите хранить свои данные на собственном сервере. Это может быть связано с правилами компании, юридическими ограничениями или вашим желанием самостоятельно контролировать резервное копирование важной информации. Мы понимаем!
Если вы не хотите использовать сервер Omni Sync, можно настроить службу OmniPresence для подключения к любому серверу WebDAV. Это может быть ваш собственный сервер или сторонний сервис, которому вы доверяете.
Если выбрана синхронизация с собственным сервером WebDAV, пошаговые инструкции по настройке WebDAV на сервере OS X Server см. в этой полезной статье службы поддержки на нашем веб-сайте.