Сучасні розподілені файлові системи для Linux: Основні відомості., Linux, Операційні системи, статті

Валерій Качуром

Переклад статті Білла тло Хагена.

Про сучасні замінах традиційних засобів спільного доступу до файлів.

Що таке розподілені файлові системи?

Здатність спільно використовувати диски, каталоги, і файли по мережі – це одне з найбільш значних досягнень сучасних інформаційних технологій. Ця здатність може істотно скоротити вимоги до дискового простору комп’ютерів і полегшити спільну роботу користувачів. Комп’ютери з Microsoft Windows і MacOS Apple / MacOS X використовують для цього механізм спільного використання дисків і директорій. У системах Linux / Unix для тих же самих завдань традиційно використовується NFS – мережева файлова система.

NFS – це найвідоміший механізм спільного доступу до файлів для Linux та інших Unix-систем, тому що він присутній в багатьох Unix-подібних системах і дуже простий в налаштуванні. NFS підтримується ядром Linux, і утиліти, пов’язані з NFS, присутні в кожному дистрибутиві. Але в світі Linux існують і більш сучасні механізми для спільного використання файлів і каталогів. Кожен з них має певні переваги в налаштуванні або у використанні.

Розподілена файлова система OpenAFS – Це Open Source-аналог відомої комерційної розподіленої файлової системи AFS. Підтримка для розподілених файлових систем InterMezzo і Coda вже присутній в нових ядрах Linux з серії 2.4. Нові механізми спільного використання файлів, засновані на Web (наприклад, WebDAV), Теж можуть використовуватися як файлових систем.

У цій статті дається короткий огляд переваг розподілених файлових систем, обговорюються найпоширеніші проблеми та їх вирішення, і описуються найцікавіші з розподілених файлових систем, доступних для Linux сьогодні.

Введення в розподілені файлові системи.

Зараз мережеві файлові системи називають «розподіленими». Цей термін відображає той факт, що багато з цих файлових систем мають набагато більше можливостей, ніж проста передача даних по мережі. Носії даних, пов’язані з цими файловими системами, не обов’язково можуть бути розташовані на одному комп’ютері – вони можуть бути розподілені між багатьма комп’ютерами.

Розподілені файлові системи OpenAFS і Coda мають власні механізми управління розділами, які спрощують можливості зберігання загальнодоступної інформації. Вони так само підтримують дублювання – здатність робити копії розділів і зберігати їх на інших файлових серверах. Якщо один файловий сервер стає недоступним, то все одно до даних, що зберігаються на його розділах, можна отримати доступ за допомогою наявних резервних копій цих розділів.

Найголовніше відмінність між підходом Windows / MacOS (спільне використання каталогів і дисків) і підходом Linux, MacOS X та інших Unix-подібних багатокористувацьких операційних систем – в тому, як ці операційні системи використовують і організовують розділи. Windows / MacOS експортують розділи як окремі каталоги або диски, і віддалені системи, які хочуть звернутися до загальнодоступних пристроїв, повинні обов’язково підключити їх до себе.

Коли найвищий рівень організації в файлової системи – це розділ диска (наприклад, як в файлових системах Windows), робочі станції клієнтів для отримання доступу до цих даних повинні обов’язково підключитися до розділу і призначити йому окрему букву в своїй локальній розкладці (наприклад, диск E, F, G, і т.д). Букви можуть бути призначені мережевим розділах в користувацьких і групових профілях Windows (Для стандартизації). Але, на жаль, не на всіх комп’ютерах розташування літер може бути однаковим. Наприклад, на комп’ютері з великою кількістю жорстких дисків і розділів потрібні букви можуть бути зайняті, і тому доведеться давати мережевим розділах інші позначення.

Навпаки, файлова система Unix – це ієрархічна файлова система, до якої додаткові розділи додаються за допомогою монтування їх до існуючої директорії. Це дозволяє ефективно додати будь-яке джерело даних в будь-яку існуючу файлову систему. Якщо ви монтуєте нове джерело інформації до каталогу, який є частиною розподіленої файлової системи, він відразу ж стає доступним всім клієнтам цієї розподіленої системи.

Сучасні розподілені файлові системи типу OpenAFS або Coda включають в себе спеціальні сервіси для керування розділами. Це дозволяє вам змонтувати розділи різних файлових серверів в центральну ієрархію директорій, підтримувану файловими системами. OpenAFS використовує центральний каталог, званий «/ afs», а Coda використовує «/ coda». Ці ієрархії директорій доступні всім клієнтам розподіленої файлової системи, і виглядають однаково на будь-який з клієнтських робочих станцій. Це дає можливість користувачам працювати зі своїми файлами однаково на будь-якому комп’ютері. Якщо ваш настільний комп’ютер не працює, ви абсолютно спокійно можете використовувати будь-який інший – всі ваші файли знаходяться в безпеці на сервері.

