在 SharePoint Server 2016、2019 和订阅版中管理 MinRole 服务器场

适用范围:no-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

了解如何在 SharePoint Server 2016、2019 和订阅版中管理 MinRole 场部署。

MinRole 是一种基于 SharePoint Server 2016 引入的一组预定义服务器角色的新场拓扑。 配置你的 SharePoint 场时,现在在创建新场或将服务器加入到现有场中时选择服务器的角色。 SharePoint 将自动基于服务器的角色在各个服务器上配置服务。 SharePoint Server 2016、2019 和 Subscription Edition 针对 MinRole 场拓扑进行优化。

MinRole 管理

MinRole 的管理中心变更

随着 MinRole 功能的增加,管理中心网站出现一些变更。

管理此场中的服务器

此页显示已加入到场中的服务器。 已向此页添加了两列:RoleCompliant

::image type=“content” alt-text=“在 SharePoint Server 2016 中为 11 月 PU 2016 显示服务器场中的服务器 (功能包 1) ” source=”。/media/44119bfc-88ed-47c6-a5cb-0408b03f06eb.png“ lightbox=”../media/44119bfc-88ed-47c6-a5cb-0408b03f06eb.png“:::

“角色”列显示分配给场中服务器的角色。

注意

在“场中的服务器”页中,SQL Server 和 SMTP 服务器将列为属于“外部”角色,而在 Microsoft PowerShell 中,其服务器角色显示为“无效”。 这两个角色名称是等效的。

Compliant列显示服务器配置是否符合其服务器角色。 如果服务器不符合要求,则会提供 “修复” 链接,以自动重新配置服务器以匹配其服务器角色的预期配置。

注意

只有托管管理中心的服务器上的本地管理员组的成员才有权访问 Fix 链接。

管理此场中的服务

这是管理中心的“系统设置”类别中的新页。 它显示场中每项服务的状态。 此页面包含三个相关列: “自动预配”、“ 操作”“合规”。

显示 SharePoint Server 2016 和 2019 场中的服务。

Auto Provision列显示服务在场中是否已启用。 如果显示值“”,将在场中 MinRole 托管的相应服务器上启动此服务的服务实例。 如果显示值“”,该服务的服务实例将在场中 MinRole 托管的相应服务器上停止。

“操作”列显示三个值之一,具体取决于该服务的类型以及是否在场中启用:管理服务应用程序禁用自动预配启用自动预配

Manage Service Application值指示服务与服务应用程序关联。 此服务在场中将由它自己的服务应用程序启用或禁用,通常是在你创建或删除服务应用程序时。 单击链接访问“服务应用程序管理”页面。

注意

只有支持服务应用程序的服务中才会出现“管理服务应用程序”链接。

Disable Auto Provision链接禁用场中的服务。 单击此链接时,与此服务关联的所有服务实例将在场中 MinRole 托管的相应服务器上停止。

Enable Auto Provision链接启用场中的服务。 单击此链接时,此服务的服务实例将在场中 MinRole 托管的相应服务器上启动。

Compliant列显示服务在场中的每台服务器上是否合规。 如果此服务在一个或多个服务器上不符合要求,则会提供 “修复” 链接。 单击此链接可自动重新配置该服务的服务实例,以符合预期配置。

注意

只有托管管理中心的服务器上的本地管理员组的成员才有权访问 Fix 链接。

管理服务器上的服务

此页面显示服务器上的所有服务实例。 将会出现一些变更,如下图中红色突出显示。

在 SharePoint Server 2016 和 2019 中显示服务器上的服务。

在以前版本的 SharePoint 中,此页面仅可供管理中心服务器上的本地管理员组成员访问。 在 SharePoint Server 2016 中,SharePoint 场管理员组的所有成员都有权访问此页面。

现在,服务器的角色显示在服务器名称旁边。

页面中添加了“合规”列。 它会显示服务实例在该服务器上是否合规。 如果此服务实例在此服务器上不符合要求,则会提供“修复”链接。 单击此链接在该服务器上重新配置服务实例,以匹配预期配置。

注意

只有托管管理中心的服务器上的本地管理员组的成员才有权访问 Fix 链接。

Action 列已更改。 对于由 MinRole 托管的服务器,移除了启动或停止服务的链接。 对于该服务器上已启动的服务实例,唯一可操作的项目是“重新启动”。 要启动或停止你现在使用的服务,请在“管理此场中的服务”页面中单击 Enable Auto ProvisionDisable Auto Provision 链接。

注意

