在 Active Directory 中配置群集帐户

适用于:Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012、Windows Server 2008 R2、Windows Server 2008、Azure Stack HCI 版本 21H2 和 20H2

在 Windows Server 中,创建故障转移群集并配置群集服务或应用程序时,故障转移群集向导会创建必要的 Active Directory 计算机帐户(也称为计算机对象)并为其提供特定权限。 向导会为群集本身创建一个计算机帐户(此帐户也称为群集名称对象或 CNO),并为大多数类型的群集服务和应用程序(Hyper-V 虚拟机除外)创建一个计算机帐户。 故障转移群集向导会自动设置这些帐户的权限。 如果权限发生更改,则需要将它们改回,以满足群集要求。 本指南介绍这些 Active Directory 帐户和权限,提供了有关它们为何重要的背景信息,并描述了配置和管理帐户的步骤。

故障转移群集所需的 Active Directory 帐户概述

本部分介绍 Active Directory 计算机帐户(也称为 Active Directory 计算机对象),这些帐户对故障转移群集非常重要。 这些帐户如下所示:

  • 用于创建群集的用户帐户。 这是用于启动“创建群集”向导的用户帐户。 该帐户非常重要,因为它提供了为群集本身创建计算机帐户的基础。

  • 群集名称帐户。 (群集本身的计算机帐户,也称为群集名称对象或 CNO)。 此帐户由“创建群集”向导自动创建,其名称与群集相同。 群集名称帐户非常重要,因为通过此帐户,在群集上配置新服务和应用程序时,会自动创建其他帐户。 如果删除群集名称帐户或撤销了该帐户中的权限,则在还原群集名称帐户或恢复正确的权限之前,无法按群集的要求创建其他帐户。

    例如,如果创建名为 Cluster1 的群集,然后尝试在该群集上配置名为 PrintServer1 的群集打印服务器,则 Active Directory 中的 Cluster1 帐户需要保留正确的权限,以便可以使用它创建名为 PrintServer1 的计算机帐户。

    群集名称帐户是在 Active Directory 中计算机帐户的默认容器中创建的。 默认情况下,这是“计算机”容器,但域管理员可以选择将其重定向到另一个容器或组织单位 (OU)。

  • 群集服务或应用程序的计算机帐户(计算机对象)。 在创建大多数类型的群集服务或应用程序(Hyper-V 虚拟机除外)的过程中,“高可用性”向导会自动创建这些帐户。 群集名称帐户被授予控制这些帐户所需的权限。

    例如,如果你有一个名为 Cluster1 的群集,然后创建了一个名为 FileServer1 的群集文件服务器,则“高可用性”向导会创建一个名为 FileServer1 的 Active Directory 计算机帐户。 “高可用性”向导还为 Cluster1 帐户提供控制 FileServer1 帐户所需的权限。

下表描述了这些帐户所需的权限。

帐户 有关权限的详细信息

用于创建群集的帐户

需要对将成为群集节点的服务器具有管理权限。 该帐户在用于域中计算机帐户的容器中还需要“创建计算机对象”和“读取所有属性”权限。

群集名称帐户(群集本身的计算机帐户)

运行“创建群集”向导时,它会在用于域中计算机帐户的默认容器中创建群集名称帐户。 默认情况下,群集名称帐户(与其他计算机帐户一样)最多可以在域中创建十个计算机帐户。

如果在创建群集之前创建群集名称帐户(群集名称对象),即预留帐户,则必须在用于域中计算机帐户的容器中为其授予“创建计算机对象”和“读取所有属性”权限。 还必须禁用该帐户,并将该帐户的完全控制权授予安装群集的管理员使用的帐户。 有关详细信息,请参阅本指南后面的群集名称帐户预留步骤

群集服务或应用程序的计算机帐户

运行“高可用性”向导(以新建群集服务或应用程序)时,在大多数情况下,群集服务或应用程序的计算机帐户是在 Active Directory 中创建的。 群集名称帐户被授予控制此帐户所需的权限。 群集 Hyper-V 虚拟机是一个例外:不会为其创建计算机帐户。

