Страница поста от канала Лига сисадминов

Лига сисадминов
24.09.2020 11:09
#ит_статьи #dfs Distributed File System. Архитектура и базовые понятия. Распределенная файловая система (Distributed File System, DFS) — серверная технология Microsoft, предназначенная для упрощения доступа к общим файловым ресурсам, распределенным по сети. С помощью DFS можно объединять в единую логическую структуру файловые ресурсы, физически находящиеся на различных серверах, а также производить между ними репликацию. DFS — технология не новая древняя как говно мамонта, она известна еще со времен Windows NT. Хотя термины DFS и Distributed File System появились несколько позднее и относятся к Windows 2000 и 2003. А в Windows 2003 R2 компания Microsoft представила новое пространство DFS-имен, а также улучшенный механизм репликации. Новое пространство DFS-имен называется DFS-N (DFS-Namespace), а новый механизм репликации — DFS-R (DFS-Replication). Именно эти две составляющих и образуют на данный момент функционал DFS. При правильном использовании DFS позволяет решить огромное количество задач. Но технология довольно специфическая, и если не учитывать эту специфику, то можно получить кучу проблем. Поэтому, не откладывая в долгий ящик, приступим к изучению особенностей DFS. Начнем с базовых понятий. Базовые понятия https://telegra.ph/Distributed-File-System-Arhitektura-i-bazovye-ponyatiya-Bazovye-ponyatiya-09-24 Физическая структура https://telegra.ph/Distributed-File-System-Arhitektura-i-bazovye-ponyatiya-Fizicheskaya-struktura-09-24

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Distributed File System. Архитектура и базовые понятия. Базовые понятия

Базовые понятия

Чтобы понимать, как работает пространство имен DFS, разберем основные понятия DFS на следующем примере.

общая схема работы DFS

DFS namespace (Пространство имен DFS)

Единый виртуальный каталог, содержащий ссылки на общие папки, расположенные на разных файловых серверах. Пространство имен состоит из корня (root), ссылок (folders) и целевых объектов (folder targets). Пространство имен DFS может быть двух типов: автономное (Standalone) и доменное (Domain-based).

У Standalone DFS namespace сведения о конфигурации хранятся локально на корневом сервере, в системном реестре. Путь для доступа к корневому каталогу или ссылке начинается с имени корневого сервера. Автономное пространство имен располагается только на одном сервере и не является отказоустойчивым. Если корневой сервер недоступен, все пространство имен DFS также становится недоступным.

У Domain-based DFS namespace конфигурация хранится в Active Directory. Путь для доступа к корневому каталогу или ссылке начинается с имени домена. Несмотря на то, что в нашем примере показан только один сервер пространства имен, доменное пространство имен можно размещать на нескольких серверах, чтобы повысить доступность пространства имен. Это позволяет обеспечить отказоустойчивость и распределить нагрузку между серверами.

Namespace root (Корень пространства имен)

Базовая или начальная точка, от которой начинается отсчет пространства имен. В зависимости от типа корень доступен по адресу \\ServerName\RootName (Standalone) или \\DomainName\RootName (Domain-based). В нашем примере корень DFS доступен по адресу \\Contoso\Public.

Namespace server (Сервер пространства имен)

Сервер пространства имен (или корневой сервер) — физический сервер, на котором содержится пространство имен DFS. Сервер пространства имен может быть как рядовым сервером, на котором установлена роль DFS Namespace, так и контроллером домена.

Folder (Папка)

Ссылка в пространстве имен DFS, указывающая на целевую папку (или папки). Папки без конечных объектов (напр. папка Software) образуют структуру и иерархию в пространстве имен, а папки с целевыми объектами-папками (напр. папка Training Guides) предоставляют пользователям доступ к фактическому содержимому. Когда пользователь открывает папку, содержащую конечные объекты-папки в пространстве имен, клиентский компьютер получает направление (referral), которое прозрачно перенаправляет клиентский компьютер к одному из целевых объектов.

Folder targets (Целевой объект-папка)

Ссылка на общий файловый ресурс, находящийся на определенном файловом сервере и доступный по пути UNC (Universal Naming Convention). Например общая папка \\FS2\Training на сервере FS2.

Именно целевой объект-папка является конечной целью пользователя, поскольку в нем находятся нужные ему данные. Одна ссылка может указывать как на один, так и на несколько целевых объектов. К примеру, папка с именем Training Guides имеет один целевой объект-папку, а папке Tools соответствуют два целевых объекта на разных серверах. И при обращении к папке Tools пользователь, в зависимости от своего местонахождения, будет перенаправляться в общую папку \\FS1\Tools или \\FS2\Tools.

