如何群集主密钥服务器
若要在主密钥服务器上成功地对企业单一登录 (SSO) 服务进行群集处理,建议你按照本部分中的说明进行操作。
在群集主密钥服务器时,单一登录服务器将与主密钥服务器上的主动群集实例进行通信。 同样,主密钥服务器上的主动群集实例将与 SSO 数据库进行通信。
只有 SSO 管理员才能执行此过程。
注意
不能在网络负载平衡 (NLB) 群集上安装主密钥服务器。
在群集节点上安装和配置企业 SSO
在每个群集节点上安装BizTalk Server。 在 “组件安装”中,选择“ 企业单一 Sign-On 管理模块 ”和“ 企业单一 Sign-On 主机密服务器”。 安装成功完成后,不要运行BizTalk Server配置。
创建 SSO 管理员 和 SSO 关联管理员 域组。 若要创建企业 SSO 服务的群集实例,必须创建这些组作为域组。
创建或指定作为 SSO 管理员 域组成员的域帐户。 每个节点上的企业 SSO 服务都将配置为使用此域帐户登录。 此帐户必须直接在群集中的每个节点上具有 “作为服务登录 ”。
将配置过程中用于登录的帐户添加到域 SSO 管理员 组。
重要
如果没有完成步骤 3 和步骤 4,则配置企业 SSO 服务将失败。
启动BizTalk Server配置。
选择“ 自定义配置” 选项,然后输入 “数据库服务器名称”、“ 用户名”和 “密码” 值。 选择“配置”以继续。
注意
由于此时仅配置企业 SSO 服务,因此只需输入之前在此处创建的域帐户。
从左窗格中选择“ 企业 SSO ”选项,并为企业 SSO 功能设置以下选项:
选中“在此计算机上启用企业单一 Sign-On 检查框。
选择“ 创建新的 SSO 系统”。
输入“服务器名称”和“数据库名称”值的“数据存储”。
验证先前创建的域帐户是与企业 SSO 服务相关联的帐户。
输入先前创建的 SSO Administrators 域组作为与 SSO 管理员角色关联的组。
输入先前创建的 SSO Affiliate Administrators 域组作为与 SSO 关联管理员角色关联的组。
从左窗格中选择“ 企业 SSO 机密备份 ”选项,并提供用于备份企业 SSO 机密的相应参数。 默认情况下,Enterprise SSO 机密备份到 <drive>:\Program Files\Common Files\Enterprise Single Sign-On\SSOxxxx.bak。
单击 “应用配置” 并查看“摘要”。
单击“ 下一步 ”应用配置。
单击“ 完成 ”关闭配置向导。
关闭BizTalk Server配置。
登录到被动群集节点并启动BizTalk Server配置。
选择 “自定义配置” 选项,并为配置第一个群集节点时输入的 数据库服务器名称、 用户名和 密码 输入相同的值。 输入这些值后,单击“ 配置 ”以继续。
从左窗格中选择“ 企业 SSO ”选项,并为企业 SSO 功能设置以下选项:
选择“ 在此计算机上启用企业单一 Sign-On ”选项。
选择“ 加入现有 SSO 系统”。
输入与配置第一个群集节点时输入的 SSO 数据库服务器名称和数据库名称相同的值。
为域帐户输入与配置第一个群集节点时相同的值。
选择“ 应用配置” 以显示“摘要”。
选择“ 下一步 ”应用配置。
选择“ 完成 ”关闭配置向导。
关闭BizTalk Server配置。
更新 SSO 数据库中的主密钥服务器名称
在主动群集节点上的命令提示符下键入以下命令,停止并重新启动企业 SSO 服务:
net stop entsso
和
net start entsso
按照以下步骤将 SSO 数据库中的主机密服务器名称更改为群集中配置的 SSO 网络名称:
注意
指定在包含群集 SSO 资源的同一群集角色中创建的网络名称资源。 例如,名称可以是 SSONETWORKNAME。
将以下代码粘贴到文本编辑器中:
<sso> <globalInfo> <secretServer>SSONETWORKNAME</secretServer> </globalInfo> </sso>
注意
将 SSONETWORKNAME 替换为在 SSO 的群集角色中创建的实际网络名称。
将文件另存为 .xml 文件。 例如,将文件另存为 SSOCLUSTER.xml。
在命令提示符下,将目录更改为企业 SSO 安装文件夹。 默认情况下,安装文件夹为 <drive>:\Program Files\Common Files\Enterprise Single Sign-On。
在命令提示符下键入以下命令,以更新数据库中的主密钥服务器名称:
ssomanage -updatedb XMLFile
注意
XMLFile 是前面保存的 .xml 文件名称的占位符。
创建群集的企业 SSO 资源
如果群集未配置群集分布式事务处理协调器 (MSDTC) 资源,请按照“使用 Windows Server 群集提高 BizTalk Server中的容错”白皮书https://go.microsoft.com/fwlink/?LinkId=69207中的步骤创建群集 MSDTC 资源。
依次单击“开始”、“程序”、“管理工具”和“故障转移群集管理”以启动故障转移群集管理计划。
在左侧窗格中,右键单击“ 故障转移群集管理 ”,然后单击“ 管理群集”。
在 “选择要管理的群集 ”对话框中,输入要管理的群集,然后单击“ 确定”。
在左窗格中单击选择一个包含 IP 地址和网络名称资源的群集服务或应用程序。 按照 如何创建包含磁盘、IP 地址和名称资源的群集组中 的步骤创建具有 IP 地址和网络名称资源的组(如果尚不存在)。
注意
群集的企业 SSO 服务没有明确要求使用同组中的群集物理磁盘资源。
右键单击群集服务或应用程序,指向 “添加资源”,然后单击“ 一般服务 ”以显示“ 新建资源向导 ”对话框。
重要
在“通用服务参数”对话框中,如果未单击以选中“将网络名称用于计算机名称检查”框,则 SSO 客户端计算机在尝试联系企业 SSO 服务的此群集实例时将生成类似于以下内容的错误:
检索主密钥失败。
请确保主密钥服务器名称正确且该服务器可用。 密钥服务器名称: ENTSSO 错误代码: 0x800706D9,终结点映射器中没有更多的终结点可用。
在“新建资源向导”的“选择服务”页上,单击以选择“企业单一 Sign-On 服务”,然后单击“下一步”。
在 “确认 ”页上,单击“ 下一步”。
在 “摘要 ”页上,单击“ 完成”。 企业单一 Sign-On 服务的群集实例将显示在故障转移群集管理界面中心窗格中的“其他资源”下。
右键单击企业单一 Sign-On 服务的群集实例,然后选择 “属性” 以显示“ 企业单一 Sign-On 服务属性 ”对话框。
单击属性对话框的“ 依赖项 ”选项卡,然后单击“ 插入”。
单击“ 资源”下的下拉框,选择“ 名称: 资源”,然后单击“ 确定”。
在第二个群集节点上恢复主密钥
在“故障转移群集管理”中,右键单击包含群集企业单一 Sign-On 服务的群集服务或应用程序,然后单击“ 使此服务或应用程序联机” 以启动群集服务或应用程序中的所有资源。
右键单击群集服务或应用程序,指向 “将此服务或应用程序移动到另一个节点”,然后单击第二个节点。 该步骤将群集服务或包含群集企业单一登录服务的应用程序从第一个节点移动到第二个节点。
右键单击群集企业单一 Sign-On 服务,单击“ 使此服务或应用程序脱机”,然后右键单击企业 SSO 服务的群集实例,然后单击“ 使此服务或应用程序联机”。
注意
如果不执行此步骤,则还原主密钥的操作可能失败。
将第一个节点上的主密钥备份文件复制到第二个节点上的 \Enterprise Single Sign-On 安装文件夹中。 默认情况下,安装文件夹为 <drive>:\Program Files\Common Files\Enterprise Single Sign-On。
登录到第二个节点,在命令提示符下转入企业 SSO 安装文件夹。
在命令提示符下键入以下命令,在第二个节点上还原主密钥:
ssoconfig -restoresecret RestoreFile
注意
将 RestoreFile 替换为包含主机密的备份文件的路径和名称。
主密钥存储在注册表中,位置为:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ENTSSO\SSOSS
将包含群集企业单一登录服务的群集服务或应用程序从此群集节点移动到其他群集节点,以确保故障转移功能。 然后将该群集组移回,以检查故障回复功能。