Проектирование мастеров операций

OSzone.net » Microsoft » Windows Server 2008 » Администрирование » Проектирование мастеров операций
Автор: Дмитрий Буланов
Иcточник: dimanb.wordpress.com
Опубликована: 29.10.2010

Введение

*Как известно, доменные службы Active Directory – это центральное хранилище всех объектов и соответствующих им атрибутов в организации. База данных Active Directory имеет иерархическую структуру, и она способна вмещать миллионы объектов. По умолчанию в домене Active Directory все контроллеры доменов являются равноправными, то есть все контроллеры домена, кроме контроллеров домена только для чтения RODC могут записывать изменения в базу данных и реплицировать все эти изменения на другие контроллеры домена. Такая топология называется репликацией с множеством равноправных участников (Multimaster), которая хорошо работает для большинства операций, но определённые операции все же должны выполняться на отдельном уполномоченном сервере. В Active Directory, контролеры домена, которые выполняют особую роль, называются мастерами, или хозяевами операций. По сути, другие контроллеры домена также могут выполнять эту роль, но она назначается лишь одному контроллеру домена. На такие контроллеры домена добавляется гибкая роль FXMO (Flexible Single-Master Operations), которая произносится как fizz-mo. Некий ограниченный набор операций нельзя выполнять в различных местах одновременно, а можно лишь на одном контроллере в домене или лесу. Использование операций с единственным мастером предотвращает возникновение конфликтных ситуаций в тех случаях, когда мастер операции отключен. Мастер роли FSMO должен быть доступен в то время, когда на уровне домена или леса выполняются зависящие от него действия. Доменные службы Active Directory содержат пять ролей мастеров операций, которые могут быть определены во время установки контроллера домена Active Directory. Для всего леса определены две роли: мастер именования доменов и мастер схемы, а в каждом домене предусмотрены три роли: мастер относительного идентификатора RID, мастер инфраструктуры, а также эмулятор главного контроллера домена PDC. Стоит обратить внимание на то, что в каждом лесе может быть только одна из ролей леса мастеров операций. Причем, когда устанавливается первый контроллер домена Active Directory в лесе, ему будут добавлены все пять ролей, а при создании нового домена в существующем лесу, новому контроллеру домена присваиваются три роли уровня домена. Количество ролей FSMO в лесу и число потенциальных владельцев этих ролей можно рассчитать по формуле «(количество доменов * 3) + 2».

Например, если у вас есть лес Active Directory с тремя доменами, где есть дочерний и внучатый домен, то такой лес будет содержать 11 ролей FSMO, то есть: одного мастера схемы, одного мастера именования доменов, три эмулятора PDC (для основного, дочернего и внучатого домена по одной роли), три хозяина RID для каждого домена, а также три мастера инфраструктуры для каждого домена.

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

Роль мастера схемы

Контроллер домена, выполняющий роль мастера схемы, отвечает за внесение всех изменений в схему леса и является единственным контроллером домена, который располагает разрешением записи в схему каталогов. Все остальные контроллеры домена содержат только реплики схемы с правом только для чтения. Схема определяет каждый класс и атрибут, который может храниться в доменных службах Active Directory. Все объекты являются экземплярами класса, и, прежде чем создавать какой-либо объект, следует определить его класс. Для каждого леса существует лишь одна схема, и она реплицируется на каждый контроллер домена в лесе. Установки приложений, которые модифицируют схему и ручную модификацию схемы желательно выполнять на контроллере домена, который управляет данной ролью. Для внесения изменений администратор должен подключиться к мастеру схемы и должен входить в группу безопасности «Администраторы схемы». При попытке модификации схемы не на контроллере домена, выполняющем роль мастера схемы, действие обычно завершается отказом и вам нужно после внесения изменений в схеме переслать их на контроллер домена с ролью мастера схемы. После того как изменения в схему будут внесены, обновление схемы реплицируется на остальные контроллеры домена.

Роль мастера схемы присваивается первому контроллеру домена, который устанавливается в лесу и эту роль желательно размещать вместе с ролью мастера именования доменов на одном контроллере домена. Несмотря на рекомендации, вы можете в любое время переместить эту роль на любой контроллер домена при помощи оснастки «Схема Active Directory» или посредством утилиты командной строки Ntdsutil. Идентифицируется мастер схемы значением атрибута fSMORoleOwner корневого объекта раздела схемы.

