Мониторинг репликации Active Directory с помощью PowerShell

Большинство администраторов AD для контроля репликацией в Active Directory используют консольные утилиты repadmin (появилась еще в Windows Server 2003) и replmon (нужно копировать из Support Tool для WS2003). Microsoft в Windows Server 2012 добавила ряд командлетов PowerShell, которые можно использовать для управления и проверки статуса репликации в лесу Active Directory. В этой статье мы рассмотрим основные полезные командлеты PoSh, которые может использовать администратор AD для контроля за своей инфраструктурой.

Командлеты для управления и мониторинга репликации AD входят в состав модуля Active Directory для PowerShell. Его можно включить после установки RSAT. Для импорта модуля в сессию PowerShell нужно выполнить команду:

Import-Module ActiveDirectory

модуль Active Diereectory для PowerShell

Примечание. Модуль Active Directory for PowerShell автоматически импортируется на контроллерах домена с Windows Server 2012 R2 и выше.

Полный список командлетов, связанных с репликацией, в модуле activedirectory можно вывести так:

get-command -module activedirectory -name *ADReplicat*

командлеты Powershell для мониторинга репликации в Active Directory

Для сбора информации об ошибках редупликации на конкретном контролере домена, нужно использовать команддет Get-ADReplicationFailure:

Get-ADReplicationFailure -Target DC01

В том случае, если ошибок нет, командлет ничего не вернет, в противном случае вы увидите список сбойных объектов и причины ошибок репликации.

Можно опросить сразу несколько DC:

Get-ADReplicationFailure -Target DC01,DC02

Get-ADReplicationFailure

В данном случае видно, что 22 февраля была проблема связи с контроллером домена dc02 (link failure), но на данный момент ошибка не наблюдается.

Для быстрого получения статуса репликации для всех DC в указанном сайте:

Get-ADReplicationFailure -scope site -target Kursk | FT Server, LastError, Partner-Auto

Либо сразу все контроллеры домена в домене или лесу ( -Scope Forest ):

Get-ADReplicationFailure -Target "winitpro.ru" -Scope Domain

Командлет Get-ADReplicationConnection используется для вывода информацию о партнерах репликации для текущего контролера домена.

Get-ADReplicationConnection -Filter *

Если нужно вывести подключения репликации с конкретным DC, выполните команду:

Get-ADReplicationConnection -Filter {ReplicateToDirectoryServer -eq "DC02"}

Для запуска принудительной синхронизации конкретного объекта между контроллерами домена, используется командлет Sync-ADObject. К примеру, возмем ситуацию, когда некий объект AD удален, помещен в корзину AD и впоследствии восстановлен. Сразу после восстановления объекта можно выполнить принудительную репликацию восстановленного объекта на все контроллеры домена (список DC можно получить командлетом Get-ADDomainController) с помощью командлета Sync-ADObject:

Get-ADDomainController -filter * | foreach {Sync-ADObject -Object "cn=Andrey Petrov,cn=Users,dc=winitpro,dc=ru" -source DC01 -Destination $_.hostname}

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

Get-ADReplicationPartnerMetadata -Target "$env:userdnsdomain" -Scope Domain | Select-Object Server, LastReplicationAttempt, LastReplicationSuccess, Partner

Get-ADReplicationPartnerMetadata

Можно получить статус репликации конкретного объекта:

Get-ADReplicationAttributeMetadata -Object "CN=Maxim Vetrov,OU=Users,DC=winitpro,DC=ru" -Server DC01

С помощью командлета Get-ADReplicationQueueOperation можно получить список ожидающих операций репликации на конкретном сервере.

Командлет Get-ADReplicationUpToDatenessVectorTable позволяет получить список значений USN для партнеров по репликации:

Get-ADReplicationUpToDatenessVectorTable * | ft Partner,Server,UsnFilter

Таким образом, PowerShell предоставляет мощный и удобный инструмент для мониторинга и решения проблем с репликацией в лесу AD, который на 100% может заменить функционал утилиты repadmin по мониторингу и управлению репликацией в Active Directory.


Предыдущая статья Следующая статья


Комментариев: 0 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)