Розподілені файлові системи, що мають одні і ті ж дані багатьох різних комп’ютерних систем, дають користувачам можливість використовувати будь-яку операційну систему, краще всього підходить для їх завдань. Користувачі Macintosh можуть користуватися усіма перевагами графічних інструментальних засобів, доступних в Mac OS, і одночасно зберігати свої дані на централізованих файлових серверах. Користувачі Windows так само можуть мати доступ до стійкої глобальної файлової системи. Розподілені файлові системи особливо привабливі при спробі координації роботи між групами, розташованими в різних містах, державах, або навіть в різних країнах. Перевага – загальні дані завжди доступні по мережі, незалежно від вашого місцезнаходження.

Проблеми адміністрації розподілених файлових систем.

Використання розподілених файлових систем дає системним адміністраторам не тільки нові можливості, але й нові проблеми. Але розподілені системи здатні спростити багато з стандартних адміністративних задач. В мережевому середовищі користувачі повинні мати можливість зайти в мережу під своїм ім’ям з будь-якого комп’ютера. Це означає, що механізм входу в мережу (або аутентифікації) теж повинен бути мережевим. Тому в середовищі розподіленої файлової системи файли груп і паролів, розташовані на індивідуальних комп’ютерах, вторинні по відношенню до мережевих механізмам аутентифікації (таким, як Kerberos або NIS, які надають користувачам можливість працювати на будь-якому комп’ютері). Але стандартні локальні механізми перевірки пароля все ж повинні існувати, щоб адміністратори могли виконувати на локальних комп’ютерах необхідні завдання.

Збереження загальних даних на централізованих файлових серверах (а не на індивідуальних комп’ютерах) спрощує такі адміністративні завдання, як резервування і відновлення файлів і каталогів. Це так ж централізує такі стандартні адміністративні завдання, як контроль за використанням файлової системи, і представляє нові можливості управління зберіганням даних – наприклад, балансування завантаження. Розподілені файлові системи типу OpenAFS і Coda забезпечують вбудовані логічні системи управління розділами, які дають адміністраторам можливість перемістити інтенсивно використовуються дані на більш потужні-менш використовувані комп’ютери. Якщо розподілена файлова система підтримує дублювання, копії інтенсивно використовуваних даних можуть розподілятися між багатьма файловими серверами. Це може зменшити навантаження на мережу, і полегшити роботу серверів. Розподілені файлові системи використовують логічні розділи замість фізичних дискових розділів, і це дозволяє легко додати в мережу нову вільну пам’ять прямо під час роботи. (Для додавання нового диска в локальний комп’ютер довелося б витратити деякий час).

Використання розподілених файлових систем так само полегшує можливість спільного доступу до програмного та апаратного забезпечення. Але перед цим потрібно впевнитися, що ліцензії до використовуваних програм дозволяють установку програмного забезпечення в розподіленої файлової системи. Сервера друку – одна з первісних причин появи середовища «клієнт-сервер». Розподілені файлові системи так же спрощують спільний доступ до спеціалізованих апаратних засобів, з’єднуючись по мережі з комп’ютером, на якому встановлені потрібні апаратні засоби, і при цьому все ще маючи доступ до ваших даними.

Використання централізованої розподіленої файлової системи може забезпечувати суттєві переваги у вартості і швидкодії виконання роботи для клієнтських систем. Розподілені файлові системи суттєво зменшують апаратні витрати, мінімізуючи кількість пам’яті на будь-якому десктопі або ноутбуці. Використання розподіленої файлової системи в якості архіву для користувача даних зазвичай означає більш швидке завантаження клієнтських машин, тому що велика кількість даних більше не зберігається локально і тому не потребує перевірки після перезапуску клієнта. Комбінація розподіленої файлової системи і використання журнальованою файлових систем на клієнтських комп’ютерах може дати значне збільшення швидкості запуску системи.

Підтримка автономної роботи з даними.

Використання розподіленої файлової системи збільшує залежність комп’ютерних систем від мережі. Ця залежність від даних, до яких люди можуть звертатися тільки по мережі, викликає деякі цікаві проблеми для користувачів лаптопов / мобільних комп’ютерів, які потребують доступу до своїх даних навіть тоді, коли доступ до мережі неможливий. Це називається «автономна робота» – система повинна функціонувати, якщо ресурси, які зазвичай присутні в мережі (наприклад, призначені для користувача дані), з якихось причин не доступні. Навіть Windows забезпечує графічний інтерфейс для можливості маркування файлів, з якими ви хочете працювати, коли ви відключені від мережі, і для синхронізації цих файлів, коли ви з’єднуєтеся повторно.