Как видно из примера, распределенная файловая система позволяет группировать общие папки, расположенные на различных физических серверах, подключая их к общему пространству имен. С помощью DFS администратор выбирает, какие общие папки должны быть представлены в пространстве имен, формирует иерархию, в которой эти папки отображаются, и определяет имена, отображаемые общими папками в пространстве имен.

Когда пользователь просматривает пространство имен, папки для него отображаются так, как будто все они находятся на одном большом диске большой, и он может свободно перемещаться по ним без необходимости знать имена серверов или адреса общих папок, в которых хранятся данные. Для пользователя весь этот процесс происходит абсолютно прозрачно.

Роли клиента и сервера

Помимо основных понятий DFS важно понимать роли клиента и сервера, участвующие в DFS.

Клиенты DFS

Клиент DFS — это компьютер, использующийся для доступа к пространству имен. Как правило, клиентами являются пользовательские рабочие станции, хотя и компьютеры, работающие под управлением серверных операционных систем Windows, также могут выступать в роли клиента DFS.

Корневые сервера

Корневые сервера, также называемые корневыми целями (Root targets) — физические сервера, на которых хранятся доменные или автономные пространства имен. В качестве корневого сервера DFS может выступать компьютер с серверной ОС, клиентские операционные системы могут быть только клиентами. Корневые серверы играют в DFS следующие роли:

• Для автономных пространств имен метаданные файловой системы DFS хранятся в реестре корневых серверов. Метаданные DFS состоят из информации обо всем пространстве имен, включая корневой каталог, корневые целевые объекты, ссылки, целевые объекты ссылок и параметры. Для доменных пространств имен метаданные DFS хранятся в Active Directory, однако на корневых серверах метаданные DFS также хранятся в оперативной памяти.

• На корневых серверах размещаются корневые папки (root folders) и подпапки (folders), соответствующие ссылкам в пространстве имен DFS.

• Когда клиент пытается получить доступ к корневому каталогу или ссылке в автономном пространстве имен или ссылке в доменном пространстве имен, корневой сервер предоставляет клиенту ссылку.

Контроллеры домена

Контроллеры домена играют важнейшую роль в функционировании DFS:

• Клиенты DFS обращаются к контроллерам домена, чтобы получить список доверенных доменов и контроллеров домена для этих доменов.

• Когда клиент DFS впервые пытается получить доступ к доменному пространству имен DFS, контроллер домена предоставляет клиенту список корневых серверов. Этот список корневых серверов известен как корневое направление (root referral).

• Контроллеры домена хранят метаданные доменных пространств имен. По умолчанию корневые серверы, на которых размещаются доменные пространства имен, периодически опрашивают контроллер домена с ролью PDC Emulator, чтобы получить обновленную версию метаданных DFS и сохранить эти метаданные в памяти.

• Всякий раз, когда администратор вносит изменения в доменное пространство имен DFS, это изменение выполняется на контроллере домена с ролью PDC Emulator, а затем с помощью репликацию Active Directory реплицируется на другие контроллеры домена.

• На контроллерах домена хранится информация о сайтах Active Directory и межсайтовых связях (site links). DFS использует эту информацию при сортировке целевых объектов в порядке наименьшей стоимости. Так в нашем примере папка Tools находится на двух разных серверах, расположенных в двух разных сайтах (London и New York). В зависимости от того, где находится клиент, он получит ссылку на ближайший к нему сервер.

Целевые объекты-папки

Целевые объекты-папки являются ссылками на общие папки (или подпапки внутри общих папок) на файловом сервере. В роли источника ссылки может выступать любая ОС с сетевой файловой системой, к которой можно обратиться через путь UNC, например Windows (SMB) или Linux (NFS). Путь UNC, указанный в ссылке, может вести к общим папкам в любой рабочей группе, общим папкам в том же домене, что и пространство имен, общим папкам в доверенных доменах и общим папкам в доверенных лесах. Также целевой объект может быть путем DFS в другом пространстве имен.

Сами общие папки, указанные в качестве целевых объектов, не имеют специальных параметров, указывающих на то, что они являются частью пространства имен DFS. Все существующие разрешения общей папки и разрешения NTFS на общую папку по-прежнему применяются, когда пользователи получают доступ к общей папке через пространство имен.

Архитектура DFS

С ролями все более менее понятно, переходим к их взаимодействию.

Компоненты архитектуры DFS на клиентах DFS, корневых серверах и контроллерах домена, а также их взаимодействие показаны на следующих рисунках.

На первом рисунке архитектура DFS контроллера домена упрощена, чтобы показать только объект DFS.

схема взаимодействия между клиентом и корневым сервером

На втором рисунке показана архитектура DFS контроллера домена и упрощенное представление архитектуры клиента и корневого сервера DFS.

