分析服务器依赖项(无代理)

本文介绍如何在“Azure Migrate: 发现和评估”工具中设置无代理依赖项分析。 依赖项分析有助于确定和了解要评估并迁移到 Azure 的服务器之间的依赖项。

当前限制

  • 在依赖项分析视图中,当前无法在组中添加或删除服务器。
  • 服务器组的依赖项映射当前不可用。
  • 在 Azure Migrate 项目中,可以同时为每个设备的 1000 台服务器启用依赖项数据收集。
  • 可以通过在多个设备发现的服务器上同时启用依赖项分析,或者对从一个设备发现的服务器进行 1000 次批量排序,从而对每个项目分析超过 1000 台服务器。

准备工作

部署并配置 Azure Migrate 设备

  1. 部署 Azure Migrate 设备以启动发现。 若要部署设备,可根据环境采用部署方法。 部署设备后,需要先将其注册到项目并进行配置,然后再启动发现。
  2. 配置设备时,需要在设备配置管理器中指定以下信息:
    • 待发现的源环境(vCenter Server/Hyper-V 主机或群集/物理服务器)的详细信息。
    • 服务器凭据,可以是域/Windows(非域)/Linux(非域)凭据。 详细了解如何提供凭据以及设备如何处理凭据。
    • 验证执行无代理依赖项分析所需的权限。 对于 Windows 服务器,需要提供具有管理权限的域或非域(本地)帐户。 对于 Linux 服务器,请提供一个有权执行 ls 和 netstat 命令的 sudo 用户帐户,或者创建一个对 /bin/netstat 和 /bin/ls 文件具有 CAP_DAC_READ_SEARCH 和 CAP_SYS_PTRACE 权限的用户帐户。 如果提供 sudo 用户帐户,请确保已为该帐户启用 NOPASSWD 以运行所需的命令,且不会在每次调用 sudo 命令时都提示输入密码。

添加凭据并启动发现

  1. 打开设备配置管理器,完成设备的先决条件检查和注册。
  2. 导航到“管理凭据和发现源”面板。
  3. 在“步骤 1:为发现源提供凭据”中,单击“添加凭据”,为设备将用于发现环境中运行的服务器的发现源提供凭据。
  4. 在“步骤 2:提供发现源详细信息”中,单击“添加发现源”,从下拉列表中选择凭据的易记名称,指定发现源的“IP 地址/FQDN”。 Panel 3 on appliance configuration manager for vCenter Server details.
  5. 在“步骤 3:提供服务器凭据以执行软件清单和无代理依赖项分析”中,单击“添加凭据”以提供多个服务器凭据来执行软件清单。
  6. 单击“开始发现”以启动发现。

服务器发现完成后,设备将启动对服务器上已安装的应用程序、角色和功能(软件清单)的发现。 在软件清单期间,将验证发现的服务器,以检查它们是否满足先决条件,以及是否可用于无代理依赖项分析。

注意

可以为 Azure Migrate 项目中发现的服务器启用无代理依赖项分析。 只能选择验证成功的服务器来启用无代理依赖项分析。

从门户启用服务器以进行无代理依赖项分析后,设备每 5 分钟从服务器收集一次依赖项数据,并每 6 小时向 Azure 发送一个聚合数据点。 查看设备在无代理依赖项分析期间收集的数据

启动依赖项发现

选择要启用依赖项发现的服务器。

  1. 在“Azure Migrate:发现和评估”中,单击“已发现的服务器”。

  2. 选择要查看其发现的“设备名称”。

  3. 可以在“依赖项(无代理)”列下查看服务器的验证状态。

  4. 单击“依赖项分析”下拉菜单。

  5. 单击“添加服务器”。

  6. 在“添加服务器”页中,选择要在其中启用依赖项分析的服务器。 只能在验证成功的服务器上启用依赖项映射。 下一个验证周期将在上一个验证时间戳之后 24 小时运行。

  7. 选择服务器后,单击“添加服务器”。

    Screenshot of process to start dependency analysis.

在服务器上启用依赖项分析后,可以在约六个小时内可视化依赖项。 如果要同时启用多个服务器进行依赖项分析,可以使用 PowerShell 执行此操作。

可视化依赖项

  1. 在“Azure Migrate:发现和评估”中,单击“已发现的服务器”。

  2. 选择要查看其发现的“设备名称”。

  3. 搜索要查看其依赖项的服务器。

  4. 在“依赖项(无代理)”列下,单击“查看依赖项”

  5. 使用“持续时间”下拉列表更改要查看其映射的时间段。

  6. 展开“客户端”组以列出在所选服务器上有依赖项的服务器。

  7. 展开“端口”组以列出具有所选服务器中的依赖项的服务器。

  8. 要导航到任何依赖服务器的映射视图,请单击服务器名称 >“加载服务器映射”Screenshot to Expand Server port group and load server map.Expand client group.

  9. 展开所选服务器以查看每个依赖项的进程级详细信息。 Expand server to show processes.

注意

依赖项的进程信息并非始终可用。 如果不可用,则会用标记为“未知进程”的进程来描述依赖项。

导出依赖项数据

  1. 在“Azure Migrate:发现和评估”中,单击“已发现的服务器”。
  2. 单击“依赖项分析”下拉菜单。
  3. 单击“导出应用程序依赖项”。
  4. 在“导出应用程序依赖项”页上,选择将发现所需服务器的设备名称。
  5. 选择开始时间和结束时间。 请注意,只能下载过去 30 天内的数据。
  6. 单击“导出依赖项”。

依赖项数据以 CSV 格式导出和下载。 下载的文件包含为进行依赖项分析而启用的所有服务器之间的依赖项数据。 Screenshot to Export dependencies.

依赖项信息

