많은 DC에서 -strict가 오랫동안 설정되어있을 때 느린 개체를 올바르게 제거하는 방법은 무엇입니까?


16

저는 최근 전 세계 100 개가 넘는 사이트에 120 개의 도메인 컨트롤러가있는 환경에있었습니다. 이 도메인은 Windows 2000 시대에 시작되어 시간이 지남에 따라 업그레이드되었으므로 엄격한 복제 일관성 이 새 DC의 기본값으로 설정되지 않았으며 어떤 DC에서도 활성화되지 않았습니다. 디렉토리에 느린 개체가 있으며 이로 인해 정기적으로 상당한 수의 충돌 개체가 표시됩니다.

사용 repadmin /removelingeringobjects하려면 두 가지를 알아야합니다.

  1. 데이터베이스에 남아있는 DC가있는 DC

  2. 기준 DC로 사용하기 위해 남아있는 물체가없는 DC.

분명히이 환경은 모든 새 DC에 엄격한 복제 일관성이 적용되도록 설정해야하며 현재 모든 DC가 엄격한 복제 일관성 repadmin /options * +strict을 사용하도록 실행해야 하지만 이제는 개체를 정리하지 않고도 복제가 중단됩니다 .

그래서 내 질문은 이것입니다 : 어떤 DC가 남아있는 DC를 가지고 있고 어떤 DC를 가지고 있지 않은지 알 수없는 거대한 환경에서 사용하기 위해 좋은 참조 DC를 식별하는 repadmin /removelingeringobjects방법과 120 + DC는 엄격한 복제 일관성을 유지하고 복제를 중단하기 전에 느린 개체를 제거합니까? 아니면 엄격 모드를 켜고 repadmin /replsum중단 된 부분을보고 처리하는 것이 더 쉬운 가요?

답변:


11

이 문제를 해결하려면 시간이 다소 걸립니다.

모든 복제를 중지하려면 다음을 실행하십시오.

repadmin /options +DISABLE_OUTBOUND_REPL

모든 DC에서. 위의 설정으로 관리자 (사용자) 실행 등의 수동 복제 작업을 막을 수는 없지만 repadmin /syncall /APed정기적 복제를 다시 활성화하기 전에 모든 DC를 완전히 다시 동기화 할 수 있기 때문에 좋은 방법입니다.

Repadmin은 개체가 ServerA에는 있지만 ServerB에는없는 경우 느린 개체인지 확인합니다. 여기서 ServerB는 참조 DC입니다. 새로 만든 개체 복제와 기존 개체에 대한 업데이트 복제의 차이점이 핵심입니다. 새로 생성 된 객체 복제 = 양호 기존 객체에 대한 업데이트 복제 = 양호 대상 DC에 존재하지 않는 개체에 대한 업데이트 복제 = 불량.

모든 DC가 하나의 좋은 기준 DC와 일치 할 때까지 거품을 내고 헹구고 반복하면됩니다. 그런 다음 모든 곳에서 엄격한 일관성을 설정 한 다음 복제를 다시 활성화하십시오. 예, 참조 DC로 복제되지 않은 다른 원격 DC에서 생성 된 합법적 인 개체를 삭제할 위험이 있습니다.

위대한 " Active Directory 복제 모델의 작동 방식 "기사에서 :

복제 일관성 설정

느린 개체의 특성이 변경되지 않으면 개체는 복제 대상으로 간주되지 않습니다. 그러나 속성이 변경되면 속성이 아웃 바운드 복제로 간주됩니다. 대상 도메인 컨트롤러는 복제중인 특성에 대한 개체를 보유하지 않으므로 업데이트를 수행 할 수 없습니다. 이 조건을 해결하는 방법은 도메인 컨트롤러의 복제 일관성 설정에 따라 다릅니다.

Windows Server 2003 또는 Windows 2000 Server SP3을 실행하는 도메인 컨트롤러의 레지스트리 설정은 도메인 컨트롤러가 다른 모든 복제본에서 삭제 된 업데이트 된 개체를 복제하고 다시 애니메이션하는지 또는 해당 개체의 복제가 있는지 여부를 결정하는 일관성 값을 제공합니다. 막힌. 기본 설정은 Windows 2000 Server SP3 및 Windows Server 2003을 실행하는 도메인 컨트롤러에서 다릅니다.

엄격한 복제 일관성

삭제 된 개체를 다시 애니메이션하는 데 문제가 발생하지 않도록하기 위해 새로 만든 (업그레이드되지 않은) Windows Server 2003 포리스트에서 Windows Server 2003을 실행하는 도메인 컨트롤러는 기본적으로 인바운드 복제를 차단합니다. .

참고 • Active Directory 복제는 업데이트 추적을 사용하여 새로 만든 개체 복제와 기존 개체의 특성 업데이트를 구분합니다. 느린 개체 복제는 개체가 없기 때문에 대상 도메인 컨트롤러가 업데이트 할 수없는 개체의 특성을 업데이트하려는 시도입니다.

