Sdílet prostřednictvím


Pokročilá správa replikace a topologie služby Active Directory pomocí prostředí Windows PowerShell (úroveň 200)

Toto téma podrobněji vysvětluje rutiny replikace a správy topologie služby AD DS a poskytuje další příklady. Úvod najdete v tématu Úvod k replikaci a správě topologie služby Active Directory pomocí prostředí Windows PowerShell (úroveň 100).

  1. Introduction

  2. Replikace a metadata

  3. Get-ADReplicationAttributeMetadata

  4. Get-ADReplicationPartnerMetadata

  5. Get-ADReplicationFailure

  6. Get-ADReplicationQueueOperation a Get-ADReplicationUpToDatenessVectorTable

  7. Sync-ADObject

  8. Topology

Introduction

Následující tabulka uvádí rutiny replikace a topologie přidané do modulu Prostředí Windows PowerShell služby Active Directory:

Cmdlet Explanation
Get-ADReplicationAttributeMetadata Vrátí metadata replikace atributů pro objekt.
Get-ADReplicationConnection Vrátí podrobnosti o objektu připojení řadiče domény.
Get-ADReplicationFailure Vrátí nejnovější chybu replikace řadiče domény.
Get-ADReplicationPartnerMetadata Vrátí konfiguraci replikace řadiče domény.
Get-ADReplicationQueueOperation Vrátí aktuální backlog fronty replikace.
Get-ADReplicationSite Vrátí informace o lokalitě.
Get-ADReplicationSiteLink Vrátí informace o odkazech na webovou stránku.
Get-ADReplicationSiteLinkBridge Vrátí informace o mostu propojení lokality.
Get-ADReplicationSubnet Vrátí informace o podsíti Active Directory.
Get-ADReplicationUpToDatenessVectorTable Vrátí vektor UTD pro řadič domény.
Get-ADTrust Vrátí informace o vztahu důvěryhodnosti mezi doménou nebo mezi doménovými strukturami.
New-ADReplicationSite Vytvoří novou lokalitu.
New-ADReplicationSiteLink Vytvoří nový odkaz na web.
New-ADReplicationSiteLinkBridge Vytvoří nový most propojení lokalit.
New-ADReplicationSubnet Vytvoří novou podsíť AD.
Remove-ADReplicationSite Odstraní web.
Remove-ADReplicationSiteLink Odstraní odkaz na web.
Remove-ADReplicationSiteLinkBridge Odstraní most propojení lokalit.
Remove-ADReplicationSubnet Odstraní podsíť AD.
Set-ADReplicationConnection Upraví připojení.
Set-ADReplicationSite Upraví web.
Set-ADReplicationSiteLink Upraví odkaz na web.
Set-ADReplicationSiteLinkBridge Modifikuje most propojující lokality.
Set-ADReplicationSubnet Upraví podsíť Active Directory.
Sync-ADObject Vynucení replikace jednoho objektu.

Většina těchto cmdletů má svůj základ v Repadmin.exe. Jiné rutiny (neuvedené) zpracovávají funkce, jako jsou dynamické řízení přístupu a účty spravované služby skupiny.

Úplný seznam všech cmdletů Windows PowerShell pro Active Directory spusťte:

Get-Command -module ActiveDirectory

Úplný seznam všech argumentů rutin prostředí Active Directory pro Windows PowerShell najdete v nápovědě. Například:

Get-Help New-ADReplicationSite

Použití rutiny Update-Help ke stažení a instalaci souborů nápovědy

Replikace a metadata

Repadmin.exe ověří stav a konzistenci replikace služby Active Directory. Repadmin.exe nabízí jednoduché možnosti manipulace s daty – některé argumenty podporují výstupy CSV, ale automatizace obecně vyžaduje analýzu prostřednictvím výstupů textového souboru. Modul Active Directory pro Windows PowerShell je prvním pokusem o nabízení možnosti, která umožňuje skutečnou kontrolu nad vrácenými daty; před tím jste museli vytvářet skripty nebo používat nástroje třetích stran.

