在Windows Server 2012中复制虚拟域控制器
Jim 发表于:13年04月02日 13:00 [编译] DOIT.com.cn
复制
VM-Generation-ID的安全复制功能可以成功地复制Windows Server 2012域控制器。复制过程包括以下几个步骤:
● 准备环境
● 授权域控制器作为复制源
● 检查并生成应用程序和服务列表
● 配置源域控制器
● 导出,复制,导入,重命名源域控制器,使之成为一个新的虚拟机
● 启动这个新虚拟机
● 完成
1. 准备环境
你要运行一些命令来验证负责复制域控制器和PDC Emulator的驱动,要保证在Windows Server 2012域控制器上能够使用。
检查VM-Generation-ID驱动
Windows Server 2012上的Microsoft Hyper-V 3.0提供了一个叫做Microsoft Hyper-V Generation Counter的驱动(vmgencounter.sys)。这个驱动程序负责复制域控制器。你可以在Hyper-V Host上的Device Manager里查看这个驱动是否可用。
检查PDC Emulator
源域控制器必须有访问控制权,让域控制器对自身进行复制。默认情况下,Cloneable Domain Controllers这个组有此权限并且没有成员。FSMO角色转移到Windows Server 2012域控制器时,PDCE创建了该组。
2. 授权域控制器作为复制源
为Cloneable Domain Controllers安全组添加源域控制器计算机对象,好让这个域控制器用于复制。复制过程会检查当前的域控制器是否被指定用于复制虚拟域控制器。
3. 检查应用程序和服务列表
你需要检查安装在源域控制器上的应用程序和服务列表。
运行在计算机上的每一个应用程序或服务都会创建“安全标识符”来识别一些其内部的组件。检查域控制器上会受到复制过程影响的应用程序是很有必要的一步。
若要获取已安装的应用程序和服务列表,请运行下面这个PowerShell命令:
Get-ADDCCloningExcludedApplicationList
获得列表之后,检查应用程序发行商,看它们的应用程序是否受影响。在你最终确定了应用程序列表之后,你需要使用下面这条命令生成一个CustomDCCloneAllowList.XML文件:
Get-ADDCCloningExcludedApplicationList -GenerateXML
CustomDCCloneAllowList.XML文件保存在%SystemRoot%\NTDS\ 目录下
4. 配置源域控制器
这里,要运行一个PowerShell命令,在%SystemRoot%\NTDS文件夹下生成DCCloneConfig.XML文件。该文件包括复制的域控制器的配置信息。%SystemRot%\System32文件夹下有一个DCCloneConfig.XML样板。该样板文件名为SampleDCCloneConfig.XML。
运行下面的PowerShell命令来生成DCCloneConfig.XML文件:
New-ADDCCloneConfigFile -CloneComputerName "Name_of_New_DC" -SiteName "Name_of_AD_Site"
-Static -IPv4Address "IP_Address_of_New_DC" -IPv4SubnetMask "Subnet_Mask_for_New_DC"
-IPv4DefaultGateway "Gateway_For_New_DC" -IPv4DNSResolver "IP_Address_of_DNS_Server"
复制文件生成之后,使用下面的PowerShell命令或使用Hyper-V Manager关闭源域控制器:
Stop-VM -Name "SourceDC" - ComputerName "HyperVHost"
5. 导出,复制,导入,重命名源域控制器,使之成为一个新的虚拟机
在这里,源域控制器已经准备好了必要的复制配置文件。运行下面的PowerShell命令来对源域控制器进行导出,导入和重命名:
导出源域控制器的虚拟机:
Export-VM -Name "SourceDC" - ComputerName "HyperVHost" -Path "E:\ExportedSourceDC"
将E:\ExportedSourceDC文件夹内容复制到一个新的Hyper-V Host上
导入并生成一个新的VM-Generation-ID:
$vm = Import-VM -Path "E:\ExportedSourceDC\SourceDC\Virtual Machines" -Copy -GenerateNewId
注:GenerateNewID才能让域控制器被成功复制。如果你导入到同一个Hyper-V Host里,务必在导入虚拟机命令中使用下面的参数来指定文件夹位置:
-VhdDestinationPath
-SnapshotFilePath
-SmartPagingFilePath
-VirtualMachinePath
重命名新复制的虚拟机:
Rename-VM -VM $vm -New-Name "VirtualDC2"
6. 启动新虚拟机
最后,启动源域控制器和新导入的复制的虚拟机。复制的虚拟机启动后,它会处理DCCloneConfig.XML文件中的指令来配置这个虚拟机的计算机名称,IP地址和AD站点,就是你在第四步里使用New-ADDCCloneConfigFile命令指定的内容。
7. 完成
复制的域控制器也是Cloneable Domain Controllers组的一部分。记得从这个组里移除新复制的域控制器的计算机对象。