Introduction to Active Directory Replication and Topology Management Using Windows PowerShell (Level 100)

适用范围:Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012

Active Directory 的 Windows PowerShell 包含管理复制、站点、域和林、域控制器和分区的功能。 过去的管理工具(如 Active Directory 站点和服务管理单元与 repadmin.exe)的用户将发现如今也可在 Active Directory 的 Windows PowerShell 上下文中使用相似功能。 此外,cmdlet 可与现有的 Active Directory 的 Windows PowerShell cmdlet 兼容,从而营造简化的体验并允许客户轻松创建自动化脚本。

注意

Active Directory 的 Windows PowerShell 复制和拓扑 cmdlet 可用于以下环境:

  • Windows Server 2012 域控制器
  • 已安装了适用于 AD DS 和 AD LDS 的远程服务器管理工具的 Windows Server 2012。
  • 已安装了适用于 AD DS 和 AD LDS 的远程服务器管理工具的 Windows® 8。

安装 Windows PowerShell 的 Active Directory 模块

在运行 Windows Server 2012 的服务器上安装 AD DS 服务器角色时,会默认安装 Windows PowerShell 的 Active Directory 模块。 无需添加服务器角色之外的任何其他步骤。 还可以通过安装远程服务器管理工具在运行 Windows Server 2012 的服务器上安装 Active Directory 模块,并且可以通过下载并安装远程服务器管理工具 (RSAT) 在运行 Windows 8 的计算机上安装 Active Directory 模块。 有关安装步骤,请参阅 说明

用于测试 Active Directory 的 Windows PowerShell 复制和拓扑管理 cmdlet 的方案

以下方案是为了帮助管理员熟悉新的管理 cmdlet 而设计:

  • 获取所有控制器及相应站点的列表

  • 管理复制拓扑

  • 查看复制状态和信息

实验室要求

  • 两个 Windows Server 2012 域控制器:DC1 和 DC2,是 contoso.com 域的一部分,并位于该域的 CORPORATE 站点中。

查看域控制器及其站点

在此步骤中,你将使用 Windows PowerShell 的 Active Directory 模块查看此域的现有域控制器和复制拓扑。

要完成以下程序中的步骤,你必须是域管理员组的成员或拥有同等权限。

查看所有 Active Directory 站点

  1. 在“DC1”上,单击任务栏上的“Windows PowerShell”

  2. 键入下列命令:

    Get-ADReplicationSite -Filter *

    这会返回关于每个站点的详细信息。 Filter 参数在整个 Active Directory PowerShell cmdlet 中用于限制返回的对象列表。 在这种情况下,星号 (*) 指示所有站点对象。

    提示

    你可使用 Tab 键自动完成 Windows PowerShell 中的命令。

    例如,键入 Get-ADRep 并按“Tab”键多次,以跳过匹配的命令,直到你达到 Get-ADReplicationSite。 自动完成也适用于参数名称,例如 Filter

    若要将 Get-ADReplicationSite 命令的输出格式化为一个表格,并限为只显示特定字段,则可将输出通过管道发送到 Format-Table 命令(或简称为“ft”):

    Get-ADReplicationSite -Filter * | ft Name

    这会返回较短版本的站点列表,只包括“名称”字段。

生成所有域控制器的表格

  • 在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:

    Get-ADDomainController -Filter * | ft Hostname,Site

    此命令会返回域控制器主机名称以及它们的站点关联。

管理复制拓扑

在以前步骤中,运行该命令 Get-ADDomainController -Filter * | ft Hostname,Site 后,DC2 列为 CORPORATE 站点的一部分。 在以下过程中,你将创建新的分支站点 BRANCH1,创建新的站点链接,并设置站点链接成本和复制频率,然后将 DC2 移到 BRANCH1

要完成以下程序中的步骤,你必须是域管理员组的成员或拥有同等权限。

创建新站点

  • 在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:

    New-ADReplicationSite BRANCH1

    此命令会创建新的分支机构站点 branch1。

  • 在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:

    New-ADReplicationSiteLink 'CORPORATE-BRANCH1' -SitesIncluded CORPORATE,BRANCH1 -OtherAttributes @{'options'=1}

    该命令创建指向 BRANCH1 的站点链接,并启用更改通知过程。

    提示

    使用“Tab”自动完成参数名称,例如 -SitesIncluded-OtherAttributes(而非手动键入它们)。

  • 在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:

    Set-ADReplicationSiteLink CORPORATE-BRANCH1 -Cost 100 -ReplicationFrequencyInMinutes 15

    该命令将指向 BRANCH1 的站点链接成本设置为 100,并将该站点的复制频率设置为 15 分钟

将域控制器移动到不同站点

  • 在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:

    Get-ADDomainController DC2 | Move-ADDirectoryServer -Site BRANCH1

    该命令将域控制器 DC2 移到 BRANCH1 站点。

验证

  • 单击“服务器管理器”,单击“工具”,然后单击“Active Directory 站点和服务”,并验证以下各项:

    验证 BRANCH1 站点包含所有来自 Windows PowerShell 命令的正确值。

    验证已创建 CORPORATE-BRANCH1 站点链接,并连接了 BRANCH1CORPORATE 站点。

    验证 DC2 现已在 BRANCH1 站点中。 此外,你可以打开 Windows PowerShell 的 Active Directory 模块,并键入以下命令,以验证 DC2 现已在 BRANCH1 站点:Get-ADDomainController -Filter * | ft Hostname,Site.

查看复制状态信息

在以下过程中,你会将一个 Windows PowerShell 用于 Active Directory 复制和管理 cmdlet Get-ADReplicationUpToDatenessVectorTable DC1,以便使用每个域控制器维护的最新矢量表生成简单的复制报告。 这个最新矢量表将跟踪从林中每个域控制器观察到的最高起源写入 USN。

要完成以下程序中的步骤,你必须是域管理员组的成员或拥有同等权限。

查看单独一个域控制器的最新是量表

  1. 在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:

    Get-ADReplicationUpToDatenessVectorTable DC1

    这显示了林中每个域控制器的 DC1 观察到的最高 USN 列表。 Server 值参考了维护该表的服务器,在这种情况下服务器为 DC1Partner 值参考了(直接或间接)做出更改的复制伙伴。 UsnFilter 值是来自 Partner 参数的 DC1 观察到的最高 USN。 如果将新的域控制器添加到林中,它将不会出现在 DC1 的表格中,直到 DC1 接收到来自新域的更改。

查看域中所有域控制器的最新矢量表

  1. 在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:

    Get-ADReplicationUpToDatenessVectorTable * | sort Partner,Server | ft Partner,Server,UsnFilter

    该命令使用 * 替换了 DC1,因此收集的最新矢量表数据来自所有域控制器。 数据按 PartnerServer 排序,然后显示在表格中。

    排序允许你轻松对给予复制伙伴每个域控制器观察到的最后 USN 进行比较。 这是检查环境中是否正在进行复制的快速方法。 如果复制正常工作,所有域控制器中为给定复制伙伴报告的 UsnFilter 值必须非常相似。

另请参阅

Advanced Active Directory Replication and Topology Management Using Windows PowerShell (Level 200)