Kromě toho následující rutiny implementují novou sadu parametrů Target, Scope a EnumerationServer:

  • Get-ADReplicationFailure

  • Get-ADReplicationPartnerMetadata

  • Get-ADReplicationUpToDatenessVectorTable

Argument Target přijímá čárkami oddělený seznam řetězců, které identifikují cílové servery, lokality, domény nebo doménové struktury určené argumentem Rozsah. Hvězdička (*) je také povolená a znamená to, že všechny servery v zadaném oboru. Pokud není zadaný žádný obor, znamená to, že všechny servery v doménové struktuře aktuálního uživatele. Argument Obor určuje zeměpisnou šířku hledání. Přijatelné hodnoty jsou Server, Lokalita, Doména a Doménová struktura. EnumerationServer určuje server, který vypíše seznam řadičů domény zadaných v cíli a oboru. Funguje stejně jako argument Server a vyžaduje, aby zadaný server spustil webovou službu Active Directory.

Pokud chcete rutiny zavést, tady je několik ukázkových scénářů, které ukazují možnosti, které nelze repadmin.exe; na těchto ilustracích se zjeví možnosti správy. Projděte si nápovědu k rutině pro konkrétní požadavky na využití.

Get-ADReplicationAttributeMetadata

Tato rutina se podobá repadmin.exe /showobjmeta. Umožňuje vracet metadata replikace, jako je změna atributu, původní řadič domény, verze a informace o názvu uživatele (USN) a data atributů. Tato rutina je užitečná pro auditování, kdy a kdy došlo ke změně.

Na rozdíl od nástroje Repadmin poskytuje Prostředí Windows PowerShell flexibilní řízení hledání a výstupu. Můžete například vypsat metadata objektu Domain Admins seřazená jako čitelný seznam:

Get-ADReplicationAttributeMetadata -object "cn=domain admins,cn=users,dc=corp,dc=contoso,dc=com" -server dc1.corp.contoso.com -showalllinkedvalues | format-list

Snímek obrazovky znázorňující výstup metadat objektu Domain Admins seřazený jako čitelný seznam

Případně můžete data uspořádat tak, aby vypadala jako repadmin, v tabulce:

Get-ADReplicationAttributeMetadata -object "cn=domain admins,cn=users,dc=corp,dc=contoso,dc=com" -server dc1.corp.contoso.com -showalllinkedvalues | format-table -wrap

Snímek obrazovky znázorňující data uspořádaná tak, aby vypadala jako repadmin v tabulce

Případně můžete získat metadata pro celou třídu objektů tak, že předáte rutinu Get-Adobject pomocí filtru, například všech skupin , a pak je zkombinujete s konkrétním datem. Potrubí je kanál používaný mezi několika rutinními moduly k předávání dat. Pokud chcete zobrazit všechny skupiny změněné nějakým způsobem 13. ledna 2012:

Get-ADObject -filter 'objectclass -eq "group"' | Get-ADReplicationAttributeMetadata -server dc1.corp.contoso.com | where-object {$_.lastoriginatingchangetime -like "*1/13/2012*" -and $_.attributename -eq "name"} | format-table object

Snímek obrazovky, který ukazuje, jak zobrazit všechny skupiny změněné nějakým způsobem 13. ledna 2012

Další informace o dalších operacích Windows PowerShellu s kanály najdete v tématu Piping a Pipeline v prostředí Windows PowerShell.

Případně můžete zjistit každou skupinu, která má Tonyho Wanga jako člena a kdy byla skupina naposledy změněna:

Get-ADObject -filter 'objectclass -eq "group"' | Get-ADReplicationAttributeMetadata -server dc1.corp.contoso.com -showalllinkedvalues | where-object {$_.attributevalue -like "*tony wang*"} | format-table object,LastOriginatingChangeTime,version -auto

Snímek obrazovky znázorňující, jak zjistit každou skupinu, která má Tonyho Wanga jako člena a kdy byla skupina naposledy změněna

Případně můžete najít všechny objekty autoritativní obnovené pomocí zálohy stavu systému v doméně na základě jejich uměle vysoké verze:

