SharePoint Server 按需评估入门概述

先决条件

如何为 SharePoint Server 的按需评估做好准备 工具计算机用于连接到环境中的每个服务器并从中检索信息,通过远程过程调用 (RPC)、服务器消息块 (SMB)、轻量级目录访问协议 (LDAP) 和分布式组件对象模型 (DCOM) 进行通信。 收集数据并完成操作访谈后,脱机评估工具将在本地分析数据。

接下来是先决条件操作的清单。 每个项目都链接到工具计算机所需的任何其他软件,以及本文档稍后包含的详细步骤。

计算机要求和帐户权限

硬件和软件

配置如下的服务器级或高端工作站计算机:

  • 最低单个 2Ghz 处理器 – 推荐双核/多核 2Ghz 或更快的处理器。

  • 最小 4 GB RAM - 建议 12 GB RAM。

  • 最小 5 GB 的可用存储空间。

  • 高端工作站:Windows 11,Windows 10

  • :Windows 2022、Windows 2019、Windows 2016

    • 可以是 32 位或 64 位操作系统。
  • 至少 1024x768 屏幕分辨率(首选更快)。

  • 用于创建报表的 Microsoft Office(Word、Excel 和 PowerPoint)。

  • 必须与正在分析的 SharePoint 场是同一域的成员。

  • Microsoft® .NET Framework 4.8 — 下载

    备注:如果 SharePoint 安装的 .NET 版本高于 4.6.2,则工具计算机上安装的版本必须等于或高于目标 SharePoint Server 上安装的版本。

  • Windows PowerShell 5.0 或更高版本

    • PowerShell 5.0 是 Windows Management Framework 3.0 的一部分。 了解详细信息
    • Windows PowerShell 系统要求
    • PowerShell 的执行策略应设置为在工具计算机和服务器上均为 remotesigned
    • 可以在 PowerShell 命令窗口中使用“get-executionpolicy –list”来验证执行策略设置
  • 不支持网络“文档”或重定向“文档”文件夹。 数据收集计算机上的本地“文档”文件夹是必需的。

  • IIS 管理工具(IIS 7 Administration 组件)

  • 远程管理 (RPC) 防火墙异常 - 动态端口范围

帐户权限

拥有以下权限的域帐户:

  • SharePoint 环境中所有服务器上的本地管理员组的成员
  • 完全控制所有服务应用程序。
  • 托管 SharePoint 数据库的 SQL 实例上的“SysAdmin”组的成员
  • 从工具计算机到所有服务器的无限制网络访问。
  • SharePoint 场管理员组的成员
  • 从工具计算机到所有服务器的无限制网络访问。

能够在运行脱机评估客户端的计算机上运行 PowerShell 脚本。 Windows PowerShell 执行策略必须设置为“RemoteSigned”或提供运行本地脚本的等效功能

警告:不要使用“运行方式”功能启动客户端工具集,因为发现过程和收集器可能会失败。 启动客户端工具集的帐户必须登录本地计算机。

需要 Microsoft 帐户才能激活并登录 Premier 主动评估服务门户。 这是 RAP 即服务门户,你将在此激活访问令牌并安装工具集。

  • 如果没有,请创建一个
  • 如果欢迎电子邮件中的令牌已过期或无法再激活,请与您的 CSAM 联系。 令牌将在十天后过期。 您的 CSAM 可以为其他人提供新的激活令牌。

网络和远程访问

确保工具计算机或激活、安装和提交数据的计算机上的浏览器已启用 JavaScript。 按照“如何在浏览器中启用脚本”中列出的步骤操作。

Internet Explorer 是推荐的浏览器,以便获得更好的门户访问体验。 确保 Internet Explorer 增强安全配置 (ESC) 不会阻止站点上的 JavaScript。 解决方法是在访问 https://services.premier.microsoft.com 门户时临时禁用 Internet Explorer ESC。

从工具计算机到所有服务器的无限制网络访问。 这意味着可通过任何可能限制流量到任何服务器的防火墙和路由器 ACL 进行访问。 这包括远程访问:

  • DCOM
  • 远程注册表服务
  • Windows Management Instrumentation (WMI) 服务
  • 默认管理共享 (C$、D$、IPC$)。

端口和协议访问要求:

确保用于收集数据的计算机具有以下访问权限:

  • 完成 TCP/UDP 访问,包括对所有服务器进行 RPC 访问。
  • 还需要通过端口 135 和 139 或 445 进行访问。
  • Windows 远程管理 (WinRM) 使用端口 5985 进行 HTTP 访问。 必须启用工具计算机和 SharePoint Server 之间的通信,这些服务器是针对端口 5985 上的数据收集的,因为 PowerShell 命令将通过此端口远程运行。

备注

运行本文档第 6 节中的远程 PowerShell 和 CredSSP 配置步骤时,系统将提示允许端口 5985 作为配置的一部分打开,请在出现提示时选择“是”以允许打开端口。

配置服务器防火墙以确保运行 Windows Server 2016 及更高版本的所有服务器启用“远程事件日志管理”:

备注

