Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit onderwerp worden de AD DS-cmdlets voor replicatie en topologiebeheer in meer detail uitgelegd en vindt u aanvullende voorbeelden. Zie Inleiding tot Active Directory-replicatie en topologiebeheer met Windows PowerShell (niveau 100) voor een inleiding.
Introduction
De volgende tabel bevat replicatie- en topologie-cmdlets die zijn toegevoegd aan de Active Directory Windows PowerShell-module:
| Cmdlet | Explanation |
|---|---|
| Get-ADReplicationAttributeMetadata | Retourneert replicatiemetagegevens van kenmerken voor een object |
| Get-ADReplicationConnection | Retourneert details van het verbindingsobject van de domeincontroller |
| Get-ADReplicationFailure | Retourneert de meest recente fout bij replicatie voor een domeincontroller |
| Get-ADReplicationPartnerMetadata | Hiermee wordt de replicatieconfiguratie van een domeincontroller geretourneerd |
| Get-ADReplicationQueueOperation | Retourneert de huidige achterstand in de replicatiewachtrij |
| Get-ADReplicationSite | Retourneert site-informatie |
| Get-ADReplicationSiteLink | Retourneert sitekoppelingsgegevens |
| Get-ADReplicationSiteLinkBridge | Retourneert informatie over de koppelingsbrug van de site |
| Get-ADReplicationSubnet | Retourneert AD-subnetgegevens |
| Get-ADReplicationUpToDatenessVectorTable | Geeft als resultaat de UTD-vector voor een domeincontroller |
| Get-ADTrust | Retourneert informatie over een vertrouwensrelatie tussen domeinen of forests |
| New-ADReplicationSite | Hiermee maakt u een nieuwe site |
| New-ADReplicationSiteLink | Hiermee maakt u een nieuwe sitekoppeling |
| New-ADReplicationSiteLinkBridge | Hiermee maakt u een nieuwe sitekoppelingsbrug |
| New-ADReplicationSubnet | Hiermee maakt u een nieuw AD-subnet |
| Remove-ADReplicationSite | Een site verwijderen |
| Remove-ADReplicationSiteLink | Hiermee verwijdert u een sitekoppeling |
| Remove-ADReplicationSiteLinkBridge | Verwijdert een sitekoppelingsbrug |
| Remove-ADReplicationSubnet | Hiermee verwijdert u een AD-subnet |
| Set-ADReplicationConnection | Hiermee wijzigt u een verbinding |
| Set-ADReplicationSite | Hiermee wijzigt u een site |
| Set-ADReplicationSiteLink | Hiermee wijzigt u een sitekoppeling |
| Set-ADReplicationSiteLinkBridge | Hiermee wijzigt u een sitekoppelingsbrug |
| Set-ADReplicationSubnet | Hiermee wijzigt u een AD-subnet |
| Sync-ADObject | Dwingt replicatie van één object af |
De meeste van deze cmdlets hebben hun basis in Repadmin.exe. Andere cmdlets (niet vermeld) verwerken functies zoals dynamisch toegangsbeheer en door groepen beheerde serviceaccounts.
Voer de volgende opdracht uit voor een volledige lijst met alle Active Directory Windows PowerShell-cmdlets:
Get-Command -module ActiveDirectory
Raadpleeg de Help voor een volledige lijst met alle argumenten voor Active Directory Windows PowerShell-cmdlets. Voorbeeld:
Get-Help New-ADReplicationSite
Update-Help De cmdlet gebruiken om Help-bestanden te downloaden en te installeren
Replicatie en metagegevens
Repadmin.exe valideert de status en consistentie van Active Directory-replicatie. Repadmin.exe biedt eenvoudige opties voor het bewerken van gegevens- sommige argumenten ondersteunen bijvoorbeeld CSV-uitvoer, maar automatisering vereist over het algemeen parseren via uitvoer van tekstbestanden. De Active Directory-module voor Windows PowerShell is de eerste poging om een optie aan te bieden die echte controle over de geretourneerde gegevens mogelijk maakt; Hiervoor moest u scripts maken of hulpprogramma's van derden gebruiken.
Daarnaast implementeren de volgende cmdlets een nieuwe parameterset van Target, Scope en EnumerationServer:
Get-ADReplicationFailure
Get-ADReplicationPartnerMetadata
Get-ADReplicationUpToDatenessVectorTable
Het argument Doel accepteert een door komma's gescheiden lijst met tekenreeksen die de doelservers, sites, domeinen of forests identificeren die zijn opgegeven met het argument Bereik . Een sterretje (*) is ook toegestaan en betekent dat alle servers binnen het opgegeven bereik. Als er geen bereik is opgegeven, impliceert dit alle servers in het forest van de huidige gebruiker. Het argument Bereik geeft de breedtegraad van de zoekopdracht aan. Acceptabele waarden zijn Server, Site, Domein en Forest. De EnumerationServer geeft de server op die de lijst met domeincontrollers opsommen die zijn opgegeven in Target en Scope. Het werkt hetzelfde als het argument Server en vereist dat de opgegeven server de Active Directory-webservice uitvoert.
Om de cmdlets te introduceren, volgen hier enkele voorbeeldscenario's die laten zien welke mogelijkheden onmogelijk zijn zonder repadmin.exe; met deze voorbeelden worden de administratieve mogelijkheden duidelijk. Raadpleeg de Help voor cmdlets voor specifieke gebruiksvereisten.
Get-ADReplicationAttributeMetadata
Deze cmdlet is vergelijkbaar met repadmin.exe /showobjmeta. Hiermee kunt u replicatiemetagegevens retourneren, zoals wanneer een kenmerk is gewijzigd, de oorspronkelijke domeincontroller, de versie- en USN-gegevens en kenmerkgegevens. Deze cmdlet is handig voor het controleren waar en wanneer er een wijziging is opgetreden.
In tegenstelling tot Repadmin biedt Windows PowerShell flexibele zoek- en uitvoerbeheer. U kunt bijvoorbeeld de metagegevens van het object Domeinadministrator uitvoeren, geordend als een leesbare lijst:
Get-ADReplicationAttributeMetadata -object "cn=domain admins,cn=users,dc=corp,dc=contoso,dc=com" -server dc1.corp.contoso.com -showalllinkedvalues | format-list
U kunt de gegevens ook in een tabel rangschikken als repadmin:
Get-ADReplicationAttributeMetadata -object "cn=domain admins,cn=users,dc=corp,dc=contoso,dc=com" -server dc1.corp.contoso.com -showalllinkedvalues | format-table -wrap
U kunt ook metagegevens voor een hele klasse objecten ophalen door de cmdlet Get-Adobject te pipelinen met een filter, zoals alle groepen, en dat vervolgens te combineren met een specifieke datum. De pijplijn is een kanaal dat wordt gebruikt tussen meerdere cmdlets om gegevens door te geven. Als u alle groepen op een bepaalde manier wilt zien die op 13 januari 2012 zijn gewijzigd:
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
Zie Pijplijnen en pijplijnen in Windows PowerShell voor meer informatie over meer Windows PowerShell-bewerkingen met pijplijnen.
U kunt ook alle groepen met Tony Wang als lid achterhalen en wanneer de groep voor het laatst is gewijzigd:
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
Als u alle objecten wilt vinden die gezaghebbend hersteld zijn met behulp van een systeemstatusback-up in het domein, op basis van hun kunstmatig verhoogde versie:
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
U kunt ook alle metagegevens van gebruikers naar een CSV-bestand verzenden voor later onderzoek in Microsoft Excel:
Get-ADObject -filter 'objectclass -eq "user"' | Get-ADReplicationAttributeMetadata -server dc1.corp.contoso.com -showalllinkedvalues | export-csv allgroupmetadata.csv
Get-ADReplicationPartnerMetadata
Deze cmdlet retourneert informatie over de configuratie en status van replicatie voor een domeincontroller, zodat u problemen kunt bewaken, inventariseren of oplossen. In tegenstelling tot Repadmin.exebetekent het gebruik van Windows PowerShell dat u alleen de gegevens ziet die belangrijk voor u zijn, in de gewenste indeling.
Bijvoorbeeld de leesbare replicatiestatus van één domeincontroller:
Get-ADReplicationPartnerMetadata -target dc1.corp.contoso.com
Alternatief is de laatste keer dat een domeincontroller inkomende replicaties en zijn partners heeft uitgevoerd, in tabelvorm weergegeven:
Get-ADReplicationPartnerMetadata -target dc1.corp.contoso.com | format-table lastreplicationattempt,lastreplicationresult,partner -auto
U kunt ook contact opnemen met alle domeincontrollers in het forest en een van de domeincontrollers weergeven waarvan de laatste poging tot replicatie om welke reden dan ook is mislukt:
Get-ADReplicationPartnerMetadata -target * -scope server | where {$_.lastreplicationresult -ne "0"} | ft server,lastreplicationattempt,lastreplicationresult,partner -auto
Get-ADReplicationFailure
Deze cmdlet kan worden gebruikt om informatie over recente fouten in replicatie te retourneren. Het is vergelijkbaar met Repadmin.exe /showreplsum, maar nogmaals, met veel meer controle dankzij Windows PowerShell.
U kunt bijvoorbeeld de meest recente fouten van een domeincontroller ophalen en de partners die het niet heeft kunnen bereiken:
Get-ADReplicationFailure dc1.corp.contoso.com
U kunt ook een tabelweergave retourneren voor alle servers in een specifieke logische AD-site, geordend voor eenvoudiger weergeven en alleen de meest kritieke gegevens bevatten:
Get-ADReplicationFailure -scope site -target default-first-site-name | format-table server,firstfailuretime,failurecount,lasterror,partner -auto
Get-ADReplicationQueueOperation en Get-ADReplicationUpToDatenessVectorTable
Beide cmdlets geven extra details van de domeincontroller terug en of deze up-to-date is, inclusief nog te verwerken replicatie- en versievectorinformatie.
Sync-ADObject
Deze cmdlet is vergelijkbaar met het uitvoeren vanRepadmin.exe /replsingleobject. Het is erg handig wanneer u wijzigingen aanbrengt waarvoor buiten-bandreplicatie is vereist, met name om een probleem op te lossen.
Als iemand bijvoorbeeld het gebruikersaccount van de CEO heeft verwijderd en het vervolgens heeft hersteld met de Prullenbak van Active Directory, wilt u het waarschijnlijk onmiddellijk naar alle domeincontrollers repliceren. U wilt dit waarschijnlijk ook doen zonder dat u replicatie van alle andere aangebrachte objectwijzigingen afdwingt; Daarom hebt u immers een replicatieschema, om overbelasting van WAN-koppelingen te voorkomen.
Get-ADDomainController -filter * | foreach {Sync-ADObject -object "cn=tony wang,cn=users,dc=corp,dc=contoso,dc=com" -source dc1 -destination $_.hostname}
Topology
Hoewel Repadmin.exe goed is bij het retourneren van informatie over replicatietopologie zoals sites, sitekoppelingen, sitekoppelingsbruggen en verbindingen, heeft het geen uitgebreide set argumenten om wijzigingen aan te brengen. In feite is er nog nooit scriptbaar, in-box Windows-hulpprogramma dat speciaal is ontworpen voor beheerders om AD DS-topologie te maken en te wijzigen. Aangezien Active Directory in miljoenen klantomgevingen volwassen is geworden, wordt de noodzaak om logische Informatie van Active Directory bulksgewijs te wijzigen duidelijk.
Na een snelle uitbreiding van nieuwe filialen, in combinatie met de samenvoeging van anderen, hebt u bijvoorbeeld honderd sitewijzigingen die u kunt aanbrengen op basis van fysieke locaties, netwerkwijzigingen en nieuwe capaciteitsvereisten. In plaats van Dssites.msc en Adsiedit.msc te gebruiken om wijzigingen aan te brengen, kunt u automatiseren. Dit is vooral interessant wanneer u begint met een spreadsheet met gegevens die worden geleverd door uw netwerk- en faciliteitenteams.
De Get-Adreplication\* cmdlets geven informatie over de replicatietopologie en zijn nuttig voor het pipelinen in de Set-Adreplication\* cmdlets in grote hoeveelheden. Get-cmdlets veranderen geen data, ze tonen alleen data of maken Windows PowerShell-sessieobjecten die via de pipeline kunnen worden doorgestuurd naar Set-Adreplication\* cmdlets. De cmdlets Nieuw en Verwijderen zijn handig voor het maken of verwijderen van Active Directory-topologieobjecten.
U kunt bijvoorbeeld nieuwe sites maken met behulp van een CSV-bestand:
Import-Csv -path C:\newsites.csv | new-adreplicationsite
U kunt ook een nieuwe sitekoppeling maken tussen twee bestaande sites met een aangepast replicatie-interval en sitekosten:
New-ADReplicationSiteLink -name "chicago<-->waukegan" -sitesincluded chicago,waukegan -cost 50 -replicationfrequencyinminutes 15
U kunt ook elke site in het forest zoeken en hun Options-kenmerken vervangen door de vlag om notificaties van sitewijzigingen mogelijk te maken, zodat replicatie met maximale snelheid en compressie kan plaatsvinden.
Get-ADReplicationSiteLink -filter * | set-adobject -replace @{options=$($_.options -bor 1)}
Important
Stel -bor 5 in om ook compressie op deze sitekoppelingen uit te schakelen.
U kunt ook zoeken naar alle sites die subnettoewijzingen missen om de lijst af te stemmen met de werkelijke subnetten van deze locaties:
Get-ADReplicationSite -filter * -property subnets | where-object {!$_.subnets -eq "*"} | format-table name
Zie ook
Inleiding tot Active Directory-replicatie en topologiebeheer met Windows PowerShell (niveau 100)