分配给自定义角色的服务器仍会在“操作”列中显示“开始”和“停止”链接。

注意

只有托管管理中心的服务器上的本地管理员组成员才有权访问“重新启动”、“开始”和“停止”链接。

使用 Windows PowerShell 管理服务器场中的服务

引入了新 PowerShell cmdlet 以管理服务器场中的服务。

Cmdlet 名称 说明 语法示例
Get-SPService Get-SPService cmdlet 获取服务器场中的服务。 Get-SPService - 标识“Microsoft SharePoint Foundation 沙盒代码服务”
Start-SPService Start-SPService cmdlet 可启用场中的服务。 该服务的服务实例将在场中 MinRole 托管的相应服务器上启动。 Start-SPService - 标识“Microsoft SharePoint Foundation 沙盒代码服务”
Stop-SPService Stop-SPService cmdlet 可禁用场中的服务。 该服务的服务实例将在场中 MinRole 托管的相应服务器上停止。 Stop-SPService - 标识“Microsoft SharePoint Foundation 沙盒代码服务”

注意

可选参数 IncludeCustomServerRole 已添加至 SharePoint Server 2016 的 2016 年 11 月 公开更新(功能包 1)中的 Start-SPServiceStop-SPService Windows PowerShell cmdlet。 如果经过指定,它还会创建计时器作业,该作业可以启动或停止分配到自定义服务器角色的服务器上的服务实例。 这是一个一次性的计时器作业。 MinRole 将不会做出进一步尝试来管理分配到自定义服务器角色的服务器上的服务实例。 > 无法使用 Start-SPService 和 Stop-SPService cmdlet 来启动或停止具有关联的 服务 应用程序的服务。 可以通过创建或删除其关联的服务应用程序启动或停止这些服务。 如果你将 Start-SPServiceStop-SPService cmdlet 和已关联服务应用程序的服务一起使用,将显示一条错误消息,指示应创建或删除关联的服务应用程序。

运行状况监视

创建了一个新的运行状况分析器规则,以确保你的服务器在其最佳 MinRole 配置下运行。 服务器角色配置不是正确的规则,每天晚上午夜在场中的每个服务器上运行。 它会扫描服务器上的所有服务实例,以检测是否有任何服务实例不符合要求。 如果任何服务实例不符合要求,运行状况规则会自动将其重新配置为与预期的配置匹配。 无需 SharePoint 服务器场管理员人工干预。

显示 SharePoint Server 2016 和 2019 中 MinRole 拓扑的运行状况规则。

SharePoint 场管理员可以在仍然允许运行状况规则运行的情况下,禁用运行状况规则的自动修复功能。 如果运行状况规则检测到服务器不符合要求且自动修复功能已禁用,它将在管理中心生成运行状况报告。 运行状况报告将确定哪些服务器不符合要求,提供自动修复服务器的功能,并提供有关如何手动修复服务器的说明。

SharePoint 场管理员可以控制运行状况规则计划,将其更改为更频繁或更不频繁地运行,或者禁用它,使其永远不会计划。 也可以按需运行。

注意

此运行状况规则不会扫描或修复分配给自定义角色的服务器。 分配到自定义角色的服务器将不会由 MinRole 管理。

开发人员:如何将服务分配到服务器角色

如果你是一名 SharePoint 开发人员,打算使用服务创建应用程序,建议将每种类型的服务实例分配给 MinRole 支持的一个或多个服务器角色:

向服务器角色分配服务

  1. 通过从 SPService 类继承来实施服务。

  2. 如果您想默认启用或禁用此服务,可以在新服务类的构造函数中设置 AutoProvision 属性的值。

  3. 通过从 SPServiceInstance 类继承来实现服务的服务实例类。

  4. 必要时,重写 ShouldProvision(SPServerRole serverRole) 方法,以将该服务分配到特定服务器角色。

有关如何将服务订阅到特定角色的详细信息,请参阅 SPService 类SPServiceInstance 类

集成角色转换预验证

  1. 通过从 SPServiceInstance 类继承来实现服务的服务实例类。

  2. 重写 IsReadyForRoleConversion (SPServerRole newRole,输出 IEnumerable<字符串> errorMessages) 方法来检测服务实例是否已准备好将角色转换为 newRole 参数指定的服务器角色。 如果准备就绪,则返回 true ;如果尚未就绪,则返回 false 。 如果返回 false,请提供消息列表,说明服务实例未准备好进行角色转换的原因,以及通过 errorMessages 参数解决问题的说明。