如果“远程事件日志管理”未被允许,脱机客户端可能无法从 Windows Server 2016 或更高版本收集事件日志信息。 启用“远程管理”后,必须在目标服务器上启动以下服务:

  • WMI
  • 远程注册表服务
  • 服务器服务
  • 工作站服务
  • 文件和打印机共享服务
  • 自动更新服务

配置服务器防火墙以确保运行 Windows Server 2016 及更高版本的所有服务器都已启用“远程事件日志管理”:

备注

如果“远程事件日志管理”未被允许,则脱机评估客户端可能无法从 Windows Server 2016 或更高版本收集事件日志信息。 启用“远程管理”后,还启用了允许远程事件日志管理的规则。

Windows 防火墙。

要测试该工具是否能够从 Windows Server 主机收集事件日志数据,可以尝试使用 eventvwr.msc 连接到 Windows Server 服务器。 如果能够连接,则可以收集事件日志数据。 如果远程连接不成功,则可能需要启用 Windows 内置防火墙以允许“远程事件日志管理”。

连接测试

  • 事件日志:要测试该工具是否能够从 Windows Server 收集事件日志数据,可以尝试使用 eventvwr.msc。 如果能够连接,则可以收集事件日志数据。 如果远程连接不成功,则可能需要启用 Windows 内置防火墙以允许“远程事件日志管理”。
  • 注册表:使用 regedit.exe 测试与目标服务器的远程注册表连接(“文件”>“连接网络注册表”)。
  • 文件:连接到目标服务器上的 C$ 和 Admin$ 共享以验证文件访问。

4. Windows Server 2016 或更高版本的其他要求:

A. 登录到所选数据收集计算机,使用命令提示符的 IPConfig.exe 识别其当前 IP 地址。 示例输出如下所示:

C:\>ipconfig
Windows IP Configuration
Ethernet adapter Ethernet:
Connection-specific DNS Suffix  . :
Link-local IPv6 Address . . . . . : fe80::X:X:X:X%13
IPv4 Address. . . . . . . . . . . : X.X.X.X
Subnet Mask . . . . . . . . . . . : X.X.X.X
Default Gateway . . . . . . . . . : X.X.X.X
  • 记下计算机的 IPv4 地址。 配置中的最后一步将使用此地址,以确保只有数据收集计算机才能与 SharePoint Server 场上的 Windows 更新代理进行通信。

B. 创建、配置组策略对象并将其链接到服务器域中的 SharePoint Server 组织单位。

组策略对象。

新建 GPO

确保 GPO 适用于 SharePoint Server 组织单位。

备注

如果 OU 中存在作用域以外的其他服务器,则安全组筛选可用于将组策略的应用限制为仅适用于 SharePoint Server。

  • 在 GPO 中打开:计算机配置\策略\Windows 设置\安全设置\高级安全 Windows 防火墙\高级安全 Windows 防火墙。
  • 右键单击“入站规则”,然后选择“新建规则”。
  • 创建的规则将与已通过本地策略和/或其他已定义入站规则的组策略对象在 SharePoint Server 上启用的规则合并。
  • 在“新建入站规则向导”的“规则类型”页上选择“自定义”,然后选择“下一步”。
  • 在“程序”选项卡上,选择“此程序路径”,然后插入以下路径,而不插入引号:
  • “%SystemRoot%\system32\dllhost.exe”,如下图所示,然后选择下一步。

DL 主机。

在“协议和端口”页上为“协议类型”选择“TCP”,为“本地端口”选择“RPC 动态端口”,然后选择“下一步”,如下图所示。

确认窗口,其中包括协议类型、协议编号、本地端口和远程端口字段。

  • 在“范围”页上,在“此规则适用于哪些远程 IP 地址”下,选择“这些 IP 地址”,然后选择“添加”。 插入第一步中识别的数据收集计算机的 IP 地址。 选择“确定”,然后在范围页上选择“下一步”。
  • 在“操作”页上选择“允许连接”,然后选择“下一步”。
  • 在“配置文件”页上选中默认配置文件,然后在“名称”页上,为规则指定一个描述其允许内容的名称,类似于“允许从 x.x.x.x 入站至 WUA”,并完成规则创建向导以将规则提交到防火墙策略。
  • 一旦规则被应用,可以通过监视导航节点的高级安全 Windows 防火墙 MMC (WF.MSC) 或通过询问以下 PowerShell 命令“Get-NetFirewallRule -Enabled true -policystore ActiveStore”的输出并确认所创建的规则已显示来确认其为活动的。

远程 PowerShell 和 CredSSP 配置(工具计算机)

在工具计算机上,使用“以管理员身份运行”命令启动 PowerShell 提示。 然后运行以下命令(在运行以下命令之前,请参阅后面的重要注释)

Enable-WSManCredSSP -Role client -DelegateComputer <SharePointServer FQDN>

注意:

  • SharePointServer FQDN 命令是“工具计算机”在收集数据时连接到的“目标服务器”。 您必须使用 SharePoint Server 的 FQDN,而不仅仅是主机名。
  • WinRM 服务需要运行才能使此命令成功。