如果为群集服务或应用程序预留计算机帐户,则必须为其配置必需的权限。 有关详细信息,请参阅本指南后面的为群集服务或应用程序预留帐户的步骤

注意

在早期版本的 Windows Server 中,有一个群集服务的帐户。 但从 Windows Server 2008 开始,群集服务在一个提供了服务所需的特定权限的特定上下文(与本地系统上下文相似,但权限减少)中自动运行。 但是,如本指南所述,还需要其他帐户。

如何在故障转移群集中通过向导创建帐户

下图演示了上一小节中描述的计算机帐户(Active Directory 对象)的使用和创建。 当管理员运行“创建群集”向导,然后运行“高可用性”向导(以配置群集服务或应用程序)时,这些帐户就会发挥作用。

Use and creation of computer accounts

注意,上图显示一位管理员在运行“创建群集”向导和“高可用性”向导。 但如果两个帐户都有足够的权限,可能是两位不同的管理员在使用两个不同的用户帐户。 本指南后面与故障转移群集、Active Directory 域和帐户相关的要求中更详细地描述了这些权限。

如果更改群集所需的帐户,会导致怎样的问题

下图说明了如果在“创建群集”向导自动创建群集名称帐户(群集所需的帐户之一)后将其更改,会导致怎样的问题。

Problems if cluster name is changed

如果出现示意图中显示的问题类型,特定事件(1193、1194、1206 或 1207)会记录在事件查看器中。 有关这些事件的详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkId=118271

注意,如果已达到创建计算机对象的域范围配额(默认情况下为 10),则可能会出现为群集服务或应用程序创建帐户时出现的类似问题。 如果有,最好咨询域管理员关于增加配额的问题(尽管这是一个域范围的设),只有在经过仔细考虑并确认上图未描述你的情况后才应更改。 有关详细信息,请参阅排查在群集相关 Active Directory 帐户中进行更改导致的问题

如前三部分所述,必须先满足某些要求,然后才能在故障转移群集上成功配置群集服务和应用程序。 最基本的要求涉及群集节点的位置(在单个域内)以及群集安装人员的帐户权限级别。 如果满足这些要求,故障转移群集向导就可以自动创建群集所需的其他帐户。 下面的列表提供有关这些基本要求的详细信息。

  • 节点:所有节点都必须位于同一个 Active Directory 域中。 (域不能基于 Windows NT 4.0,后者不包含 Active Directory。)

  • 群集安装人员的帐户:群集安装人员必须使用具有以下特征的帐户:

    • 此帐户必须是域帐户。 它不必非得是域管理员帐户。 如果它满足此列表中的其他要求,则可以是域用户帐户。

    • 该帐户必须对将成为群集节点的服务器具有管理权限。 提供此帐户的最简单方法是创建一个域用户帐户,然后将该帐户添加到将成为群集节点的每个服务器上的本地 Administrators 组。 有关详细信息,请参阅本指南后面的为群集安装人员配置帐户的步骤

    • 该帐户(或该帐户所属的组)必须在用于域中计算机帐户的容器中获得“创建计算机对象”和“读取所有属性”权限。 有关详细信息,请参阅本指南后面的为群集安装人员配置帐户的步骤

    • 如果你的组织选择预留群集名称帐户(与群集同名的计算机帐户),则预留群集名称帐户必须向群集安装人员的帐户授予“完全控制”权限。 有关如何预留群集名称帐户的其他重要详细信息,请参阅本指南后面的群集名称帐户预留步骤

提前规划密码重置和其他帐户维护

故障转移群集的管理员有时可能需要重置群集名称帐户的密码。 此操作需要特定权限,即“重置密码”权限。 因此,最佳做法是编辑群集名称帐户的权限(通过使用 Active Directory 用户和计算机管理单元)以授予群集管理员对群集名称帐户的“重置密码”权限。 有关详细信息,请参阅排查群集名称帐户的密码问题

为群集安装人员配置帐户的步骤

群集安装人员的帐户非常重要,因为它提供了为群集本身创建计算机帐户的基础。

完成以下过程所需的最低组成员身份取决于你是创建域帐户并为其分配域中所需的权限,还是仅将帐户(由其他人创建)放入服务器(将成为故障转移群集中的节点)上的本地 Administrators 组。 如果是前者,则“Account Operators”中的成员身份或等效身份是完成此过程所需的最低要求。 如果是后者,则只需要服务器(将成为故障转移群集中的节点)上本地 Administrators 组的成员身份或同等身份。 可在 https://go.microsoft.com/fwlink/?LinkId=83477 中查看有关使用适合的帐户和组成员身份的详细信息。

为群集安装人员配置帐户

  1. 为群集安装人员创建或获取域帐户。 此帐户可以是域用户帐户或 Account Operators 帐户。 如果使用标准用户帐户,则必须在此过程的后面部分为其授予一些额外的权限。

  2. 如果在步骤 1 中创建或获得的帐户未自动包含在域中计算机上的本地 Administrators 组中,请将该帐户添加到服务器(将成为故障转移群集中的节点)上的本地 Administrators 组:

    1. 依次单击“开始”、“管理工具”和“服务器管理器”

    2. 在控制台树中,依次展开“配置”、“本地用户和组”和“组”。

    3. 在中心窗格中,右键单击“Administrators”,然后依次单击“添加到组”和“添加”。

    4. 在“输入要选择的对象名称”下,键入在步骤 1 中创建或获取的用户帐户的名称。 如果出现提示,请输入有足够权限执行此操作的帐户名称和密码。 然后单击“确定”。

    5. 在将成为故障转移群集中的节点的每个服务器上重复这些步骤。

    重要

    必须在将成为群集中的节点的所有服务器上重复这些步骤。

  3. 如果在步骤 1 中创建或获取的帐户是域管理员帐户,请跳过此过程的其余部分。 否则,在用于域中计算机帐户的容器中为该帐户授予“创建计算机对象”和“读取所有属性”权限:

    1. 在域控制器上,依次单击“开始”、“管理工具”,然后单击“Active Directory 用户和计算机”。 如果出现“用户帐户控制”对话框,请确认它显示的是所需操作,然后单击“继续”

    2. 在“查看”菜单上,确保选中“高级功能”。

      选择“高级功能”后,可在“Active Directory 用户和计算机”中的帐户(对象)属性中看到“安全性”标签。

    3. 右键单击默认的“计算机”容器或域中用于创建计算机帐户的默认容器,然后单击“属性”。 “计算机”位于“Active Directory 用户和计算机”/“domain-node”/“计算机”

    4. 在“安全”选项卡上,单击“高级”。

    5. 单击“添加”,键入在步骤 1 中创建或获取的帐户的名称,然后单击“确定”。

    6. 在“计算机的权限条目”对话框中,找到“创建计算机对象”和“读取所有属性”权限,并确保已选中每个权限的“允许”复选框。

      Screenshot that shows Create Computer objects option set to Allow.

群集名称帐户预留步骤

如果不预留群集名称帐户,而是允许在运行“创建群集”向导时自动创建和配置帐户,通常就更简单。 但如果由于组织中的要求而需要预留群集名称帐户,请使用以下过程。

Domain Admins 组中的成员身份或同等身份是完成此过程所需的最低要求。 可在 https://go.microsoft.com/fwlink/?LinkId=83477 中查看有关使用适合的帐户和组成员身份的详细信息。 注意,可在此过程中使用将在创建群集时使用的帐户。

预留群集名称帐户

  1. 确保你知道群集将具有的名称,以及群集创建人员将使用的用户帐户的名称。 (注意,你可以使用该帐户执行此过程。)

  2. 在域控制器上,依次单击“开始”、“管理工具”,然后单击“Active Directory 用户和计算机”。 如果出现“用户帐户控制”对话框,请确认它显示的是所需操作,然后单击“继续”

  3. 在控制台树中,右键单击“计算机”或域中用于创建计算机帐户的默认容器。 “计算机”位于“Active Directory 用户和计算机”/“domain-node”/“计算机”

  4. 单击“新建”,然后单击“计算机”。

  5. 键入将用于故障转移群集的名称,即在“创建群集”向导中将指定的群集名称,然后单击“确定”。

  6. 右键单击刚才创建的帐户,然后单击“禁用帐户”。 如果系统提示你确认选择,请单击“是”。

    必须禁用该帐户,这样在运行“创建群集”向导时,它才能确认将用于群集的帐户当前未被域中的现有计算机或群集使用。

  7. 在“查看”菜单上,确保选中“高级功能”。

    选择“高级功能”后,可在“Active Directory 用户和计算机”中的帐户(对象)属性中看到“安全性”标签。

  8. 右键单击你在步骤 3 中右键单击的文件夹,然后单击“属性”。

  9. 在“安全”选项卡上,单击“高级”。

  10. 依次单击“添加”和“对象类型”,确保选中“计算机”,然后单击“确定”。 然后在“输入要选择的对象名称”下,键入你刚创建的计算机帐户的名称,然后单击“确定”。 如果出现的消息提示你即将添加禁用对象,请单击“确定”。

  11. 在“权限条目”对话框中,找到“创建计算机对象”和“读取所有属性”权限,并确保已选中每个权限的“允许”复选框。

    Permission Entry dialog box

  12. 单击“确定”,直至返回到“Active Directory 用户和计算机”管理单元。

  13. 如果使用创建群集时所用的同一帐户执行此过程,请跳过其余步骤。 否则必须配置权限,使得将用于创建群集的用户帐户完全控制你刚创建的计算机帐户:

    1. 在“查看”菜单上,确保选中“高级功能”。

    2. 右键单击刚创建的计算机帐户,然后单击“属性”。

    3. 在“安全”选项卡上,单击“添加”。 如果出现“用户帐户控制”对话框,请确认它显示的是所需操作,然后单击“继续”

    4. 使用“选择用户、计算机或组”对话框指定创建群集时将使用的用户帐户。 然后单击“确定”。

    5. 选中刚才添加的用户帐户或组,然后选中“完全控制”旁边的“允许”复选框。

      Screenshot that shows the Security tab in the Cluster1 Properties dialog box.

为群集服务或应用程序预留帐户的步骤

如果不为群集服务或应用程序预留计算机帐户,而是允许在运行“高可用性”向导时自动创建和配置帐户,通常就更简单。 但如果由于组织中的要求而需要预留帐户,请使用以下过程。

“Account Operators”组中的成员身份或等效身份是完成此过程所需的最低要求。 可在 https://go.microsoft.com/fwlink/?LinkId=83477 中查看有关使用适合的帐户和组成员身份的详细信息。

为群集服务或应用程序预留帐户

  1. 请确保你知道群集的名称,以及群集服务或应用程序将要使用的名称。

  2. 在域控制器上,依次单击“开始”、“管理工具”,然后单击“Active Directory 用户和计算机”。 如果出现“用户帐户控制”对话框,请确认它显示的是所需操作,然后单击“继续”

  3. 在控制台树中,右键单击“计算机”或域中用于创建计算机帐户的默认容器。 “计算机”位于“Active Directory 用户和计算机”/“domain-node”/“计算机”

  4. 单击“新建”,然后单击“计算机”。

  5. 键入将用于群集服务或应用程序的名称,然后单击“确定”。

  6. 在“查看”菜单上,确保选中“高级功能”。

    选择“高级功能”后,可在“Active Directory 用户和计算机”中的帐户(对象)属性中看到“安全性”标签。

  7. 右键单击刚创建的计算机帐户,然后单击“属性”。

  8. 在“安全”选项卡上,单击“添加”

  9. 单击“对象类型”,确保选中“计算机”,然后单击“确定”。 然后,在“输入要选择的对象名称”下,键入群集名称帐户,然后单击“确定”。 如果出现的消息提示你即将添加禁用对象,请单击“确定”。

  10. 确保已选中群集名称帐户,然后选中“完全控制”旁边的“允许”复选框。

    Security tab

有关详细信息,请参阅排查故障转移群集使用的帐户的问题