Полезное‎ > ‎Статьи‎ > ‎

Перенос роли хозяина операций на контроллере домена

Постановка задачи

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


Предположим:

  • MYDOMAIN.LOCAL - наш домен под управлением Active Directory в Windows 2012 Server
  • DC1 - единственный контроллер домена
  • DC2 - новый добавляемый сервер, который будет вторым контроллером домена и впоследствии хозяином операций


Добавление контроллера домена

После установки на Windows 2012 Server роли "Доменные службы Active Directory" и повышения уровня сервера до контроллера домена (см офиц инструкцию) необходимо перед дальнейшими действиями дать несколько часов на синхронизацию между контроллерами доменов.

Затем следует проверить насколько гладко новый котроллер вошёл в домен.

C:\Windows\system32>nltest /dclist:mydomain.local
Получить список контроллеров домена в домене "mydomain.local" из "\\dc1.mydomain.local".
    dc1.mydomain.local [PDC]  [DS] Сайт: Default-First-Site-Name
    DC2.mydomain.local        [DS] Сайт: Default-First-Site-Name
Команда выполнена успешно.

Можно альтернативно запросить туже информацию непосредственно из каталога Active Directory:

C:\Windows\system32>dsquery server
"CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=local"
"CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=local"

Посмотрим краткий отчёт о проведённых между контроллерами репликациях, есть ли что-нибудь в очереди, можно также посмотреть более подробный отчёт:

repadmin /replsummary
repadmin /queue
repadmin /showrepl

Если репликации не были успешными, то можно запустить репликацию принудительно, но при этом командный интерпритатор cmd должне быть запущен с административными правами:

repadmin /syncall

Командой dcdiag можно более подробно диагностировать состояние контроллера домена, а также отдельно запустить более подробные тесты для проверки разных служб (офиц. описание)


Перенос роли хозяина операций

Прежде чем начать перенос ролей, желательно добиться отсутствия ошибок в dcdiag!

Алгоритм переноса ролей FSMO (Flexible Single-Master Operations) такой же как и при захвате. В первом случае используется работающий главный контроллер домена (PDC), и переносимые роли на нём отключаются, если же он потерян, то роли захватываются новым контроллером принудительно.

Посмотрим список контроллеров домена mydomain.local:

nltest /dclist:mydomain.local

Выясняем, кто из контроллеров является хозяином операций:

C:\Users\pnm>netdom query FSMO
Хозяин схемы                dc1.mydomain.local
Хозяин именования доменов   dc1.mydomain.local
PDC                         dc1.mydomain.local
Диспетчер пула RID          dc1.mydomain.local
Хозяин инфраструктуры       dc1.mydomain.local
Команда выполнена успешно. 

Перенос ролей можно сделать двумя способами:

1. через оснастку "Active Directory - Домены и доверие", открыв её из Диспетчера серверов - Средства.

2. консольной утилитой управления доменом ntdsutil (офиц. документация). Если роли передаются, то используем команду transfer, если же захватываются, то seize. Ниже приведён алгоритм захвата ролей новым контроллером dc2:

C:\Users\pnm>ntdsutil 
ntdsutil: roles
fsmo maintenance: connections 
server connections: connect to server dc2
Привязка к dc2 ...
Подключен к dc2 с помощью учетных данных локального пользователя.
server connections: quit
fsmo maintenance: seize infrastructure master
fsmo maintenance: seize naming master
fsmo maintenance: seize PDC
fsmo maintenance: seize RID master
fsmo maintenance: seize schema master
quit
quit

Находясь в разделе fsmo maintenance можно узнать список всех ролей, послав команду ?.

В случае успешного захвата мы должны увидеть следующее

C:\Users\pnm>netdom query FSMO
Хозяин схемы                dc2.mydomain.local
Хозяин именования доменов   dc2.mydomain.local
PDC                         dc2.mydomain.local
Диспетчер пула RID          dc2.mydomain.local
Хозяин инфраструктуры       dc2.mydomain.local
Команда выполнена успешно. 


Работа над ошибками

Некоторые примеры диагностики проблем с контроллерами домена рассмотрены в примерах команды dcdiag


DNS не удаётся разрешить IP-адрес

dcdiag выдаёт ошибку DNS:

Выполнение обязательных начальных проверок

   Сервер проверки: Default-First-Site-Name\DC2
    Запуск проверки: Connectivity
       Узел a20970bf-3f73-400a-85ac-69c8f7b34301._msdcs.mydomain.local не удается
       разрешить в IP-адрес. Проверьте DNS-сервер, DHCP, имя сервера и т. д.
       Получена ошибка при проверке подключения LDAP и RPC. Проверьте параметры
       брандмауэра.
       ......................... DC2 - не пройдена проверка Connectivity

Выполнение основных проверок

   Сервер проверки: Default-First-Site-Name\DC2
      Пропуск всех проверок, так как сервер DC2 не отвечает на запросы службы каталогов.


РЕШЕНИЕ:

Нужно проверить существует ли обратная DNS зона и синхронизирована ли она между контроллерами.

  • Детальная проверка службы DNS (может занять пару минут):
dcdiag /test:dns


Ошибка репликации 8453

repadmin /showrepl выдаёт ошибку:

Процесс DsReplicaGetInfo() завершился ошибкой с кодом состояния 8453 (0x2105):
    Доступ к репликации отвергнут.


РЕШЕНИЕ:

Запустить репликацию вручную и командной строки с административными правами

repadmin /syncall


На контроллере нет сетевых ресурсов NetLogon и SysVol

Эта ошибка означает, что репликация данных с главного контроллера домена (хозяина операций) на проблемный не была произведена до конца.

Доступность сетевых ресурсов можно проверить командой:

net share

Исправность ресурсов SysVol и NetLogon можно проверить командой:

dcdiag /test:netlogons

Официальную инструкцию по пересозданию ресурсов NetLogon и SysVol на английском можно прочесть в статье Restoring and Rebuilding SYSVOL. Ниже приведён краткий алгоритм этого процесса.