Принудително репликация между два контролера на домейн в Active Directory

Представете си(Imagine) , че имате само една врата към дома си. Без прозорци, без врата на вътрешен двор, само една врата. Какво ще стане, ако не можете да отворите тази врата? Къщата и всичко в нея са безполезни за вас.

Контролерът на домейн е като врата в известен смисъл. Единият с изхвърлящ удар. Това е вратата, за да влезете вътре към нещата, които искате. Active Directory (AD) е избивачът пред вратата. Той проверява вашите идентификационни данни, определя дали ви е позволено да преминете през вратата и до какви ресурси можете да получите достъп, след като влезете. 

Ако използвате мрежа от всякакъв вид и имате само един домейн контролер, вие живеете в къща с една врата. Ако нещо се случи с този домейн контролер, цялата ви система от сървъри се разпада. Винаги имайте повече от един домейн контролер (DC).

Но как да се уверите, че и двата домейн контролера имат една и съща информация? Да приемем, че сте направили свързана със сигурността промяна в един DC. Искате да сте сигурни, че промяната се репликира на другите ви DC(DCs) незабавно. Защо да чакате 15 минути или повече, за да се случи по график? Трябва да принудите репликацията на домейн контролерите в Active Directory

Има 3 начина да се подходи към това; чрез графичния потребителски интерфейс ( GUI ), чрез интерфейса на командния ред ( CLI ) или чрез PowerShell .

Принудително репликация на домейн контролер чрез GUI(Force Replication Of Domain Controller Through GUI)

Windows сървърите използват много графични интерфейси(GUIs) , което е добре за начинаещи системни администратори(Systems Administrators) . По-лесно е за научаване и понякога ви помага да визуализирате какво наистина се случва. 

  1. Влезте в един от вашите DC и отворете сайтове и услуги на Active Directory(Active Directory Sites and Services) .

  1. Придвижете се до сайта, за който искате да репликирате домейн контролерите. Разгънете го, като щракнете върху стрелката до името на сайта. Разширете сървърите(Servers) . Разширете DC, който искате да репликирате. Щракнете(Click) върху Настройки на NTDS(NTDS Settings) .

  1. В десния прозорец щракнете с десния бутон върху сървъра и изберете Replicate Now .

  1. В зависимост от това колко DC(DCs) има, това може да отнеме по-малко от секунда до няколко минути. Когато приключи, ще видите известието „Услугите за домейн на Active Directory са репликирали връзките.“. Щракнете върху (Click) OK , за да завършите.

Принудително репликация на домейн контролери чрез CLI команда(Force Replication of Domain Controllers Through CLI Command)

Ако сте запознати с добрия стар Windows CMD , тогава командата repadmin е за вас. Това е най-бързият еднократен начин за принудително дублиране на DC. Ако не сте запознати, тогава е подходящ момент да научите за Windows CMD(learn about Windows CMD)

  1. Влезте(Log) в един от вашите DC(DCs) и отворете командния ред(Command Prompt) .

  1. Въведете(Enter) следната команда и след това натиснете клавиша Enter .
repadmin /syncall /AdeP

  1. Литания от информация ще превърта нагоре по екрана. Ако видите, че последният ред гласи „SyncAll прекратено без грешки.“, а след това командния ред под него, вашите DC(DCs) се репликират успешно.

Принудително репликация на контролера на домейн с PowerShell(Force Domain Controller Replication With PowerShell)

Ако не използвате PowerShell в ежедневието си, пропускате. Наистина дължите на себе си да научите PowerShell(learn PowerShell) . Това ще улесни живота ви и ако сте младши системен администратор(Systems Administrator) , това значително ще ви помогне да изведете кариерата си към следващата стъпка.

Тези стъпки могат да бъдат направени в обикновения PowerShell CLI , но ние го направихме в PowerShell ISE , за да покажем по-добре командите и техните резултати. Ще изградим скрипт, който можете да запазите или дори да превърнете в командлет, който можете да извикате от командния ред на PowerShell .

  1. Влезте в един от вашите DC и отворете PowerShell или PowerShell ISE .

  1. Преди да напишете какъвто и да е скрипт, запазете го с описателно име като force-DCReplication.ps1 , за да можете да го използвате по-лесно. Въведете следния код и го стартирайте, за да видите как ще получи имената на всичките ви DC(DCs) .
(Get-ADDomainController -Filter *).Name

Вижте как връща имената на DC(DCs) ? Сега можете да пренесете този резултат в следващия командлет. Тръбата е символът за вертикална линия ( | ), който обикновено се намира на клавиатурата точно над клавиша Enter .

  1. В края на предишната команда въведете следния код:
| Foreach-Object { repadmin /syncall $_ (Get-ADDomain).DistinguishedName /AdeP }

Командата трябва да изглежда така, както е на изображението по-долу. Пусни го. Той трябва да върне съобщение, точно като това обратно в секцията Force Domain Controller Replication чрез GUI по-горе. Ако завършва с „ SyncAll прекратено без грешки.“ тогава проработи. 

Видяхте ли как използва и командата repadmin ?

  1. Нека добавим още един ред, за да ви помогнем да се уверите, че репликацията наистина е завършила. Следният код ще върне датата и часа на последното копиране на всеки от вашите DC . (DCs)Тази команда може да се използва самостоятелно в друг момент, ако просто сте любопитни кога за последно са репликирани вашите DC . (DCs)Въведете(Enter) кода и го стартирайте.
Get-ADReplicationPartnerMetadata -Target "$env:userdnsdomain" -Scope Domain | Select-Object Server, LastReplicationSuccess

Резултатът трябва да прилича на изображението по-долу. Ще видите в долната част точната дата и час на последното репликация.

  1. За да излъскаме този скрипт, нека направим изхода му малко по-малко подробен. Близо до края на първия ред въведете | Out-Null между /AdeP и крайната скоба. Това му казва да не извежда резултатите от този командлет. Крайният резултат ще изглежда като следното изображение.

Дръжте ги репликирани(Keep’em Replicated)

Сега знаете 3 начина за принудително репликация на домейн контролери в AD. Освен това сте събрали скрипт PowerShell за многократна употреба , който можете да извикате от командния ред на PowerShell , когато пожелаете. Няма извинение за последните ви промени в DC да седят и да чакат следващата планирана репликация, когато и да е това.



About the author

Аз съм опитен софтуерен инженер, с над 10 години опит в разработването и поддържането на Microsoft Office приложения. Имам силна страст да помагам на другите да постигнат целите си, както чрез работата ми като софтуерен инженер, така и чрез моите умения за публично говорене и работа в мрежа. Освен това съм изключително запознат с драйверите за хардуер и клавиатура, като сам разработих и тествах много от тях.



Related posts