导出的 CSV 中的每一行对应于在指定时间段内观察到的依赖项。

下表汇总了导出的 CSV 中的字段。 请注意,仅为启用了无代理依赖项分析的服务器填充服务器名称、应用程序和进程字段。

字段名称 详细信息
时间段 观察依赖项的时间段。
在当前 6 小时时间段内捕获依赖项数据。
源服务器名称 源服务器的名称
源应用程序 源服务器上的应用程序的名称
源进程 源服务器上的进程的名称
目标服务器名称 目标服务器的名称
目标 IP 目标服务器的 IP 地址
目标应用程序 目标服务器上的应用程序的名称
目标进程 目标服务器上的进程的名称
目标端口 目标服务器上的端口号

停止依赖项发现

选择要停止依赖项发现的服务器。

  1. 在“Azure Migrate:发现和评估”中,单击“已发现的服务器”。
  2. 选择要查看其发现的“设备名称”。
  3. 单击“依赖项分析”下拉菜单。
  4. 单击“删除服务器”。
  5. 在“删除服务器”页中,选择要停止进行依赖项分析的服务器。
  6. 选择服务器后,单击“删除服务器”。

如果要在多个服务器上同时停止依赖项,可以使用 PowerShell 执行此操作。

使用 PowerShell 启动或停止依赖项分析

从 GitHub 上的 Azure PowerShell 示例存储库下载 PowerShell 模块。

登录 Azure

  1. 使用 Connect-AzAccount-Environment AzureChinaCloud cmdlet 登录到 Azure 订阅。

    Connect-AzAccount -Environment AzureChinaCloud
    
  2. 选择已在其中创建项目的订阅

    select-azsubscription -subscription "Fabrikam Demo Subscription"
    
  3. 导入下载的 AzMig_Dependencies PowerShell 模块

    Import-Module .\AzMig_Dependencies.psm1
    

启用或禁用依赖项数据收集

  1. 使用以下命令获取项目中发现的服务器的列表。 在下面的示例中,项目名称为 FabrikamDemoProject,其所属的资源组为 FabrikamDemoRG。 服务器的列表将保存在 FabrikamDemo_VMs.csv 中

    Get-AzMigDiscoveredVMwareVMs -ResourceGroupName "FabrikamDemoRG" -ProjectName "FabrikamDemoProject" -OutputCsvFile "FabrikamDemo_VMs.csv"
    

    在该文件中,可以看到服务器显示名称、依赖项集合的当前状态和所有已发现服务器的 ARM ID。

  2. 若要启用或禁用依赖项,请创建一个输入 CSV 文件。 此文件需要一个标头为“ARM ID”的列。 此 CSV 文件中的任何其他标头都将被忽略。 可以使用上一步中生成的文件创建此 CSV。 创建该文件的副本,保留要在其上启用或禁用依赖项的服务器。

    在下面的示例中,将在输入文件 FabrikamDemo_VMs_Enable.csv 中的服务器列表上启用依赖项分析。

    Set-AzMigDependencyMappingAgentless -InputCsvFile .\FabrikamDemo_VMs_Enable.csv -Enable
    

    在下面的示例中,将在输入文件 FabrikamDemo_VMs_Disable.csv 中的服务器列表上禁用依赖项分析。

    Set-AzMigDependencyMappingAgentless -InputCsvFile .\FabrikamDemo_VMs_Disable.csv -Disable
    

可视化 Power BI 中的网络连接

Azure Migrate 提供了一个 Power BI 模板,可以使用该模块一次可视化多个服务器的网络连接,并按进程和服务器进行筛选。 若要可视化,请按照以下说明加载包含依赖项数据的 Power BI。

  1. 从 GitHub 上的 Azure PowerShell 示例存储库下载 PowerShell 模块和 Power BI 模板。

  2. 使用以下说明登录到 Azure:

    • 使用 Connect-AzAccount-Environment AzureChinaCloud cmdlet 登录到 Azure 订阅。

      Connect-AzAccount -Environment AzureChinaCloud
      
    • 选择已在其中创建项目的订阅

      select-azsubscription -subscription "Fabrikam Demo Subscription"
      
  3. 导入下载的 AzMig_Dependencies PowerShell 模块

    Import-Module .\AzMig_Dependencies.psm1
    
  4. 运行以下命令。 此命令以 CSV 格式下载依赖项数据,并处理该数据以生成可用于在 Power BI 中进行可视化的唯一依赖项列表。 在下面的示例中,项目名称为 FabrikamDemoProject,其所属的资源组为 FabrikamDemoRG。 将为 FabrikamAppliance 发现的服务器下载依赖项。 唯一的依赖项将保存在 FabrikamDemo_Dependencies.csv 中

    Get-AzMigDependenciesAgentless -ResourceGroup FabrikamDemoRG -Appliance FabrikamAppliance -ProjectName FabrikamDemoProject -OutputCsvFile "FabrikamDemo_Dependencies.csv"
    
  5. 打开下载的 Power BI 模板

  6. 将下载的依赖项数据加载到 Power BI 中。

    • 在 Power BI 中打开模板。
    • 单击工具栏上的“获取数据”。
    • 从公共数据源中选择“文本/CSV”。
    • 选择已下载的依赖项文件。
    • 单击“加载”。
    • 将看到一个表以 CSV 文件的名称导入。 可以在右侧的字段栏中看到此表。 将其重命名为 AzMig_Dependencies
    • 在工具栏中单击“刷新”。

    “网络连接图表”和“源服务器名称”、“目标服务器名称”、“源进程名称”、“目标进程名称”切片器应与导入的数据一起亮起。

  7. 按服务器和进程可视化网络连接筛选的映射。 保存文件。

后续步骤

用于评估的组服务器