느린 개체가 원본 도메인 컨트롤러에서 제거되거나 엄격한 복제 일관성 설정이 비활성화 될 때까지 개체의 디렉터리 파티션에서 복제가 중지됩니다.

ServerB가 ServerA에게 다음과 같이 말할 때 : "이봐, 기존 objectA가 일부 업데이트되었습니다." 그런 다음 ServerA는 "잠깐만 요. objectA도 전혀 없습니다. 전체 개체를 보내주세요!"라고 말합니다. 엄격한 일관성 없는 경우 엄격한 일관성이있을 경우 ServerA는 "잠깐만 요? 존재하지 않는 객체를 어떻게 업데이트할까요? 구부러 지십시오!"라고 말합니다.

도메인 컨트롤러에 느린 개체가 있는지 확인하려면 다음과 같이하십시오.

repadmin /removelingeringobjects ServerName ServerGUID DirectoryPartition /advisory_mode 

ServerGUID는 알려진 양호한 참조 DC입니다. 나는 당신이 이미 이것을 알고 있다는 것을 알고 있습니다 ... 그리고 위의 줄을 모든 DC에서 실행하도록 스크립트하는 법 ... ( foreach ($DC In $(Get-ADDomain).ReplicaDirectoryServers) { }) ...

결론과 비교할 수있는 좋은 소스 DC가 필요합니다. 알려진 양호한 소스 DC가 없거나 모르는 경우 하나만 선택하면됩니다. 물론 쓰기 가능한 GC 여야합니다. 상대적입니다-모든 도메인 컨트롤러가 개체의 존재와 해당 개체의 특성에 동의하면 느린 개체가 아닙니다.

foreach($GC In $(Get-ADForest).GlobalCatalogs) { repadmin /removelingeringobjects $_.name 85d158d2-a006-4fff-b1e5-f9b6eaabab2b '$directoryPartition'

그것은 GUID로 지정 해야하는 알려진 좋은 소스와 함께 포리스트의 모든 GC의 디렉토리 파티션을 다시 동기화합니다.

그런 다음 모든 도메인 컨트롤러를 다시 한 번 동의하면 복제가 행복해집니다. 그런 다음 모든 컨트롤러에서 엄격한 일관성을 유지하기 시작합니다.

편집 : 문제에 대한 Microsoft의 파티 라인이며, 그들이 당신에게 전화 할 가능성이있는 것은 무엇입니까?

마지막으로, 문제를 일으키지 않는 한 가치보다 수정하기가 더 어려울 수 있습니다. 나는 그것을 말하고 싶지 않지만 AD는 여전히 남아있는 객체로 정상적으로 작동 할 수 있습니다.


4

클린 DC를 식별 할 수없는 경우의 일반적인 원칙은 다음과 같습니다.

for each $sourceDC in $allDCs
    for each $targetDC in $allDCs
        if ($targetDC <> $sourceDC) then
            run repadmin with $sourceDC and $targetDC
        end if
    next
next

이 프로세스는 여기에 설명되어 있습니다 : http://blogs.technet.com/b/glennl/archive/2007/07/26/clean-that-active-directory-forest-of-lingering-objects.aspx

그러나 ReplDiag를 살펴 보십시오 . repadmin소스 및 대상 DC의 모든 조합에 대해 실행하여 프로세스를 자동화합니다 . 그런 다음 /advisory_only추가로 남아있는 개체가 있는지 확인합니다.


이는 여전히 14,400 개의 인터랙션이며,이 기간 동안 추가의 느린 개체를 디렉터리 전체에 복제 할 수 있습니다. 이것을 피하기 위해 복제가 중단되도록 + strict를 먼저 활성화하는 것이 좋습니다 ? 이 크기의 디렉토리에서 14,400 회의 반복 작업을 수행하면 더 나쁜 복제가 발생할 수 있습니다.
MDMarra

무언가와 병렬화 할 수 있습니까?
Tom O'Connor

@ TomO'Connor 재미있는 아이디어. PowerShell 원격으로 가능해야합니다. 그런 다음 각 DC를 repadmin병렬 로 실행할 수 있습니다 !!!
longneck

7
@MDMarra 전 세계에 걸쳐 있고 Win2k 이후에 사용되고 그 이후 다양한 버전으로 업그레이드 된 120-DC 도메인을 빠르고 쉽게 청소할 수 있다면 회사는 관리인에게 맡기면됩니다. ;)
Ryan Ries

1
나는 당신이 bazillion DC를 가지고 있다는 것을 알고 있지만 실제로 얼마나 많은 수의 관리자가 변경을 위해 사용합니까? 해당 사이트에있는 DC 및 DC만으로이 정리를 수행 한 다음 해당 DC에 대해 엄격하게 설정할 수 있습니다. 다른 사람들과 계속하십시오. 이는 가능한 모든 문제를 최소화해야합니다
Longneck
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.