Розподілені файлові системи Coda і InterMezzo, які є в даний час доступними для Linux, теж забезпечують інтегровану підтримку для автономної роботи. Так само зараз ведеться робота над забезпеченням цієї можливості для файлових систем NFS. Coda і InterMezzo вже підтримуються ядром Linux – підтримка Intermezzo вбудована в ядро, починаючи з версії 2.4.5, а Coda взагалі була інтегрована в ядро ​​2.4 з самого початку.

Coda – розподілена файлова система з походженням з OpenAFS, яка розробляється в університеті Carnegie Mellon з 1987 року. InterMezzo – відносно нова розподілена файлова система, упор в розробці якої зроблений на високій доступності, гнучкому дублювання каталогів, підтримці автономних операцій, і постійному кешуванні. Творці InterMezzo були натхненні CMU Coda, але цей проект не заснований на початковому тексті Coda. Початковий творець InterMezzo, Пітер Браам, був главою проекту Coda в CMU протягом кількох років, і після цього він сам почав розробляти InterMezzo і кілька інших проектів.

Приклади використання цих файлових систем будуть представлені в наступних статтях цієї серії.

Розширення файлових систем за допомогою Web.

До створення розподілених файлових систем спільне використання файлів через мережу обмежувалося простими передачами файлів за допомогою використання протоколу передачі файлів – FTP (File Transfer Protocol). Поява Всесвітньої павутини в значній мірі спростила процес роботи з FTP – тепер не потрібно знати команди, тому що протокол FTP інтегрований у більшість браузерів. Здатність легко передавати файли через Web також вела до розширення Павутини і істотного поліпшення основного протоколу передачі гіпертексту – HTTP (HyperText Transfer Protocol), який зараз є підставою для багатьох систем розподіленого використання файлів.

Найвідоміша з них – це WebDAV, яка розшифровується як «Web-система розподіленої авторизації і контролю версій» (Web-enabled Distributed Authoring and Versioning). WebDAV – це набір розширень до протоколу HTTP, що забезпечує спільну середовище для користувачів, яка дозволяє їм завантажувати, впорядковувати та редагувати файли, що зберігаються на Web-серверах.

Підтримка WebDAV вбудована в багато популярні Web-сервери, наприклад – Apache, де це грунтується на розпізнавальних механізмах сервера. (Від простих файлів. Htaccess до інтегрованих NIS, LDAP, або навіть механізму аутентифікації Windows). Використання WebDAV для доступу і модифікації файлів через Web вбудовано в операційні системи Mac OS X, в нові версії Microsoft Internet Explorer, а так само доступно і в Linux при використанні таких програм, як менеджер файлів Nautilus. Хоча це і не файлова система в традиційному сенсі, але ви можете навіть змонтувати WebDAV в Лінуксі, використовуючи завантажуваний модуль ядра під назвою davfs.

WebDAV забезпечує такі стандартні для розподілених систем можливості, як блокування файлів, створення, перейменування, копіювання, видалення файлів, а так само підтримує такі просунуті можливості, як meta-дані файлу (більш детальна інформація про фото – заголовок, тема, творець, і т.д). В найближчому майбутньому WebDAV включатиме інтегровану підтримку управління версіями, яка спростить роботу багатьох користувачів над загальними файлами, відстежуючи зміни, авторів цих змін, і інші аспекти загального використання документа. Ці можливості контролю над версіями забезпечуються відповідно з протоколом DeltaV, який активно розробляється Робочою групою DeltaV – Підрозділом проектувальної групи Інтернету (IETF – Internet Engineering Task Force). Деякі проекти, наприклад, Subversion (WebDAV і DeltaV-заснована заміна стандарту CVS), вже доступні в альфа-версії. Subversion забезпечує систему контролю над версіями і збереження архіву файлу на основі бази даних, що має API мови C, і моделює версійні файлову систему, легко доступну через Web.

Висновок.

Багато IT-фахівці, відповідальні за обчислювальні системи підприємств, вже використовують мережеві файлові системи (NFS), або адаптери файлових систем (Samba, Netatalk, або Novell) для об’єднання своїх мереж. Більш нові і більш функціональні розподілені файлові системи – такі, як OpenAFS, Coda, InterMezzo і WebDAV – можуть стати альтернативою, тому що вони мають більш високу швидкодію, покращений захист, і додаткові можливості управління розділами і створення резервних копій.

Як ми побачимо в подальших статтях з цієї серії, сучасні розподілені файлові системи можуть бути легко інтегровані в існуючу мережу. Розподілені файлові системи можуть забезпечити додаткову гнучкість мережі, прискорити і спростити процес спільної роботи над файлами, зменшити витрати і спростити життя адміністраторам. Сучасні розподілені файлові системи дають нове життя слогану Sun Microsystems «The Network is the computer”, розширюючи файлову систему з комп’ютерної мережі.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*