Частното складиране облак със собствените си ръце - негодник - ите
Облачни услуги за съхранение днес са на върха на своята популярност. Всъщност, за да могат да имат достъп до своите данни от всяко място, където има интернет връзка - това е много удобно. Въпреки това, все повече и повече хора започват да мислят за сигурността на данните в публичния облак. Добавен на гориво за програмата PRISM, което казахме Ed White Guard огъня и.
OwnCloud - един продукт с отворен код, която е предназначена за възстановяване на данни под контрола на съответните им собственици. Той е алтернатива на такива чудовища, като Dropbox, iCloud, SkyDrive и други от този род. OwnCloud има лесен за употреба уеб интерфейс, вграден WebDAV и настолни програми за синхронизация на файлове.За съжаление, OwnCloud означава инсталиране само един сървър. Като такива, по мое мнение, частния облак е по-скоро като една малка гръмотевична буря облак. В този пост ще говорим за това как можете да използвате за монтаж OwnCloud три сървъра, като по този начин получаване на надеждното архивиране на ниво сървър.
вместо въвеждане
OwnCloud umneet работи с интегрирана SQLite база данни и MySQL. След това тя ще отиде само за работата с MySQL база данни. Конфигуриране на уеб сървър и инсталиране OwnCloud в този запис също не се взема предвид.
Задачата на организиране базирана на облак съхранение на файлове OwnCloud съкращение на ниво сървър по начин намалява до две подзадачи:
- Персонализиране на синхронизация на файлове
- Създаване на MySQL база данни репликация
Персонализиране на синхронизация на файлове
Има две възможни решения в тази област. Първият - разпределена файлова система. В този случай, данните ще се съхраняват на всеки сървър с определено ниво на напускане, елемент «RAID» няма да бъде колела вътре в сървъра и сървъра заедно. В момента тя се развива много софтуер за изпълнение на разпределени съхранение, сред тях: блясък, цеф, glusterfs, openAFS и списъкът продължава. Уви, тези решения доста взискателни и имат по-малко производителност, отколкото използването на традиционните файлова система. Следователно, за да се отнасяме към тях, ние не ще. В тази статия ще разгледаме втория начин - синхронизация на файлове.
По този начин, също има много да избирате. Например, за csync2 за синхронизация на конфигурационни файлове, споменати по-рано. Но, във връзка с текущата задача, в csync2 има няколко недостатъка. На първо място, тя използва SQLite за съхранение на информация за файловете, че когато голям брой файлове е сериозен проблем. На второ място, синхронизирането започва по график, а не събитие, като например сваляне на нов файл.
От версия 2.6.13 на ядрото на Linux подсистемата е включена, която ви позволява да получавате уведомления за промени в файловата система - inotify. Въз inotify произведения lsyncd - демон, който следи промените в локалната директория и предварително определен интервал от време започва синхронизиращи средства, като Rsync.
В Debian / Ubuntu lsyncd може да се инсталира от стандартния хранилището:
За конфигурационен файл lsyncd използва Lua скриптов език. В нашия случай /etc/lsyncd/lsyncd.conf.lua файл трябва да изглежда така:
- rsyncOps - опция, която управлява RSYNC,
- закъснение - времето в секунди, през което промяната натрупани за синхронизация.
Детайли и други възможни методи за синхронизация са на разположение в официалната документация.
Този конфигурационен файл трябва да бъде разширен през сървърите, на мястото на стойност «домакин» параметър за взаимна синхронизация.
В допълнение ще отбележа, че inotify има няколко параметри на ядрото на Linux. Може би те трябва да бъдат коригирани при големи инсталации:
- fs.inotify.max_queued_events - максимален брой събития в опашката,
- fs.inotify.max_user_instances - как inotify случаи могат да се изпълняват един и същи потребител,
- fs.inotify.max_user_watches - как много елементи могат да проследят един и същи потребител.
Създаване на MySQL база данни репликация
В този блог вече е описано майстор-майстор за настройка на репликация MySQL на две сървъри. По това време, три сървъра и малко сложна задача, репликация ще бъдат организирани около ринга.
Трябва да свалите сметището на базата данни от първичния сървър за допълнителна конфигурация две MySQL и да доведе до следния вид:
- сървър-ID - уникалния идентификационен номер на сървъра трябва да е различно от всички сървъри, които uchatsvuyut репликация.
- репликира-същия сървър ID - предотвратява репликация контур, процесите на сървъра само двоични дневник, които ID сървър е различна от текущата.
- автоматично увеличение динкремента - стъпка auto_increment промяна, трябва да бъде равна на п на брой възли.
- авто-увеличение-офсет - начална auto_increment стойност от 1 до N, за всеки възел.
- влезте роби актуализации - причинява MySQL да пишат промени от бинарните трупите се повтарят и в двоичната му дневник, от съществено значение за репликация пръстен.
- репликира-див да не се прави на маса - в моя случай, сървърите се използват за различни задачи и искате да се възпроизвеждат само на база данни OwnCloud.
След това можете да изберете репликацията на схемата:
За да направите това, стартирайте на сървъра победа:
сървъра номер = 1
След това, проверка на състоянието на репликация: