将单个域控制器服务器从 2008R2 升级到服务器 2019

将单个域控制器服务器从 2008R2 升级到服务器 2019

我们有一个客户端,其 Active Directory 环境在 Windows Server 2008 R2 上非常老旧。我们将用新服务器替换它,并希望升级现有服务器以保留所有权限和配置文件。我们意识到我们需要分几个步骤完成此操作。我们创建了一个 Hyper-V 服务器来测试升级。在首次尝试升级到 2012 R2 期间,我们收到一条错误消息,提示需要运行 Forestprep 和 Domainprep。Forestprep 已成功完成,但 Domainprep 在复制方面存在问题。很久以前有另一台服务器,但在我们获得客户端之前它已退役,因此我们无法访问它。我能够手动删除站点和服务中的旧服务器以有效禁用复制。现在,我在 Active Directory 域服务中创建 CN=TPM 设备、DC=CVV、DC=local 时收到权限错误。请参阅以下日志摘录:

[Status/Consequence]

The operation has not run or is not currently running. It will be run next.
[2024/02/13:16:51:53.609]
Adprep was about to call the following LDAP API. ldap_add_s(). The entry to add is CN=TPM Devices,DC=CVV,DC=local.
[2024/02/13:16:51:53.610]
LDAP API ldap_add_s() finished, return code is 0x10 
[2024/02/13:16:51:53.617]
Adprep was unable to create the object CN=TPM Devices,DC=CVV,DC=local in Active Directory Domain Services.

[Status/Consequence]

This Adprep operation failed.

[User Action]

Check the log file ADPrep.log in the C:\Windows\debug\adprep\logs\20240213165153 directory for more information. Restart Adprep.
[2024/02/13:16:51:53.621]
Adprep encountered an LDAP error. 

Error code: 0x10. Server extended error code: 0x57, Server error message: 00000057: LdapErr: DSID-0C090CB7, comment: Error in attribute conversion operation, data 0, v1db1


DSID Info:
DSID: 0x1811100d
ldap error = 0x10
NT BUILD: 9600
NT BUILD: 16384

[2024/02/13:16:51:53.628]
Adprep was unable to update domain information. 

[Status/Consequence]

Adprep requires access to existing domain-wide information from the infrastructure master in order to complete this operation.

[User Action]

Check the log file, ADPrep.log, in the C:\Windows\debug\adprep\logs\20240213165153 directory for more information. 

D:\support\adprep>netdom query fsmo
Schema master               Culinary01.CVV.local
Domain naming master        Culinary01.CVV.local
PDC                         Culinary01.CVV.local
RID pool manager            Culinary01.CVV.local
Infrastructure master       Culinary01.CVV.local
The command completed successfully.

我使用提升的命令提示符运行了 adprep /domainprep,该提示符以属于域管理员和企业管理员的管理员帐户登录。有人知道如何修复此错误吗?

joeqwerty 请求的附加命令结果:

PS C:\Users\cvvadmin> echo $host
Name             : ConsoleHost
Version          : 3.0
InstanceId       : 9b5b8e7f-85bd-40c3-ba0b-b32a0f87f133
UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture   : en-US
CurrentUICulture : en-US
PrivateData      : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
IsRunspacePushed : False
Runspace         : System.Management.Automation.Runspaces.LocalRunspace

PS C:\Users\cvvadmin> Get-ADObject (Get-ADRootDSE).schemaNamingContext -Property objectVersion
DistinguishedName : CN=Schema,CN=Configuration,DC=CVV,DC=local
Name              : Schema
ObjectClass       : dMD
ObjectGUID        : f91149b0-619b-4ee8-90f1-3aa164846200
objectVersion     : 69

PS C:\Users\cvvadmin> Get-ADForest | fl Name,ForestMode
Name       : CVV.local
ForestMode : Windows2000Forest

PS C:\Users\cvvadmin> Get-ADDomain | fl Name,DomainMode
Name       : CVV
DomainMode : Windows2000Domain

PS 输出和 domainprep 日志:

PS C:\Users\cvvadmin> Get-ADObject (Get-ADRootDSE).schemaNamingContext -Property objectVersion
DistinguishedName : CN=Schema,CN=Configuration,DC=CVV,DC=local
Name              : Schema
ObjectClass       : dMD
ObjectGUID        : f91149b0-619b-4ee8-90f1-3aa164846200
objectVersion     : 69