Get-ADObject -filter 'objectclass -like "*"' | Get-ADReplicationAttributeMetadata -server dc1.corp.contoso.com | where-object {$_.version -gt "100000" -and $_.attributename -eq "name"} | format-table object,LastOriginatingChangeTime

Snímek obrazovky, který ukazuje, jak najít všechny objekty autoritativně obnovené pomocí zálohy stavu systému v doméně na základě jejich uměle vysoké verze

Případně můžete odeslat všechna metadata uživatelů do souboru CSV pro pozdější vyšetření v Microsoft Excelu:

Get-ADObject -filter 'objectclass -eq "user"' | Get-ADReplicationAttributeMetadata -server dc1.corp.contoso.com -showalllinkedvalues | export-csv allgroupmetadata.csv

Get-ADReplicationPartnerMetadata

Tato rutina vrací informace o konfiguraci a stavu replikace řadiče domény, což vám umožní monitorovat, inventarizaci nebo řešit potíže. Na rozdíl od Repadmin.exepoužití Windows PowerShellu znamená, že se zobrazí pouze data, která jsou pro vás důležitá, a to v požadovaném formátu.

Například stav čitelné replikace jednoho řadiče domény:

Get-ADReplicationPartnerMetadata -target dc1.corp.contoso.com

Snímek obrazovky znázorňující, jak získat stav čitelné replikace jednoho řadiče domény

Alternativně, kdy naposledy došlo k příchozí replikaci řadiče domény a jeho partnerů, ve formátu tabulky:

Get-ADReplicationPartnerMetadata -target dc1.corp.contoso.com | format-table lastreplicationattempt,lastreplicationresult,partner -auto

Snímek obrazovky, který ukazuje poslední dobu, kdy řadič domény replikoval příchozí data a jeho partnery, ve formátu tabulky.

Případně můžete kontaktovat všechny řadiče domény v doménové struktuře a zobrazit všechny, jejichž poslední pokus o replikaci selhal z jakéhokoli důvodu:

Get-ADReplicationPartnerMetadata -target * -scope server | where {$_.lastreplicationresult -ne "0"} | ft server,lastreplicationattempt,lastreplicationresult,partner -auto

Snímek obrazovky znázorňující, jak kontaktovat všechny řadiče domény v doménové struktuře a zobrazit všechny, jejichž poslední pokus o replikaci se z jakéhokoli důvodu nezdařil

Get-ADReplicationFailure

Tuto rutinu lze použít k vrácení informací o nedávných chybách v replikaci. Je to podobné Repadmin.exe /showreplsum, ale opět máte díky Windows PowerShell mnohem větší kontrolu.

Můžete například vrátit nejnovější chyby řadiče domény a partneři, u které selhalo kontaktování:

Get-ADReplicationFailure dc1.corp.contoso.com

Snímek obrazovky, který ukazuje, jak vrátit nejnovější chyby řadiče domény a partnery, které se mu nepodařilo kontaktovat.

Případně můžete vrátit zobrazení tabulky pro všechny servery v konkrétní logické lokalitě AD seřazené pro snadnější prohlížení a obsahující pouze nejdůležitější data:

Get-ADReplicationFailure -scope site -target default-first-site-name | format-table server,firstfailuretime,failurecount,lasterror,partner -auto

Snímek obrazovky, který ukazuje, jak vrátit zobrazení tabulky pro všechny servery v konkrétní logické lokalitě AD, seřazené pro snadnější zobrazení a obsahující pouze nejdůležitější data

Get-ADReplicationQueueOperation a Get-ADReplicationUpToDatenessVectorTable

Oba tyto příkazy vrací další aspekty řadiče domény a zda je aktuální, což zahrnuje čekající replikaci a informace o vektoru verze.

Sync-ADObject

Tato cmdlet je podobná spuštění Repadmin.exe /replsingleobject. Je velmi užitečné, když provedete změny, které vyžadují replikaci mimo pásmo, zejména při opravě problému.

