Иван Коробко
Проектируем систему обмена данными
В любой организации помимо документооборота присутствует файлооборот. Как сделать его удобным и функциональным?
Создание системы обмена данными, особенно в крупных организациях, – сложная и трудоемкая задача, требующая учета специфики фирмы. В основе проектирования любой системы обмена лежат одни и те же принципы, используются одни и те же технологии, с которыми вы познакомитесь, прочитав статью.
Технологии для проектирования системы обмена данными
При создании файловой системы стоит обратить внимание на две технологии:
- DFS (Distributed File System, распределенная файловая система). Представляет собой иерархическую файловую систему, которая организует папки, опубликованные в сети на различных серверах, в иерархическую древовидную структуру.
- ABE (Access-based Enumerator). Эта технология впервые была использована в Windows 2003 Server SP1. С ее помощью можно скрывать папки, к которым пользователь не имеет права доступа. Обратите внимание, что это не значит, что на папку устанавливается атрибут «скрытый». Для пользователя, который не имеет прав, как минимум, на просмотр папки, она исчезает, хотя физически она присутствует на сервере и видна другим пользователям.
Использование ABE совместно с DFS позволит сформировать индивидуальное окружение для каждого пользователя, назначая нужные права доступа на объекты, тем самым обеспечив сотрудникам быстрый поиск нужной информации в сети.
DFS
Поскольку технология DFS не нова и продолжает развиваться, то остановимся более подробно на последних нововведениях в DFS.
В бытность Windows NT 4 и Windows 2000 распределенная файловая система обладала ограниченными возможностями.
На одном сервере мог существовать только один доменный корень. Поэтому максимальное количество корней было ограничено числом используемых серверов.
Говорить о реализации отказоустойчивости и создании сложной системы обмена на базе DFS не приходилось.
С появлением Windows 2003 Server ситуация изменилась. Теперь на одном сервере можно создать сколь угодно много доменных корней DFS.
Это позволило для каждого сотрудника сформировать персональное сетевое окружение. Кроме того, была реализована система отказоустойчивости: появилась возможность реплицировать доменные корни по одной из выбранных схем.
В Windows NT/2000 DFS можно было управлять с помощью двух утилит:
- DFSUtil – служащей для управления доменными корнями;
- DFSCmd – служащей для управления ссылками.
Утилита Distributed File System с графическим интерфейсом показана на рис. 1.
Рисунок 1. Внешний вид утилит Distributed File System
В Windows 2003 Server появилась еще одна утилита управления DFS: DFS Management (см. рис. 2).
Рисунок 2. Внешний вид утилит DFS Management
По сравнению с предшественником, который также присутствует в Administrative Tools в Control Panel, новая утилита позволяет удалять несколько пользователей одновременно, а также несколько выбранных ссылок (links). Теперь список всех линков выводится полностью, тем самым испытываемые в предыдущей версии неудобства ликвидированы.
Также в новой утилите добавлена новая схема репликации DFS.
Структура DFS
Древовидная структура DFS-томов включает в себя корень и ссылки.
На Windows-сервере можно сконфигурировать два типа корней DFS (Root) – изолированный (stand alone) и доменный (domain).
Принципиальная разница между ними заключается в том, что с помощью доменного корня может быть реализована система отказоустойчивости, построенная на репликации между серверами.
На практике чаще всего используют доменный корень.
Репликация DFS
Рассмотрим механизм репликации для обеих утилит: Distributed File System и DFS Management. Необходимо помнить, что реплицировать можно только доменные корни.
Репликация с помощью Distributed File System
Суть репликации заключается в том, что нужно создать еще одну ссылку на доменный корень (root target) на разные серверы (см. рис. 3).
Рисунок 3. Идея репликации
Для этого необходимо сделать активным реплицируемый корень. Для этого в меню «Action» выбрать «New Root Target» или в контекстном меню корня (см. рис. 4).
Рисунок 4. Создание второй ссылки на корень
После этого запустится мастер создания DFS-корня в урезанном варианте: в нем предоставляется возможность изменить только имя сервера; сетевое имя папки уже назначено – оно берется из первой ссылки.
После того как будет добавлена еще одна ссылка на доменный корень, в контекстном меню корня станет доступен подпункт Configure Replication, который запускает мастер настройки репликации (Replication Wizard).
Настройка репликации осуществляется в несколько этапов:
- укажите сервер, который будет реплицироваться в первую очередь;
- выберите одну из топологий репликации: кольцо (ring), узлы (hub), смешанная (mesh), настраиваемая схема репликации серверов (custom).
После завершения работы мастера напротив доменного корня появляется характерный значок (см. рис. 1), указывающий на репликацию данных между серверами.
Репликация с помощью DFS Replication
В новой утилите был полностью пересмотрен механизм репликации. Для его реализации реплицируемые серверы должны быть полностью идентичны (одинаковые версии пакетов исправлений).
Механизм репликации вынесен в отдельную сущность (см. рис. 2). Появилась дополнительная роль у реплицируемых объектов. Если в предыдущей утилите репликантами выступали только доменные корни, то теперь это могут быть серверы.
В любом случае серверы объединяются в группу. Репликация осуществляется по одной из указанных топологий.
На первом этапе работы мастера необходимо выбрать тип репликации: Multipurpose Replication Group (репликация корня между двумя и более серверами) или Repliction Group of Data Colletion (репликация DFS между серверами). Создается идентичная копия DFS между двумя серверами (mirror).
На следующем шаге создается группа: задаются имя группы и ее описание. Затем мастер просит создать список серверов, которые будут участвовать в репликации.
На четвертом этапе мастер запрашивает имя сервера, с которого будет начата репликация.
На заключительном этапе выбирают топологию репликации.
Необходимо сказать, что новая утилита, повторяя в себе функционал первой и исправляя существовавшие ошибки, имеет принципиальные отличия: изменение подхода к репликации DFS.
ABE
Технология позволяет скрывать папки в сетевом окружении для тех, у кого к ним нет доступа. До появления этой технологии в Windows 2003 SP1 такая возможность была реализована только в Novell NetWare.
Новая технология позволяет:
- Повысить уровень защиты папок. Пользователь может увидеть только те ресурсы, на которые ему предоставлены права. Ведь зачастую название документа несет в себе очень важную информацию.
- Обеспечить безболезненную миграцию сетевых ресурсов.
- Упрощает поиск необходимых документов, поскольку сотрудник видит только доступные для него документы.
ABE отображает папки в сетевом окружении, основываясь на индивидуальных правах доступа пользователя к этим папкам (ACL). Установка ABE на сервер проходит быстро и не представляет никаких трудностей. Во время процесса инсталляции можно указать способ интеграции технологии в ОС (см. рис. 5): для всех папок, или конкретные папки будут указаны позже.
Рисунок 5. Интеграции ABE в ОС
Установка ABE
На сайте компании Microsoft доступна для загрузки ABEUI.msi версии 1.0.424.5 для Windows 2003 SP1 [6], функционирующей на базе одного из трех типов систем: AMD64, I386, IA64. Выбрав необходимый тип платформы, и загрузив файл из сети Интернет, приступим к установке ABE.
Работа мастера состоит из нескольких шагов. На первом шаге предстоит принять условия лицензионного соглашения. В противном случае, продолжение процесса установки будет невозможно.
На следующем этапе необходимо указать каталог, в который будет установлена утилита (см. рис. 6). По умолчанию предлагается путь C:Program FilesMicrosoft CorporationWindows Server 2003 Access-based Enumeration.
Рисунок 6. Установка ABE. Выбор папки для установки
На последнем, третьем этапе установки необходимо выбрать, будет ли включен ABE сразу для всех папок, предоставленных в сетевое окружение на сервере или каждая папка будет сконфигурирована отдельно (см. рис. 7).
Рисунок 7. Установка ABE. Настройка утилиты
Ограничения технологии ABE
При ее использовании на практике были обнаружены следующие ограничения:
- Нельзя скрыть папки верхнего уровня (см. рис. 8). Можно скрывать только папки второго и последующего уровней.
- Установка возможна только на Windows Server 2003 SP1.
Рисунок 8. Папки верхнего уровня
Замечание: к сожалению, о существующих ограничениях технологии ABE на сайте Microsoft информация отсутствует.
Способы настройки ABE
Существует два способа настроить ABE для папки:
- графический интерфейс;
- утилита командной строки.
Замечание: помните, что при удалении ABE все настройки сохраняются, поскольку ABE – лишь средство администрирования, а не сам функционал.
Настройка ABE с помощью графического интерфейса заключается во включении или отключении данного режима в свойствах папки, которая предоставлена в сетевой доступ (см. рис. 5).
Настройка ABE с помощью командной строки осуществляется с использованием утилиты abecmd, которая находится в каталоге C:\WINDOWS\system32.
Команда имеет следующие аргументы:
- /enable – включает ABE на сетевом ресурсе. Если дополнительно указан ключ /all, то осуществляется включение ABE на всех сетевых ресурсах данного сервера.
- /disable – выключает ABE на сетевом ресурсе. Если дополнительно указан ключ /all, то осуществляется выключение ABE на всех сетевых ресурсах данного сервера.
- /server – позволяет осуществлять управление ABE на удаленном сервере. Для того чтобы эта команда работала, необходима предустановка ABE на удаленном сервере под управлением Windows Server 2003 SP1.
- /all – осуществляется управление всем сетевыми ресурсами на сервере.
- <ShareName> – имя папки, предоставленной в сетевое использование, для которой осуществляется настройка ABE.
Пример командной строки, которая включает ABE на удаленном сервере MOON для сетевой папки TEST, расположенной на нем:
AbeCmd /enable /server MOON "TEST"
Недостаток технологии ABE
Технология работает очень хорошо. Единственным ее недостатком является небольшая потеря производительности. Чем больше объектов в анализируемой папке, тем меньше скорость чтения данных. Microsoft заявляет, что при наличии 15000 файлов осуществляется падение скорости открытия папки на 1-3 секунды. Чтобы избежать этого, рекомендуется создавать больше папок, делая файловую структуру анализируемой папки иерархичной. При таком поведении падение скорости при открытии папки незаметно.
Заключение
Совместное использование технологий ABE и DFS дает возможность создать виртуальную систему предоставления данных каждому пользователю и одновременно реализовать отказоустойчивость.С другой стороны, предлагаемая система обмена позволяет повысить защиту хранилища, поскольку пользователь не знает физического местоположения того или иного ресурса. В дополнение к этому, вы можете создать в DFS древовидную систему, в которой могут быть вложенные друг в друга DFS-корни. Все эти преимущества позволят построить вам желаемую систему обмена.
- Distributed File System Technology Center – http://www.microsoft.com/windowsserver2003/technologies/storage/dfs/default.mspx.
- Step-by-Step Guide to Distributed File System (Dfs) – http://www.microsoft.com/technet/prodtechnol/windows2000serv/howto/dfsguide.mspx.
- Distributed File System – http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/default.mspx?mfr=true.
- KB 812487 «Overview of DFS in Windows 2000» – http://support.microsoft.com/kb/812487.
- Windows Server 2003 Access-based Enumeration – http://www.microsoft.com/windowsserver2003/techinfo/overview/abe.mspx.
- ABEUI utility – http://www.microsoft.com/downloads/details.aspx?FamilyID=04a563d9-78d9-4342-a485-b030ac442084&DisplayLang=en.
- Access-based Enumeration – http://technet2.microsoft.com/windowsserver/en/library/f04862a9-3e37-4f8c-ba87-917f4fb5b42c1033.mspx?mfr=true.
- KB907458 «How to implement Windows Server 2003 Access-based Enumeration in a DFS environment» – http://support.microsoft.com/kb/907458.