Записи с меткой «dcpromo»

Недавно меня попросили рассказать, что как и в какой последовательности сделать для того, чтобы перенести роль контроллера домена с одного сервера на другой. Именно этому посвящена статья.

К чему сводится развёртывание второго контроллера домена в существующем домене и перенос всей структуры службы каталогов на него:

  1. Установка операционной системы (Microsoft Windows Server 200x)
  2. Присоединение сервера, в качестве рядового  сервера в существующий домен
  3. Установка службы каталогов и DNS-сервера на сервер
  4. Перенос ролей хозяев операций (FSMO)
  5. Удаление старого контроллера домена из структуры

 

Подробного описания п.1 и п.2 приводить не имеет смысла, т.к. это процедура достаточно типовая, и производится очень часто.

Для записи примеров, я использовал 2 виртуальные машины, развернутые в Microsoft VirtualPC 2007. На одной из них уже установлена роль контроллера домена (domain.local), служба DNS (хранящая информацию о зоне в службе каталогов (рис.1)). Вторая – рядовой сервер, член существующего домена.

Чтобы проверить где хранятся зоны, необходимо на контроллере домена открыть консоль управления DNS-сервером (Пуск –> Выполнить –> dnsmgmt.msc), развернуть зоны прямого просмотра, щелкнуть правой кнопкой по зоне, выбрать Свойства (Properties). На вкладке Основное (General) в разделе Тип (Type) должно быть указано Интегрировано в Active Directory (Active Directory-Integrating)

Zone_Store

Рисунок 1. Хранение зоны

Настройки сетевых интерфейсов показаны на рисунках 2 и 3. Обращаю внимание, что оба адреса статические.

IPsettinsDC

IPsettinsServer

Рисунок 2. Настройки сетевого интерфейса на контроллере домена

Рисунок 3. Настройки сетевого интерфейса на рядовом сервере

 

Итак, приступаем к п.3. Разворачиваем службу каталогов (видеофрагмент 1) и сервер DNS (видеофрагмент 2) на рядовом сервере

Видеофрагмент 1. Установка второго контроллера домена в существующий домен

 

Видеофрагмент 2. Установка DNS сервера на новый контроллер домена существующего домена

 

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

Уровень ЛЕСА — Единственные для леса роли
Хозяин схемы (Schema master FSMO).
В каждом лесу существует один хозяин схемы. Эта роль необходима для расширения схемы леса Active Directory или для выполнения команды adprep /domainprep.

Хозяин именования домена(Domain naming master FSMO). В каждом лесу существует один хозяин именования домена. Эта роль необходима для добавления или удаления доменов или разделов приложений в лесу.

Уровень ДОМЕНА — Единственные для домена роли
Хозяин RID (RID Master FSMO).
В каждом домене существует один хозяин RID. Эта роль необходима для выделения идентификаторов RID, которые необходимы новым или существующим контроллерам доменов учетных записей пользователей, учетных записей компьютеров, а также групп безопасности. 

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

Хозяин инфраструктуры (Infrastructure Master). В каждом домене существует один хозяин инфраструктуры. Эта роль необходима контроллерам доменов для успешного выполнения команды adprep /forestprep, а также для обновления атрибутов идентификаторов безопасности (SID) и различающихся атрибутов имен для объектов, на которые указывают междоменные ссылки.

Существует еще важная шестая роль контроллера домена – это хранение глобального каталога. Такую роль может иметь любой контроллер в домене, т.е. она не относится к единственно возможной ни для леса, ни для домена. Другими словами Global Catalog это не FSMO – flexible single master operation

Вариантов их переноса существует два: с помощью команды ntdsutil и с помощью оснасток.

Для переноса ролей с помощью команды ntdsutil необходимо совершить следующие действия:

Запускаем команду ntdsutil.
ntdsutil: roles
fsmo maintenance: connection
server connections: connect to server имя_сервера
Имя_сервера — это имя контроллера домена, которому назначается роль FSMO.
Binding to имя_сервера
Connected to имя_сервера using credentials of locally logged on user
server connection: quit
fsmo maintenance transfer schema master
fsmo maintenance transfer domain naming master
fsmo maintenance transfer PDC
fsmo maintenance transfer RID master
fsmo maintenance transfer infrastructure master
fsmo maintenance quit
ntdsutil: quit
Для захвата ролей, при не доступном владельце контролера домена, вместо transfer пишем seize.

Перенос хозяев операций с помощью оснасток рассмотрим в третьем видеофрагменте:

Видеофрагмент 3. Перенос хозяев операций на новый контроллер домена

 

После переноса всех ролей необходимо проверить расположение текущих ролей командной

netdom query fsmo

Результат команды должен выглядеть следующим образом:

FSMO

Чтобы netdom стал доступным необходима установка support tools, который есть на установочном диске D:\SUPPORT\TOOLS\SUPTOOLS.MSI

После этого мы можем удалить со старого контролера домена службу каталогов и службу DNS, тем самым понизив его до рядового сервера, провести на нем какие-либо технические работы либо вовсе списать. Однако настоятельно рекомендую после проведения ТО, снова установит на сервер роль  контроллера домена, т.к. проблем, которые можно огрести в случае падения единственного контроллера домена это поможет избежать с вероятностью 100%. После удаления службы DNS не необходимо изменит DNS сервер в настройках сетевых подключений всех серверов и рабочих станций. Там где эти настройки не автоматические – заменит вручную, там где настройки сети получают по DHCP – в настройках DHCP-сервера.

Видеофрагмент 4. Удаление контроллера домена в существующем домене.


P.S. При подготовке стати, в целях сокращения времени ее написания, использовались следующие материалы:

Реклама

В дополнении к записи Сценарии для первых шагов настройки Server Core. vol2 публикую описание некоторых  параметров файла ответов, необходимых для развертывания контролера домена.

InstallDNS

Установка службы DNS на сервере. Принимает значение «Yes» или «No». Значение зависит от состояния домена. По умолчанию, при создании нового леса, присваивается значение «Yes»

NewDomain

Указывает тип создаваемого домена:Tree – новый домен является корнем в существующем лесу;Child – новый домен является дочерним по отношению к существующему;Forest (значение по умолчанию) – новый домен является первым в новом лесу деревьев домена

NewDomainDNSName

Новое имя DNS-сервера в формате Fully Qualified Domain Name (FQDN). Пример: Island.RU. По умолчанию не определен

DomainNetBiosName

Сокращенное имя домена. Как правило, ему соответствует первая часть FQDN-имени. Пример: Island. По умолчанию не определен

SiteName

Имя сайта, назначаемое в новом лесу. По умолчанию Default-First-Site-Name. Изменять этот параметр следует только в том случае, если созданных сайтов несколько, поскольку назначенное им будет возвращаться при попытке обратиться к сайту

ReplicaOrNewDomain

Параметр используется только для создания нового домена: Replica – сервер становится дополнительным контроллером домена; ReadOnlyReplica – сервер конвертируется в RODC, характерно только для Windows 2008;Domain – сервер преобразуется в первый контроллер домена

ForestLevel

Число, определяющее функциональный уровень леса в новом домене:0 = Windows 2000 Server;
2 = Windows Server 2003;3 = Windows Server 2008.По умолчанию принимает значение 0

DomainLevel

Число, определяющее функциональный уровень домена:0 = Windows 2000 Server;2 = Windows Server 2003;
3 = Windows Server 2008.Назначаемое значение основывается на функциональном уровне леса в новом домене. По умолчанию значение не определено

DatabasePath

Полный FQDN-путь (не UNC-путь) к папке на жестком диске локального компьютера, в котором создана база AD DS (файл NTDS.DIT). Если папка существует, то она должна быть пуста. Если папка отсутствует – она будет создана. Для успешного создания базы данных необходимо минимум 200 Мб свободного места на жестком диске. Значение по умолчанию «%systemroot%\NTDS», где NTDS– имя файла базы данных без расширения

LogPath

Полный FQDN-путь (не UNC-путь) к папке на жестком диске локального компьютера, в котором создан журнал событий базы данных AD DS. Значение по умолчанию «%systemroot%\NTDS»

RebootOnCompletion

Перезагрузка сервера после завершения работы мастера. Принимает значение «Yes» (по умолчанию) или «No»

SYSVOLPath

Полный FQDN-путь (не UNC-путь) к папке SYSVOL на жестком диске локального компьютера. Значение по умолчанию «%systemroot%\SYSVOL»

SafeModeAdminPassword

Пароль для входа в Directory Service Restore Mode в случае нарушения работы контроллера домена. Задаваемые значения <PASSWORD> или NONE. По умолчанию не определен


PS: Полный текст статьи читать здесь

В продолжении своей статьи об автоматизации первичных настроек Windows Server 2008r2 ServerCore предлагаю еще пару примеров автоматического развёртывания служб сервера: Службы каталогов в режиме только для чтения (RODC) и остальных необходимых для обычной работы служб.

Будем считать что сервер в режиме ServerCore стоит у нас в удаленном филиале, поэтому объединив в нем роли DNS, DHCP, FileServices плюс роль контролера домена только для чтения, мы получим готовое решение, удовлетворяющее большинству запросов.

Установка ролей в режиме ServerCore производится командой ocsetup.exe. Синтаксис средства Ocsetup.exe учитывает регистр, поэтому набирая команды вручную, необходимо быть внимательным.

Перед запуском предлагаемого мною файла сценария, необходимо  посмотреть список доступных ролей командой oclist. Команда выводит на экран список ролей сервера и дополнительных функций, которые доступны для использования со средством ocsetup.exe, а также список уже установленных ролей сервера. В случае если роль уже установлена, необходимо удалить или закомментировать строки в файле строки установки роли.

Итак начнем в обратном порядке, с остальных служб, т.к. установка роли сервера  печати требует перезагрузки, которая потом заблокирует выполнение процедуру DCPROMO. Итак действуем уже по отработанной процедуре. Копируем текст сценария в блокнот и сохраняем файлик с именем, к примеру, ServerCoreRoles.cmd

REM Файл для установки основных ролей на Windows 2008R2 ServerCore

REM установка ролей DHCP и DNS серверов
start /w ocsetup DNS-Server-Core-Role
start /w ocsetup DHCPServerCore

REM установка служб ролей файлового сервера
start /w ocsetup FRS-Infrastucture
start /w ocsetup DFSN-Server
start /w ocsetup DFSR-Infrastucture-ServerEdition

REM установка роли сервера печати
start /w ocsetup Printing-ServerCore-Role

После запуска сценария и перезагрузки сервера переходим к развертыванию роли контролера домена только для чтения (служба AD DS). Необходимо помнить, что команда DCPromo на ServerCore не имеет интерактивного режима установки. Для ее использования необходим несопровождаемый файл типа unnattend.txt. Привожу пример текст минимального файла настроек:

[DCInstall]

Install DNS = Yes

ConfirmGC = Yes

CriticalReplicationOnly = No

RebootOnCompletion = No

ReplicationSourceDC = DC.yourdomain.local

ParentDomainDNSName = yourdomain.local

ReplicaOrNewDomain =  ReadOnlyReplica

ReplicaDomainDNSName = yourdomain.local

SiteName = Defaul-First-Site-Name

SafeModeAdminPassword = P@ssword

UserDomain = yourdomain

UserName = Administrator

Password = Passw0rd

Для установки службы каталогов необходимо запустить DCPromo /unnattend:unnatend.txt (если запуск происходит в той папке, где лежит файл unnatend.txt). Если в файле нет ошибок, то команда будет выполнена и статус сервера повышен до RODC

PS: И снова отдельная благодарность Юрию Лебедеву за его web-каст.

PS2: Про установку других ролей для ServerCore можно почитать здесь


Небольшое дополнение, уже после публикации данной статьи, коллеги подсказали, что использование  ocsetup в Windows Server 2008R2, уже не совсем кашерно, хотя и вполне работоспособно. Предпочтительными же методами являются Server Manager cmdlets или DISM. Описание настройки ролей с использованием DISM в следующем посте.