Роль мастера именования доменов

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

По умолчанию, роль мастера именования доменов получает первый контроллер домена в новом лесу, но вы в любой момент можете переместить данную роль при помощи оснастки «Active Directory – домены и доверие» или утилиты командной строки Ntdsutil.exe. Не стоит забывать о том, что рекомендуется расположить на одном контроллере домена роли мастера схемы и мастера именования доменов. Контроллер домена, которому присвоена роль мастера именования доменов, должен одновременно являться сервером глобального каталога. В противном случае некоторые операции могут завершиться неудачно. Идентифицируется мастер схемы значением атрибута fSMORoleOwner в контейнере Partitions.

Роль мастера RID

Мастер относительных идентификаторов (RID) – это роль мастера операций для домена, которая используется для управления пулом идентификаторов RID с целью генерирования идентификаторов безопасности (SID) для таких принципалов безопасности как пользователи, группы и компьютеры. Идентификатор SID принципала безопасности должен быть уникальным для всего домена, поэтому каждому принципалу безопасности присваивается уникальный идентификатор безопасности SID, который содержит идентификатор домена и относительный идентификатор RID, который является уникальным для каждого принципала безопасности. Во всех идентификаторах SID присутствуют четыре различных элемента. Например, элементы идентификатора S-1-5-Y1-Y2-Y3-Y4 предоставлены в следующей таблице:

Элемент идентификатора SIDОписание
S1Указывает ревизию SID. В настоящее время для SID используется только одна ревизия
5Указывает центр выдачи принципала безопасности. Значение 5 всегда указывается для доменов Windows NT, Windows 2000, Windows 2003, Windows 2008 и Windows 2008 R2.
Y1-Y2-Y3Часть идентификатора SID домена. Для принципалов безопасности, созданных в домене этот элемент идентификатора идентичен
Y4Относительный идентификатор (RID) для домена, который представляет имя пользователя или группы. Этот элемент генерируется из пула RID на контроллере домена во время создания объекта

Так как принципалы безопасности может создавать любой контроллер домена, необходим механизм, гарантирующий уникальность SID-идентификаторов, генерируемых контроллером домена и поэтому мастер RID следит за тем, чтобы два контроллера домена не назначали одинаковые идентификаторы RID. Мастер RID присваивает блок относительных идентификаторов RID, которые называются пулом RID, каждому контроллеру в домене. Другими словами, мастер операций RID отвечает за поддержку пула относительных идентификаторов для использования контроллеров домена в домене и предоставления групп относительных идентификаторов для каждого контроллера домена. Когда к домену добавляется новый контроллер домена, мастер RID назначает этому контроллеру домена пул из 500 относительных запросов RID. Каждый раз, когда на контроллере домена создается новый принципал безопасности, для присвоения идентификатора новому объекту, контроллер домена назначает относительный идентификатор из своего пула. Когда число относительных идентификаторов RID в этом RID-пуле на любом контроллере домена опускается ниже 100, мастер RID выполняет запрос еще одного блока RID. Выполнив запрос, мастер RID назначает контроллеру домена еще один пул из 500 относительных идентификаторов RID.

На самом деле мастер RID не ведет счет номеров пула, а обслуживает высшее значение последнего выделенного диапазона. При получении нового запроса, увеличивается значение нового пула на единицу и 499 новых значений. После этого два значения отправляются запрашиваемому контроллеру домена для использования новых относительных идентификаторов RID. Если локальный пул RID контроллера домена пуст или мастер RID в течение некоторого времени недоступен, процесс создания учетных записей на некоторых контроллерах домена может прерваться и в журнале событий этого контроллера домена будет записано событие с кодом 16645. Этот код ошибки указывает на то, что присвоен максимальный идентификатор учетной записи из выделенных на контроллер домена и контроллер домена не смог получить новый пул идентификаторов от мастера RID. Таким же образом, при добавлении нового объекта в домен будет создано событие с кодом 16650, указывающее на то, что объект не может быть создан, так как служба каталогов не смогла выделить относительный идентификатор. Механизм запрашивания нового блока идентификаторов RID предназначен для предотвращения таких прерываний, поскольку запрос выполняется перед исчерпыванием всех доступных RID идентификаторов в пуле. Чтобы включить процесс создания учетных записей заново, нужно либо подключить к сети контролер домена, который управляет ролью мастера RID, либо переместить эту роль еще на один контроллер домена.