远程 PowerShell 和 CredSSP 配置(目标场服务器)

在目标服务器(请参阅本文档的第一页和第四页以了解目标服务器),使用“以管理员身份运行”命令启动 PowerShell 提示。 然后运行以下命令(在运行以下命令之前,请参阅下面的重要注释)

winrm quickconfig
Enable-WSManCredSSP -Role server

备注

目前仅支持 SharePoint 2013、SharePoint 2016 和 SharePoint 2019 场。 SharePoint Server 的按需评估不支持 SharePoint Server 2010 或更早版本。

SharePoint Server 按需评估支持由运行 SQL -Server 2014、SQL Server 2012 的 SQL Server 提供支持的 SharePoint 场。 不支持早期版本的 SQL Server。

远程 PowerShell 和 CredSSP 配置

作为评估的一部分,大多数 SharePoint 信息都是通过从工具计算机远程执行 PowerShell 脚本收集的。 正确配置 CredSSP 委派非常重要,以便 PowerShell 脚本可以在“目标服务器”上远程运行。 通过连接并在目标服务器上执行脚本,以下脚本有助于了解 CredSSP 是否配置正确。 从工具计算机运行以下脚本。

执行以下代码段应会输出 SharePoint 场中所有 SharePoint 内容数据库的列表。

$farm = Get-Credential
$s = New-PSSession -ComputerName [FQDN of Target Server] -Authentication CredSSP -Credential $farm
Invoke-Command -Session $s -ScriptBlock { add-pssnapin Microsoft.SharePoint.PowerShell -ea 0 }
Invoke-Command -Session $s -ScriptBlock { get-spfarm }
Invoke-Command -Session $s -ScriptBlock { get-spcontentdatabase }
Get-PSSession | Remove-PSSession

备注

“目标服务器 FQDN”是启用了 CredSSP 的 SharePoint Server(请参阅本文档的第一页和第四页以了解目标服务器)。

如果测试失败,请勿继续进行评估,请向 CSAM 寻求进一步帮助。

数据收集方法

附录:数据收集方法

SharePoint Server 的按需评估使用多种数据收集方法来收集信息。 本节介绍用于从 SharePoint 环境收集数据的方法。 没有使用 VB 脚本来收集数据。 数据收集使用工作流和收集器。 收集器是:

  • 注册表收集器
  • SharePoint PowerShell 脚本
  • 事件日志收集器
  • SQL 查询
  • IIS 信息
  • 文件数据收集器
  • WMI

注册表收集器:

注册表项和值从 SharePoint Server 数据收集计算机(即工具计算机)和所有 SharePoint Server(包括 SQL Server)的按需评估中读取。 它们包括以下项目:

  • SQL 别名信息,源自 HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo

这允许评估确定 SharePoint Server 是否使用 SQL 别名连接到托管 SharePoint 数据库的 SQL Server。

操作系统信息,源自 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion

这允许确定操作系统信息,如 Windows 11、Windows 10、Windows Server 2022、Windows Server 2019、Windows Server 2016

SharePoint PowerShell 脚本:

大多数 SharePoint 数据是通过运行 SharePoint PowerShell 脚本收集的。 例如,有关大型列表视图、备用访问映射、SharePoint 服务、ULS 信息、SharePoint 列表信息、SharePoint 搜索、计时器作业等的信息都是使用 SharePoint PowerShell 脚本收集的。

这些脚本通过连接到目标计算机从工具计算机上远程运行。 有关工具计算机和目标计算机的信息,请参阅本文档的第 1 页和第 4 页。

事件日志收集器:

从所有 SharePoint Server(包括 SQL Server)收集事件日志。 脱机评估从应用程序和系统日志收集过去 7 天的警告和错误。

SQL 查询:

与 SharePoint SQL 实例托管的 SQL 数据库相关的一些信息是通过 SQL 脚本收集的。 例如,与 SQL 数据和日志文件(例如,大小和下一个增长大小)、SQL 实例属性(例如,如果使用了集成安全,如果实例是群集的)、索引碎片、统计信息等,都是通过 SQL 脚本收集的。

IIS 信息:

使用 .NET 代码和工作流收集 IIS 网站和应用程序池配置的详细信息。

文件数据收集器:

枚举远程计算机上的文件夹中的文件,并可选地检索这些文件。 例如,Web.config 文件、IIS 日志文件、应用主机配置文件等,

Windows Management Instrumentation (WMI):

WMI 用于收集各种信息,例如:

  • WIN32_Volume:收集有关 SharePoint 环境中每台服务器卷设置的信息。 例如,该信息用于确定系统卷和驱动器号,以允许 SharePoint 的脱机评估收集有关位于系统驱动器上的文件的信息。

  • Win32_Process:收集有关 SharePoint 环境中每台服务器上运行的进程的信息。 该信息用来分析使用大量线程、内存或使用大量页面文件的进程。

  • Win32_LogicalDisk:用于收集有关逻辑磁盘的信息。 我们使用这些信息来确定数据库或日志文件所在驱动器上的可用空间量。