PS C:\Users\cvvadmin> Get-ADForest | fl Name,ForestMode
Name       : CVV.local
ForestMode : Windows2008R2Forest

PS C:\Users\cvvadmin> Get-ADDomain | fl Name,DomainMode
Name       : CVV
DomainMode : Windows2008R2Domain

PS C:\Users\cvvadmin> Dfsrmig /getmigrationstate
Unable to create DFSR Migration log file. Error 1307
All Domain Controllers have migrated successfully to Global state ('Eliminated').
Migration has reached a consistent state on all Domain Controllers.
Succeeded.

Domainprep log:

[Status/Consequence]

The operation has not run or is not currently running. It will be run next.
[2024/02/14:13:29:33.022]
Adprep was about to call the following LDAP API. ldap_add_s(). The entry to add is CN=TPM Devices,DC=CVV,DC=local.
[2024/02/14:13:29:33.025]
LDAP API ldap_add_s() finished, return code is 0x10 
[2024/02/14:13:29:33.033]
Adprep was unable to create the object CN=TPM Devices,DC=CVV,DC=local in Active Directory Domain Services.

[Status/Consequence]

This Adprep operation failed.

[User Action]

Check the log file ADPrep.log in the C:\Windows\debug\adprep\logs\20240214132932 directory for more information. Restart Adprep.
[2024/02/14:13:29:33.039]
Adprep encountered an LDAP error. 

Error code: 0x10. Server extended error code: 0x57, Server error message: 00000057: LdapErr: DSID-0C090CB7, comment: Error in attribute conversion operation, data 0, v1db1


DSID Info:
DSID: 0x1811100d
ldap error = 0x10
NT BUILD: 9600
NT BUILD: 16384

[2024/02/14:13:29:33.048]
Adprep was unable to update domain information. 

[Status/Consequence]

Adprep requires access to existing domain-wide information from the infrastructure master in order to complete this operation.

[User Action]

Check the log file, ADPrep.log, in the C:\Windows\debug\adprep\logs\20240214132932 directory for more information. 

答案1

从 Powershell 运行以下命令并将输出发布到您的问题中:

Get-ADObject (Get-ADRootDSE).schemaNamingContext -Property objectVersion

Get-ADForest | fl Name,ForestMode

Get-ADDomain | fl Name,DomainMode

然后运行以下命令(其中域名.tld是您的 AD 名称):

Set-ADForestMode -Identity domain.tld -ForestMode Windows2008R2Forest

然后从命令提示符执行以下命令,直到状态被消除:

Dfsrmig /getmigrationstate

Dfsrmig /setglobalstate 1

Dfsrmig /getmigrationstate

Dfsrmig /setglobalstate 2

Dfsrmig /getmigrationstate

Dfsrmig /setglobalstate 3

Dfsrmig /getmigrationstate

然后从 Windows Server 安装媒体运行 forestprep/adprep。然后继续升级。

然后,为了确保万无一失,请从 Powershell 运行以下命令(其中域名.tld是您的 AD 名称):

Enable-ADOptionalFeature 'Recycle Bin Feature' -Scope ForestOrConfigurationSet -Target domain.tld

最后...升级完成后,从 Powershell 运行以下命令(其中域名.tld是您的 AD 名称):

Set-ADForestMode -Identity domain.tld -ForestMode Windows2016Forest

答案2

域和林功能级别看起来像 Windows Server 2000。该级别不支持 Windows Server 2016。

因此,您需要添加一个支持Windows Server 2000的操作系统版本的域控制器。然后升级功能级别。


Windows 2000 功能级别支持的域控制器操作系统:

Windows 服务器 2008 R2 Windows 服务器 2008 Windows 服务器 2003 Windows 2000

https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/active-directory- functional-levels#windows-server-2008-r2- functional-levels


另一个选择是设置具有更高功能级别的新域,并使用 ADMT 迁移所有内容


编辑

因此,由于某种原因,adprep 无法访问基础设施主机 Culinary01.CVV.local

请测试连接,Test-NetConnection -ComputerName Culinary01.CVV.local -Port 389, 636 并确保这是网络适配器设置中的 DNS 服务器

还可以从域控制器运行 dcdiag 来验证你的域是否健康

相关内容