Обратите внимание, что контроллеры домена и корневые сервера используют похожую архитектуру DFS. Это связано с тем, что контроллеры домена играют определенную роль в направлении клиентских компьютеров к корневым серверам домена. Кроме того, контроллеры домена могут размещать пространства имен и выполнять роль корневого сервера. В этом случае контроллер домена также размещает кэш метаданных DFS (независимо от типа пространства имен) и автономные метаданные DFS в своем реестре (для автономных пространств имен).

схема взаимодействия клиентом, корневым сервером и контроллером домена

Dfssvc.exe

Служба DFS, является ключевым компонентом архитектуры DFS, работает на корневых серверах и контроллерах домена. Основными функциями службы DFS являются обработка ссылок, управление пространствами имен и взаимодействие с драйвером DFS.

DFS Metadata

Метаданные DFS — cведения о пространстве имен DFS. Состоят из информации обо всем пространстве имен, включая корневой каталог, корневые целевые объекты, ссылки, целевые объекты ссылок и параметры. Для доменного DFS метаданные хранятся в Active Directory, в специальном объекте DFS, соответствующем пространству имен. Для автономного пространства имен DFS метаданные хранятся в реестре корневого сервера.

DFS Metadata cache

Кэш метаданных DFS — копия метаданных DFS в оперативной памяти, хранящаяся в Dfssvc.exe на корневых серверах.

Domain-based root referral cache and site caches

Кэш доменных корневых ссылок и сведений о сайте. Содержит копии доменных корневых ссылок и сведений о сайте, хранящиеся в оперативной памяти сервера. Позволяет службе DFS осуществлять быстрый поиск.

Dfs.sys

Драйвер DFS, имеется только в серверных ОС Windows. Он работает в режиме ядра (Kernel Mode) и служит для перенаправления клиентских запросов к службе DFS, работающей в пользовательском режиме (User Mode). Также драйвер обрабатывает ссылки DFS, когда они встречаются во время доступа к файловой системе.

Srv.sys

Драйвер службы SMB. В архитектуре DFS служит для передачи запросов от клиентов DFS к драйверу Dfs.sys.

I/O Manager

Менеджер ввода-вывода отвечает за обработку операций с файлами при перенаправлении UNC-путей в Mup.sys. Является частью ядра ядра (Ntoskrnl.exe) операционной системы.

Mup.sys

Mup (multiple UNC provider) в переводе означает множественный поставщик путей UNC. Mup.sys является сетевым драйвером, который обрабатывает запросы ввода-вывода (I/O) для файла или устройства, доступного по пути UNC. Если UNC путь является ссылкой DFS, Mup.sys разрешает его в физический путь UNC. После разрешения пути Mup.sys выбирает локальный перенаправитель, который будет обрабатывать путь UNC.

Mrxsmb.sys

Для реализации службы предоставления общего доступа в Windows используется протокол CIFS (Common Internet File System). Перенаправитель Mrxsmb.sys обеспечивает взаимодействие между корневыми серверами, контроллерами домена и файловыми серверами Windows, использующими протокол CIFS.

Nwrdr.sys и Mrxdav.sys

Перенаправители для Netware и Web Distributed Authoring and Versioning (WebDAV), соответственно.

Workstation service (Wkssvc.dll)

Передает информацию о контроллере домена и доменном имени в Mup.sys. Эту информацию Mup.sys использует для создания ссылок в доменном кэше клиента. Также Workstation service является компонентом клиента SMB и обеспечивает управление Mrxsmb.sys.

Ntlanman.dll

Сетевой поставщик Windows. Служит для создания и поддержки клиентских сетевых подключений к удаленным файловым ресурсам.

Referral cache

Кэш ссылок, хранит ссылки, полученные клиентом при обращении к пространству имен. Кэш ссылок (также известный как кэш PKT) поддерживается в Mup.sys.

Domain cache

Доменный кэш содержит ссылки на доменные имена и ссылки на контроллеры домена, которые хранятся в памяти на каждом клиентском компьютере. В кэше домена хранятся NetBIOS-и DNS-доменные имена для локального домена, все доверенные домены в лесу, домены в доверенных лесах и сопоставления доменных имен с контроллерами домена. Домен кэша (SPC кэш) также хранится в Mup.sys.

DFS Tools

Основные инструменты для администрирования пространства имен DFS. Сюда входит графическая оснастка Dfsgui.msc, утилита командной строки Dfscmd.exe и утилита Dfsutil.exe, используемая для выполнения расширенных задач DFS.

Netapi32.dll

Содержит API NetDFSxxx, используемые для администрирования удаленных корневых серверов. Также содержит API, используемые для просмотра и очистки кэша ссылок (кэш PKT), кэша домена (кэш SPC) и кэша MUP на клиентах.


Вы не ввели Email
Вы не ввели текст комментария

Возможно Вас заинтересует еще и это: