Статьи
Lustre
Lustre є кластерну файлову систему, основними особливостями якої є чудові надійність і масштабованість. Продуктивність також більш ніж висока - швидкість передачі даних може досягати сотень гігабіт на секунду, а теоретичний максимум доступного дискового простору вимірюється петабайт. Ця файлова система може використовуватися як на скромних робочих групах з декількох комп'ютерів, так і на величезних кластерах, які налічують десятки тисяч машин.
Крім цього підтримуються всі можливості, який повинна мати будь-яка поважаюча себе кластерна файлова система:
- підтримка широкого асортименту типів високошвидкісних мережевих з'єднань;
- надійна система "замків" для забезпечення паралельного доступу до файлів;
- можливість автоматичного самовідновлення в разі падіння будь-якого з вузлів;
- розподілене управління файловими об'єктами для надання масштабується доступу до файлів.
Спочатку архітектура цієї файлової системи була розроблена просто в рамках дослідницького проекту Петера Браам в 1999, але він вирішив не зупинятися на досягнутому і заснував Cluster File Systems, Inc. , В якій вже і велася основна розробка самої файлової системи. Перший реліз Lustre 1.0 був випущений в 2003 році. Через чотири роки компанія була придбана Sun Microsystems в жовтні 2007 року, але це лише сприяло подальшому розвитку проекту. Програмне забезпечення, що входить до складу проекту, доступний за ліцензією GPL, що також зіграло важливу роль в його житті.
архітектура
Кожен комп'ютер, що входить склад кластера Lustre, виконує свою чітко визначену функцію:
- MDS. Сервер метаданих призначений для зберігання всієї службової інформації про систему: назви файлів, директорій, прав доступу і так далі. Досить наявність одного такого сервера в системі, але для забезпечення надійності на випадок будь-яких збоїв, звичайно його дублюють. Можливе використання зовнішнього сховища даних (MDT), яке може бути загальним для двох дублюючих один одного MDS.
- OSS Комп'ютери для зберігання самих даних. Кожен з них працює з 2-8 OST, в їх ролі можуть виступати практично будь-які засоби зберігання даних, починаючи від просто жорстких дисків або RAID масивів всередині OSS, закінчуючи зовнішніми системами зберігання даних enterprise-класу. Сума дискового простору всіх OST і є розміром доступного дискового простору всієї файлової системи Lustre.
- Клієнт. Комп'ютери, безпосередньо використовують файлову систему. Їм надається повний паралельний доступ, повністю відповідає стандарту POSIX.
Один і той же комп'ютер теоретично може поєднувати в собі кілька функцій, але в більшості випадків це недоцільно (за винятком суміщення клієнтів з OST і, можливо, випадків, коли кількість вузлів кластера дуже мало).
Можливо більш наочно вишенаписанное зможе представити схема архітектури системи ( запозичена з офіційного сайту і переведена):
Крім цього для функціонування системи необхідний ще один компонент, за великим рахунком не є її частиною - MGS. Його роль полягає в наданні конфігураційної інформації всіма компонентами однієї або декількох файлових систем Lustre. Він також потребує окремого сховище даних, але чисто теоретично він може бути і суміщений з одним з компонентів файлової системи.
функціонування
Основним поштовхом для виконання будь-яких дій в рамках всієї файлової системи зазвичай є запит з одного з клієнтів. Програмне забезпечення для клієнтів являє по суті інтерфейс між віртуальної файлової системою Linux і серверами Lustre. Кожному типу серверів відповідає своя частина клієнтського ПЗ: MDC, OSC, MGC. На відміну від Hadoop і GFS файлова система Lustre повинна бути примонтировать до локальної системі клієнтів для повноцінного їх функціонування.
Для здійснення комунікації між клієнтами і серверами використовується власний API, відомий як LNET. Він підтримує безліч мережевих протоколів за допомогою NAL.
В системі відсутні незамінні компоненти, це є запорукою відмовостійкості системи. У разі виникнення каки-небудь неполадок або збоїв в роботі обладнання, роботу втратили працездатність компонентів системи перехоплять інші її компоненти, що зробить збій непомітним для користувачів системи. Це досягається за рахунок дублювання серверів, що виконують однакові функції, а також наявність налагоджених алгоритмів дій, спрямованих на автоматичне відновлення повноцінного функціонування системи в разі виникнення надзвичайних ситуацій. Але цього звичайно ж замало для абсолютної надійності системи, на додаток повинна бути надана як мінімум система безперебійного живлення для всіх компонентів кластера на випадок проблем з електроенергією в датацентрі (для Росії більш ніж актуально).
У списку додаткових можливостей, що надаються файлової системою, можна назвати можливість виділення квот на дисковий простір для кожного користувача системи, аутентифікацію користувачів за допомогою механізму Kerberos, підвищення фізичної пропускної спроможності мережевого з'єднання шляхом аггрегірованія фізичних мережевих з'єднань в одне логічне віртуально мережеве з'єднання (досить цікава можливість , здатна при виконанні певних умов істотно вплинути на швидкодію системи). Крім цього надається цілий ряд можливостей по створенню резервних копій даних на рівні файлової системи в цілому, окремих пристроїв або ж файлів.
висновок
Ця файлова система знайшла своє застосування в безлічі найбільших кластерів та суперкомп'ютерів по всьому світу, але це не заважає їй з тим же успіхом демонструвати і на кластерах істотно меншого масштабу. Близько половини з найпродуктивніших суперкомп'ютерів у всьому світі використовують Lustre в якості файлової системи. Крім цього багато компаній надають її в якості основи для Linux кластерів (наприклад HP StorageWorks SFS, Cray XT3, Cray XD1). Чим не показник її конкурентоспроможності?
В якості джерел інформації були використані офіційний сайт проекту і іноді сторінка англійської wikipedia.org . На все те ж офіційному сайті завжди можна знайти всю необхідну документацію, а саме програмне забезпечення проекту є на відповідній сторінці сайту Sun Mictosystems.
Чим не показник її конкурентоспроможності?