Миграция объектов Active Directory из одного домена в другой также требует наличия мастера RID. Вы можете перемещать объект из одного домена в другой только в случае доступности мастера RID. Мастер RID при миграции объекта предотвращает создание двух объектов в разных доменах с одним и тем же идентификатором. По умолчанию, роль мастера RID получает первый контроллер домена, установленный в лесе. Вы можете в любое время переместить эту роль при помощи оснастки «Active Directory – пользователи и компьютеры» или средствами утилиты Ntdsutil.exe. Мастер RID идентифицируется значением атрибута fSMORoleOwner в объекте класса rIDManager в разделе Domain.

Роль эмулятора PDC

Эмулятор PDC (главного контроллера домена – Primary Domain Controller) выполняет функции основного контроллера домена для обеспечения совместимости с операционными системами ниже Windows 2000. Во времена контроллеров домена Windows NT 4.0 изменения в каталог могли вносить лишь главные контроллера домена PDC. Прежние инструменты, клиенты и утилиты, поддерживающие Windows NT 4.0, не рассчитаны на то, что все контроллеры домена Active Directory могут выполнять запись в каталог, и поэтому требуют подключения к PDC. Контроллер домена с ролью PDC-эмулятора регистрирует себя как главный контроллер домена PRC, чтобы низкоуровневые приложения могли локализовать пишущий контроллер домена. Несмотря на то, что в наше время сервера и клиентские компьютеры с операционными системами ниже Windows 2000 встретить практически невозможно, эмулятор PDC все еще остается важнейшей ролью мастеров операций. Эмулятор PDC выполняет следующие важные функции:

По умолчанию, роль мастера эмулятора PDC получает первый контроллер домена, установленный в лесе. Вы можете в любое время переместить эту роль при помощи оснастки «Active Directory – пользователи и компьютеры» или средствами утилиты Ntdsutil.exe. Мастер эмулятора PDC идентифицируется значением атрибута fSMORoleOwner в объекте класса rIDManager в корневом объекте раздела Domain.

Роль мастера инфраструктуры

В организациях, основанных на множестве доменов, объекты в одних доменах часто ссылаются на объекты в других. Мастер инфраструктуры подобен устройству, которое отслеживает членов группы из доменов. Мастер инфраструктуры отвечает за обновление ссылок «группа - пользователь» между доменами, тем самым обеспечивая отражение изменений имен объектов в информации о членствах в группах, локализованных в домене. Мастер инфраструктуры поддерживает обновляемый список таких ссылок, а затем реплицирует эту информацию на все контроллеры в домене. В том случае, если мастер инфраструктуры недоступен, ссылки «группа - пользователь» между доменами не будут обновляться. Периодически мастер инфраструктуры сканирует учетные записи домена и проверяет членство в группах. Если учетная запись пользователя перемещается на новый домен, мастер инфраструктуры идентифицирует новый домен учетной записи пользователя и соответствующим образом обновляет группы.

Стоит обратить внимание на то, что роль мастера инфраструктуры не должна выполняться контролером домена, который является сервером глобального каталога. В противном случае мастер инфраструктуры не будет обновлять сведения об объектах, так как он не содержит ссылок на объекты, которые не хранит. Это обусловливается тем, что сервер глобального каталога хранит частичные реплики всех объектов в лесу. В результате междоменные объектные ссылки в этом домене обновляться не будут, а в журнале событий данного контроллера домена появится соответствующее предупреждение. По умолчанию, роль мастера инфраструктуры получает первый контроллер домена, установленный в лесе. Вы можете в любое время переместить эту роль при помощи оснастки «Active Directory – пользователи и компьютеры» или средствами утилиты Ntdsutil.exe. Мастер инфраструктуры идентифицируется значением атрибута fSMORoleOwner в контейнере Infrastructure в разделе Domain.

Размещение и перемещение ролей мастеров операций

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

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


Ссылка: http://www.oszone.net/13639/fsmo