Как лучше всего отслеживать репликацию с помощью Active Directory?
У меня несколько сайтов и несколько местоположений, поэтому в идеале будет отслеживаться как репликация между сайтами, так и внутри сайтов. Я не совсем уверен, нужно ли отслеживать каждый DC, каждое соединение NTDS или каждое DC * Каждое соединение NTDS.
Для того, чтобы вписаться в стандартную методологию предупреждений, счетчики perfmon, которые позволили бы мне предупреждать, если репликация задерживается на X минут, кажутся идеальными.
Просматривая счетчики Perfmon служб каталогов, я не вижу ничего, что мне казалось бы именно тем, что мне нужно.
Я использую систему мониторинга, которая поддерживает powershell (Orion), поэтому я очень быстро написал это и собираюсь посмотреть, как это работает для моих нужд:
#PS Script to Monitor Seconds since Last Successful AD Sync (By taking the longest (max) of any partition #KMB 11/22/2011 #http://archive.msdn.microsoft.com/RepPSAdmin/Release/ProjectReleases.aspx?ReleaseId=5267 import-module -name RepPSAdmin $hostname = $env:COMPUTERNAME #PS C:\Windows\system32> Get-ADServerReplicationStatus -ServerName $hostname -SourceServer | Get-Member -memberType *property $now = Get-Date $latest = New-Timespan -start $now -end $now Get-ADServerReplicationStatus -ServerName $hostname -SourceServer | foreach-object { #Write-Host $_.LastSuccessfulSync} $temp = $now - $_.LastSuccessfulSync #Write-Host $_.LastSuccessfulSync :: $temp :: $temp.TotalSeconds if ($temp.TotalSeconds -gt $latest.TotalSeconds) { $latest = $temp } } Write-Host $latest.TotalSeconds
Отказ от ответственности - этот скрипт все еще работает и развивается, и я действительно не знаю PowerShell :-P
Не могли бы вы выделить пространство имен для мониторинга в объявлении? Затем вы можете периодически записывать временные метки на первичный сервер и опрашивать реплики, чтобы узнать, сколько времени требуется для репликации последней.