对 Azure 文件同步进行故障排除

你可以使用 Azure 文件同步,即可将组织的文件共享集中在 Azure 文件中,又不失本地文件服务器的灵活性、性能和兼容性。 本文旨在帮助排查和解决在 Azure 文件同步部署中可能遇到的问题。 此外,还介绍了在需要对问题进行更深入调查的情况下,如何从系统收集重要日志。

常见故障排除文档

根据遇到的问题,查看相应的故障排除文档:

问题 疑难解答文档
代理安装或服务器注册问题 排查 Azure 文件同步代理安装和服务器注册问题
云终结点或服务器终结点创建问题,或已注册的服务器处于脱机状态 排查 Azure 文件同步组管理问题
服务器终结点有错误状态,或者文件无法同步 排查Azure 文件同步同步运行状况和错误
文件无法分层或召回 排查 Azure 文件同步云分层问题
存储同步代理服务 (FileSyncSvc) 无法启动 Azure 文件同步排除故障
服务器上的内存使用率较高 Azure 文件同步排除故障

如果不确定从何处开始,请参阅 常规故障排除第一步

常规故障排除首要步骤

如果遇到Azure 文件同步问题,请首先完成以下步骤:

  1. 使用服务器上的Azure 门户或事件日志检查是否存在任何错误。 有关如何使用Azure 门户或事件日志查看Azure 文件同步环境的运行状况的信息,请参阅“监视Azure 文件同步”。
  2. 验证 Azure 文件同步服务是否正在服务器上运行。
  3. 验证Azure 文件同步筛选器驱动程序(StorageSync.sysStorageSyncGuard.sys)是否在服务器上运行:
    • 在权限提升的命令提示符下,运行 fltmc。 验证StorageSync.sysStorageSyncGuard.sys文件系统筛选器驱动程序是否已列出。
  4. 使用服务器上的 Debug-StorageSyncServer cmdlet 检查常见问题。

Debug-StorageSyncServer cmdlet

Debug-StorageSyncServer cmdlet 将诊断Azure 文件同步服务器上的常见问题,例如证书配置错误和不正确的服务器时间。 我们还通过将某些现有脚本和 cmdlet 的功能(AFSDiag.ps1、FileSyncErrorsReport.ps1Test-StorageSyncNetworkConnectivity)合并到 Debug-StorageSyncServer cmdlet 中来简化Azure 文件同步故障排除。

若要在服务器上运行诊断程序,请运行以下 PowerShell 命令:

Import-Module "C:\Program Files\Azure\StorageSyncAgent\StorageSync.Management.ServerCmdlets.dll"
Debug-StorageSyncServer -Diagnose

若要测试服务器上的网络连接,请运行以下 PowerShell 命令:

Import-Module "C:\Program Files\Azure\StorageSyncAgent\StorageSync.Management.ServerCmdlets.dll"
Debug-StorageSyncServer -TestNetworkConnectivity

若要识别服务器上无法同步的文件,请运行以下 PowerShell 命令:

Import-Module "C:\Program Files\Azure\StorageSyncAgent\StorageSync.Management.ServerCmdlets.dll"
Debug-StorageSyncServer -FileSyncErrorsReport

若要在服务器上收集日志和跟踪,请运行以下 PowerShell 命令:

Import-Module "C:\Program Files\Azure\StorageSyncAgent\StorageSync.Management.ServerCmdlets.dll"
Debug-StorageSyncServer -AFSDiag -OutputDirectory C:\output -KernelModeTraceLevel Verbose -UserModeTraceLevel Verbose

如何在 Azure 文件同步 服务器上收集日志和跟踪

如果在执行故障排除文档中的步骤后未解决问题,请运行 AFSDiag 工具并将其.zip文件输出发送到分配给案例的支持工程师进行进一步诊断。

若要运行 AFSDiag,请执行以下步骤:

  1. 打开提升的 PowerShell 窗口,然后运行以下命令(在每个命令后按 Enter ):

    注意

    AFSDiag 会在收集日志之前在其中创建输出目录和临时文件夹,并将在执行后删除临时文件夹。 指定不包含数据的输出位置。

    Import-Module "C:\Program Files\Azure\StorageSyncAgent\StorageSync.Management.ServerCmdlets.dll"
    Debug-StorageSyncServer -AFSDiag -OutputDirectory C:\output -KernelModeTraceLevel Verbose -UserModeTraceLevel Verbose
    
  2. 重现问题。 完成后,输入 D

  3. 随即会将一个包含日志和跟踪文件的 .zip 文件保存到指定的输出目录。

存储同步代理服务 (FileSyncSvc) 无法启动

安装或升级Azure 文件同步代理(v17.3 或更高版本)后,可能会遇到以下症状之一:

  • 存储同步代理服务(FileSyncSvc)无法启动并出现以下错误:

    Error 0x80070057: The parameter is incorrect. 
    
  • 使用 Register-AzStorageSyncServer cmdlet 注册服务器失败,并出现以下错误:

    Register-AzStorageSyncServer: Exception of type 'Commands.StorageSync.Interop.Exceptions.ServerRegistrationException' was thrown.
    
  • ServerRegistration.exe或AfsUpdater.exe无法打开

出现此问题的原因是,Azure 文件同步代理依赖于 Windows 安全功能,并且未安装此安全功能的更新。

若要解决此问题,请验证 Windows Server 是否安装了以下更新:

服务器上的内存使用率较高

Azure 文件同步使用可扩展存储引擎(ESE)数据库进行同步和云分层。 ESE 数据库最多可以使用 80% 的系统内存来提高性能。 若要限制 ESE 数据库使用的内存量,可以在服务器上配置 MaxESEDbCachePercent 注册表设置。

若要将 ESE 内存使用率限制降低到 60%,这是内存利用率和足够缓存之间的良好平衡,以保持数据库体面的性能,请从提升的命令提示符运行以下命令:

REG ADD HKLM\Software\Microsoft\Azure\StorageSync /v MaxESEDbCachePercent /t REG_DWORD /d 60

MaxESEDbCachePercent创建注册表设置后,重启存储同步代理(FileSyncSvc)服务。

另请参阅

联系我们寻求帮助

如果你有任何疑问或需要帮助,请创建支持请求联系 Azure 社区支持。 你还可以将产品反馈提交到 Azure 反馈社区