MooseFS е неизправност толерантни, мрежа разпределена файлова система, който се разпространява данни в продължение на няколко физически сървъри, които са видими за потребителя като един ресурс & Nbsp; За стандартни файлови операции MooseFS действа като други Unix-така файлови системи.:
& Nbsp; * йерархична структура (дърво директория)
& Nbsp; * Магазини POSIX файлови атрибути (разрешения, миналата достъп и модификация пъти)
& Nbsp; * Поддържа специални файлове (блокови и символни устройства, тръби и контакти)
& Nbsp; * символни връзки (имена на файлове, сочещи към насочите файлове, а не непременно за MooseFS) и твърди връзки (различни имена на файлове, които се отнасят до едни и същи данни на MooseFS)
& Nbsp; * Достъп до файловата система може да бъде ограничен на базата на IP адрес и / или парола
Отличителни черти на MooseFS са:
& Nbsp; * Висока надеждност (няколко копия на данните могат да се съхраняват между отделни компютри)
& Nbsp; * Капацитет е динамично разширяема чрез поставяне на нови компютри / дискове
& Nbsp; * изтрити файлове се запазват за конфигуриране период от време (ниво файлова система "боклук" а)
& Nbsp; * Последователни снимки на файлове, дори докато файлът се пише / достъп
MooseFS се състои от четири компонента:
& Nbsp; * Управляващият сървър (главен сървър) & ndash; една машина управлението на цялата файлова система, съхраняване на метаданни за всеки файл (информация за размера, атрибути и местоположение файл (а), включително цялата информация за нередовните досиета, т.е. директории, контакти, тръби и устройства).
& Nbsp; * сървъри на данни (късовете на сървъри) - произволен брой стокови сървъри за съхранение на данни, файлове и да го синхронизират помежду си (ако се предполага определен файл, за да съществува в повече от едно копие).
& Nbsp; * Metadata бекъп сървър (и) (metalogger сървър) - произволен брой сървъри, всички от които магазин метаданни changelogs и периодично сваляне на главния файл метаданни; така че да се насърчи тези сървъри на ролята на Управляващия сървър, когато първичната майстор спира да работи.
& Nbsp; * клиентски компютри с достъп до (байонет) файловете в MooseFS - произволен брой машини, използващи mfsmount процес, за да общуват с управляващия сървър (да получават и променяте файла метаданни) и с chunkservers (да обменят реални данни файл).
mfsmount се основава на механизма за FUSE (Filesystem в потребителското пространство), така MooseFS е достъпно на всяка операционна система с работеща реализация на FUSE (Linux, FreeBSD, MacOS X, и т.н.)
Metadata се съхранява в паметта на управляващия сървър и едновременно запаметява диск (като периодично се обновява на двоичен файл и веднага се обновява на точкови трупи). Основната двоичен файл, както и трупите са синхронизирани с metaloggers (ако има такива).
Файл се разделя на фрагменти (парченца) с максимум 64MiB всеки. Всяка парче от своя страна е във файл на избрани дискове за сървъри на данни (chunkservers).
Висока надеждност се постига чрез конфигуриране толкова различни сървъри на данни, както е целесъобразно да се реализира стойността "гол" (брой копия, за да пазят), определени за даден файл.
<Силен> Как работи системата
Не всички файлови операции на клиентски компютър, който е монтиран MooseFS са абсолютно същите, както те биха били с други файлови системи. Ядрото на операционната система прехвърля всички файлови операции на модула FUSE, която комуникира с процеса на mfsmount. Процесът на mfsmount комуникира чрез мрежата впоследствие с управляващите сървърни и за сървъри (късовете на сървъри). Целият този процес е напълно прозрачен за потребителя.
mfsmount комуникира с управляващия сървър всеки път се налага операция на файла метаданни:
& Nbsp; * създаване на файлове
& Nbsp; * изтриване на файлове
& Nbsp; * четене директории
& Nbsp; * четене и промяна на атрибутите
& Nbsp; * промяна на размера на файловете
& Nbsp; * в началото на четене или писане на данни
& Nbsp; * на всеки достъп до специални файлове на MFSMETA
mfsmount използва директно свързване към сървър на данни (парче сървър) на която съхранява съответния парчето на даден файл. Когато пишете файл, след приключване на процеса на писане на управляващия сървър получава информация от mfsmount да актуализирате дължина на даден файл и последен път модификация.
Освен това, сървъри на данни (късовете на сървъри) да комуникират помежду си, за да репликира данни с цел да се постигне необходимия брой копия на даден файл на различни машини.
& Nbsp;
<Силен> отказоустойчивост
& Nbsp;
Административни команди позволяват на системния администратор да посочите "целта", или броя на копията, които трябва да се поддържат, на ниво на-указател или на-файл. Създаване на целта за повече от един и като сървър повече от един на данни ще осигури устойчивост на откази. Когато данните за файл се съхранява в много копия (на повече от един сървър на данни), системата е устойчива на откази или временни мрежови прекъсвания на един сървър на данни.
Това, разбира се, не се отнася до файлове с "гол" настроен на 1, като в този случай файлът ще съществуват само на един сървър на данни, независимо от това колко данни сървъри са разположени в системата.
Изключително важни файлове могат да имат своята цел настроен на редица по-висока от две, което ще позволи на тези файлове да бъдат устойчиви на повреда на повече от един сървър едновременно.
По принцип настройката за броя на копията на разположение трябва да бъде една по-голяма от очакваното брой на недостъпни или вън-на-ред сървъри.
В случая, когато един сървър на данни изпитва недостатъчност или изключване от мрежата, файловете, съхранени в нея, които са имали най-малко в две копия, ще останат достъпни от друг сървър на данни. Данните, които е сега "по своята цел" ще бъде повторен на друг достъпен сървър на данни, за да отново да предостави необходимия брой копия.
Трябва да се отбележи, че ако броят на наличните сървъри е по-ниска от "гол", определен за даден файл, необходимия брой копия може да бъде запазена. По същия начин, ако има същия брой сървъри като текущо зададената цел и ако сървърът на данни е достигнал 100% от капацитета си, тя ще бъде в състояние да започне да се държи копие на файл, който в момента е под неговата цел праг поради друга сървър на данни става неактивен. В тези случаи на нов сървър на данни трябва да бъде свързан към системата възможно най-скоро, за да се поддържа желаното брой копия на файла.
Нов сървър на данни може да бъде свързан към системата по всяко време. Новият капацитет веднага ще станат достъпни за използване за съхранение на нови файлове или да проведе повторен копия на файлове от други сървъри на данни.
Съществуват Административни помощни програми за изпитване на състоянието на файловете в рамките на файловата система, за да се определи дали някой от файловете в момента са под тяхната цел (определен брой копия). Тази програма може да се използва за промяна на настройката за цел, както се изисква.
Фрагментите на данните, съхранявани в парчетата са версийте, така повторното свързване на сървър на данни с по-възрастен екземпляр от данни (например ако беше на линия за определен период от време), няма да доведе до файловете да стане непоследователна. Сървърът на данни ще се синхронизира да задържи сегашните версии на парчетата, където остарели парчета ще бъдат премахнати и свободното пространство ще бъдат преразпределени за провеждане на нови парчета.
Недостатъци на клиентската машина а (който работи процеса на mfsmount) няма да окаже влияние върху съгласуваността на файловата система или върху дейността на другите клиента. В най-лошия случай на данни, че все още не е изпратено от провали клиентския компютър може да се загуби.
& Nbsp;
<Силни> ПЛАТФОРМИ
& Nbsp; MooseFS е достъпно на всяка операционна система с работеща реализация на FUSE:
& Nbsp; * Linux (Linux 2.6.14 и нагоре имат подкрепа FUSE включени в официалния ядрото)
& Nbsp; * FreeBSD
& Nbsp; * OpenSolaris
& Nbsp; * MacOS X
Главния сървър, metalogger сървъра и chunkservers също могат да се движат по Solaris или Windows с Cygwin. За съжаление без FUSE той няма да бъде възможно да се монтира файловата система в рамките на тези операционни системи
Какво ново в тази версия:.
- < Li> Най-важните промени включват фиксирана сигнал работа в многонишков модули, цел и trashtime ограничения в mfsexport.cfg и лесна проверка за изтеглени файлове с метаданни.
Какво ново във версия 1.6.19:
- Съществени промени са въведени в машината metalogger и metarestore инструмент за по-добро целостта на метаданните.
- се добавя лента за прогреса на сканиране в CS.
- Името на капитана сега реши при една връзка е неуспешна.
- нова сесия се създава, когато предишната се губи.
- Много други корекции на грешки и подобрения бяха направени.
Какво ново във версия 1.6.17:
- В тази версия ще въведе автоматично управление на кеш за данни .
- Това е достатъчно, за да обновите просто главния сървър (няма промени в късовете на сървъри или на клиентите кода са направени).
- механизъм ядрото кеш винаги е съществувала, но до сега кеша винаги се изчиства при отваряне на файла. Сега MooseFS контролира дали да го или не изчистите от проверява дали файлът е бил или не модифициран от друг клиент. Нека да разгледаме някои сценарии.
- Първи сценарий:
- 1. Computer A чете файл X
- 2. Computer B чете файл X
- 3. Computer A иска да прочете файл X - ние ще оставим на кеша (файла не е променено)
- Втори сценарий:
- 1. Computer A чете файл X
- 2. Computer A пише на файл X
- 3. Computer A иска Tor прочетете файла X - ние ще оставим на кеша (файлът е променен, но компютъра A знае за тези промени)
- Трети сценарий:
- 1. Computer A чете файл X
- 2. Computer B пише във файла X
- 3. Computer A иска да прочете файл X - тук ние трябва да принуди да изчистите кеш паметта (тъй като промените са направени от Computer B и Computer A не знаем за тях)
- В реални среди първия и втория сценарии се случват далеч по-често от трети сценарий и затова е разумно да се оставят на съдържанието на кеша и да получат цялостна производителност на системата.
- Разбира се, има някои средни сценарии (но те също са съществували преди) като този:
- 1. Computer A отваря файл X и се чете напълно (файлът остава в кеш)
- 2. Computer B модифицира файла X
- 3. Computer A отново прочита файл X (но без да затваряте или възобновяване - просто преместване на позиция 0 и го препрочитам)
- В тази ситуация Computer A ще получи същите данни, както в стъпка 1, но същото се случи и в MooseFS преди.
- Един атрибут nodatacache също беше въведена който забранява да кешира файл. От версия 1.6.17 на файлове с nodatacache атрибут се държат като файлове направиха в по-старите версии на MooseFS. Този флаг може да се използва с инструменти mfsseteattr, mfsdeleattr и mfsgeteattr.
- Този флаг е добавен превантивно и вероятно няма да се наложи да го използвам. Ако след известно време се оказва, че това е наистина безполезно той ще бъде изтрит. Но ако намерите всички случаи / сценарий, който изисква деактивиране механизма за автоматично кеш моля да го споделите с нас.
Коментари не е намерена