Pokud například někdo odstranil uživatelský účet výkonného ředitele a pak ho obnovil pomocí koše služby Active Directory, je vhodné ho okamžitě replikovat do všech řadičů domény. Pravděpodobně to také chcete udělat bez vynucení replikace všech ostatních provedených změn objektu; to znamená, že máte plán replikace – abyste se vyhnuli přetížení propojení WAN.

Get-ADDomainController -filter * | foreach {Sync-ADObject -object "cn=tony wang,cn=users,dc=corp,dc=contoso,dc=com" -source dc1 -destination $_.hostname}

Snímek obrazovky znázorňující, jak replikovat odstraněný účet z koše služby Active Directory do všech řadičů domény bez vynucení replikace všech ostatních provedených změn objektu

Topology

Ačkoli Repadmin.exe je dobré ve vracení informací o topologii replikace, jako jsou lokality, propojení lokalit, mosty a připojení, nemá úplnou sadu argumentů k provedení změn. Ve skutečnosti nikdy neexistoval skriptovatelný, předinstalovaný nástroj Windows navržený speciálně pro správce, který by umožňoval vytváření a úpravu topologie AD DS. Vzhledem k tomu, že služba Active Directory zrala v milionech zákaznických prostředí, je potřeba hromadně upravit logické informace služby Active Directory.

Například po rychlém rozšíření nových poboček v kombinaci s konsolidací ostatních můžete mít stovky změn lokality, které můžete provést na základě fyzických umístění, změn sítě a nových požadavků na kapacitu. Místo použití dssites.msc a Adsiedit.msc k provádění změn můžete automatizovat. To je zvlášť působivé, když začínáte tabulkou dat poskytovaných týmy sítě a zařízení.

Rutiny Get-Adreplication\* vrací informace o topologii replikace a jsou užitečné pro hromadné předávání do rutin Set-Adreplication\*. Get cmdlety nemění data, pouze zobrazují data nebo vytvářejí objekty relací prostředí Windows PowerShell, které lze předat pomocí kanálu do cmdletů Set-Adreplication\*. Rutiny New a Remove jsou užitečné pro vytváření nebo odebírání objektů topologie služby Active Directory.

Můžete například vytvořit nové weby pomocí souboru CSV:

Import-Csv -path C:\newsites.csv | new-adreplicationsite

Snímek obrazovky znázorňující rozhraní Poznámkového bloku

Snímek obrazovky, který ukazuje, jak vytvořit nové weby pomocí souboru CSV

Alternativně můžete vytvořit nové propojení lokality mezi dvěma existujícími lokalitami s vlastním intervalem replikace a náklady na lokalitu:

New-ADReplicationSiteLink -name "chicago<-->waukegan" -sitesincluded chicago,waukegan -cost 50 -replicationfrequencyinminutes 15

Snímek obrazovky znázorňující vytvoření nového propojení lokality mezi dvěma existujícími lokalitami s vlastním intervalem replikace a náklady na lokalitu

Alternativně vyhledejte každou lokalitu v doménové struktuře a nahraďte jejich atributy Možnosti příznakem pro povolení oznámení o změnách mezi lokalitami, aby bylo možné replikovat s maximální rychlostí s kompresí:

Get-ADReplicationSiteLink -filter * | set-adobject -replace @{options=$($_.options -bor 1)}

Pokročilá správa pomocí PowerShellu

Important

Nastavte -bor 5 tak, aby se zakázala komprese i u těchto odkazů na web.

Případně můžete vyhledat všechna místa, ve kterých chybí přiřazení podsítě, aby bylo možné seznam odsouhlasit se skutečnými podsítěmi těchto umístění:

Get-ADReplicationSite -filter * -property subnets | where-object {!$_.subnets -eq "*"} | format-table name

Snímek obrazovky znázorňující, jak najít všechna místa, ve kterých chybí přiřazení podsítí, aby bylo možné seznam odsouhlasit se skutečnými podsítěmi těchto umístění

Viz také

Úvod do replikace a správy topologie služby Active Directory pomocí Prostředí Windows PowerShell (úroveň 100)