Active Directory 的 Windows PowerShell 包含管理复制、站点、域和林、域控制器和分区的功能。 过去的管理工具(如 Active Directory 站点和服务管理单元与 repadmin.exe)的用户将发现如今也可在 Active Directory 的 Windows PowerShell 上下文中使用相似功能。 此外,cmdlet 可与现有的 Active Directory 的 Windows PowerShell cmdlet 兼容,从而营造简化的体验并允许客户轻松创建自动化脚本。
Note
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 域控制器: 属于 contoso.com 域的 DC1 和 DC2 ,驻留在该域中的公司站点中。
查看域控制器及其站点
在此步骤中,你将使用 Windows PowerShell 的 Active Directory 模块查看此域的现有域控制器和复制拓扑。
要完成以下程序中的步骤,你必须是域管理员组的成员或拥有同等权限。
查看所有 Active Directory 站点
在 DC1 上,单击任务栏上的 Windows PowerShell 。
输入以下命令:
Get-ADReplicationSite -Filter *这会返回关于每个站点的详细信息。
Filter参数在整个 Active Directory PowerShell cmdlet 中用于限制返回的对象列表。 在这种情况下,星号 (*) 指示所有站点对象。Tip
你可使用 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,SiteDC2 被列为 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 的网站链接,并打开了更改通知过程。
Tip
使用“Tab”自动完成参数名称,例如
-SitesIncluded和-OtherAttributes(而非手动键入它们)。
设置链接成本和复制频率
在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:
Set-ADReplicationSiteLink CORPORATE-BRANCH1 -Cost 100 -ReplicationFrequencyInMinutes 15此命令将站点链接成本设置为 100BRANCH1,并将站点的复制频率设置为 15 分钟。
将域控制器移动到不同站点
在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:
Get-ADDomainController DC2 | Move-ADDirectoryServer -Site BRANCH1此命令将域控制器 DC2 移动到 BRANCH1 站点。
Verification
若要验证站点创建、新站点链接和成本以及复制频率
单击 “服务器管理器”,单击“ 工具 ”,然后单击“ Active Directory 站点和服务 ”并验证以下内容:
验证 BRANCH1 站点是否包含 Windows PowerShell 命令中的所有正确值。
验证是否已创建公司BRANCH1站点链接,并连接BRANCH1和公司网站。
验证 DC2 现在是否位于 BRANCH1 站点中。 此外,你可以打开 Windows PowerShell 的 Active Directory 模块,并键入以下命令,以验证 DC2 现已在 BRANCH1 站点:
Get-ADDomainController -Filter * | ft Hostname,Site.
查看复制状态信息
在以下过程中,你会将一个 Windows PowerShell 用于 Active Directory 复制和管理 cmdlet Get-ADReplicationUpToDatenessVectorTable DC1,以便使用每个域控制器维护的最新矢量表生成简单的复制报告。 这个最新矢量表将跟踪从林中每个域控制器观察到的最高起源写入 USN。
要完成以下程序中的步骤,你必须是域管理员组的成员或拥有同等权限。
查看单独一个域控制器的最新是量表
在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:
Get-ADReplicationUpToDatenessVectorTable DC1这显示了 DC1 针对林中每个域控制器看到的最高 USN 的列表。 服务器值是指维护表的服务器,在本例中为 DC1。 合作伙伴值是指对复制伙伴(直接或间接)进行更改。 UsnFilter 值是 DC1 从合作伙伴看到的最高 USN 值。 如果向林中添加了新的域控制器,则在 DC1 收到源自新域的更改之前,它不会显示在 DC1 的表中。
查看域中所有域控制器的最新矢量表
在提示“Windows PowerShell 的 Active Directory 模块”时键入以下命令:
Get-ADReplicationUpToDatenessVectorTable * | sort Partner,Server | ft Partner,Server,UsnFilter此命令将 DC1
*替换为 ,因此从所有域控制器收集 up-to-dateness 向量表数据。 数据按 合作伙伴 和 服务器 排序,然后显示在表中。排序允许你轻松对给予复制伙伴每个域控制器观察到的最后 USN 进行比较。 这是检查环境中是否正在进行复制的快速方法。 如果复制正常工作,所有域控制器中为给定复制伙伴报告的 UsnFilter 值必须非常相似。