更新时间:2025-08-19 GMT+08:00
分享

采集主机进程与网络信息

本文将指导您如何通过迁移中心Agent(MgC Agent)提供的采集器,创建主机进程与网络采集任务。通过这些任务,您可以全面了解主机上运行的进程以及相关的网络通信信息,帮助您更好地监控系统状态、排查问题并优化性能。

采集器简介

MgC Agent提供了Linux和Windows两种系统类型的采集器。两种采集器的原理和功能介绍如下:

  • Windows进程和网络采集器使用WMI协议远程连接服务器。使用以下命令进行数据采集:
    • wmic 命令:用于获取服务器上的进程信息。
    • netstat 命令:用于获取服务器的网络连接信息。
  • 采集器根据配置的时间间隔定时采集数据。在被采集的服务器上会创建一个共享文件夹用于保存临时采集结果,并将采集结果返回给采集器。任务执行完成后,共享文件夹及其内的临时文件将被自动删除。
  • 采集器将采集到的数据汇总到一个CSV文件中。该文件中包含了被采集服务器的进程名称以及这些进程产生的网络关系。
  • Linux 采集器通过 SSH 远程连接服务器,使用netstat命令获取进程和网络连接信息。
  • 采集器根据配置的时间间隔定时采集数据。在被采集的服务器上会创建一个共享文件夹用于保存临时采集结果,并将采集结果返回给采集器。任务执行完成后,共享文件夹及其内的临时文件将被自动删除。
  • 采集器将采集到的数据汇总到一个CSV文件中。该文件中包含了被采集服务器的进程名称以及这些进程产生的网络关系。

使用须知

在创建主机进程与网络信息采集任务前,请仔细阅读并了解以下使用须知。

  • 通常情况下,一台4U8G的主机最多可以同时采集50台主机的数据。当被采集的主机有大量的网络访问和处理数据时,建议使用8U16G的主机。
  • 建议一个任务连续采集的时间不超过7天。
  • 当采集任务获取到30万条数据时,系统会自动停止采集任务,并将任务状态设置为成功。为确保采集任务的顺利进行,建议每采集30万条数据时,安装MgC Agent的主机应至少有6 GB的可用内存。
  • 建议不要在同一个MgC Agent上同时进行采集和迁移任务,以免影响任务的执行效率和稳定性。
  • 仅支持从Windows服务器采集数据。
  • 采集器需要获取被采集主机的Administrator账号或添加到Administrators组的AD域账号及密码。
  • 请确保待采集的主机已启用WMI和SMB协议。
  • 待采集主机需要开放以下端口:
    • WMI协议:TCP/135和一个高阶随机端口(推荐:1024-65535)
    • SMB协议:TCP/445
    • DCOM 通信:135端口(必须始终打开)和动态端口范围(通常为 1024-65535,或自定义范围,例如 5000-5100)
  • 部分操作系统的防火墙可能会阻止WMI通信。默认情况下,WMI端口未在防火墙中开启,会导致采集失败。需要在Windows防火墙中手动开启相关协议和端口。
  • 只能采集到内部IPv4地址。
  • 无法采集到容器的内部网络关系,以及Nginx或负载均衡器(LB)转发的实际关系。
  • 如果进程之间没有通信或进程未启动,采集器将无法获取相关结果。
  • 在采集过程中,请勿更改被采集主机的凭证(用户名和密码)和共享文件夹,否则会导致采集失败。
  • 在采集过程中,将在被采集的Windows主机的C盘创建一个名为“MgC_Agent_Share_safe_to_delete_<data_source_ID>”的共享文件夹。此文件夹仅用于中间存储和网络结果传输,权限设置为允许Administrators组操作。采集完成后,该文件夹将自动删除。如果任务异常中断,您可以手动删除该文件夹。
  • 仅支持从Linux服务器采集数据。
  • 采集器需要获取被采集主机的root帐号或具有sudo权限的账号和密码。
  • 采集器需要通过ssh和指定端口连接主机进行采集。
  • 无法采集到容器的内部网络关系,以及Nginx或负载均衡器(LB)转发的实际关系。
  • 如果进程之间没有通信或进程未启动,采集器将无法获取相关结果。
  • 在采集过程中,请勿更改凭证和所采集主机的共享文件夹的账户密码,否则会导致采集失败。
  • 采集器支持对50台服务器进行时长为1天的采集。如果同时采集大量数据,采集时间会较长,可能会导致采集器宕机。这种情况下,仅会影响安装了采集器的服务器,其他待采集数据的服务器不受影响。

待采集主机要求

通过MgC Agent执行主机进程与网络信息采集任务时,待采集主机根据系统类型,需要满足的条件如下:

待采集主机是Windows主机时,需要满足如下条件:
  • 需要对安装MgC Agent的主机开放5985端口。
  • PowerShell 版本在3.0及以上。
  • 需要开启WinRM远程访问,并与安装MgC Agent的主机建立连接,方法请参考Windows服务器WinRM服务配置与故障排查
  • 允许执行shell脚本。在源端主机打开PowerShell(以管理员身份),然后运行以下命令来查看当前的执行策略。
    Get-ExecutionPolicy
    如果返回值为“Restricted”,则表示不允许运行任何脚本。需要执行如下命令,并输入Y,将策略改为“RemoteSigned”。
    Set-ExecutionPolicy RemoteSigned
待采集主机是Linux主机时,需要满足如下条件:
  • 需要对安装MgC Agent的主机开放22端口。
  • 需要开放root账号的直接连接权限。即允许通过SSH等远程连接方式使用root账号登录到源端Linux主机。
  • 需要启用SFTP和SSH服务。
  • 需要支持以下密钥交换算法和MAC算法:
    • 密钥交换算法:ssh-ed25519、ecdsa-sha2-nistp256、ecdsa-sha2-nistp384、ecdsa-sha2-nistp521、rsa-sha2-512、rsa-sha2-256
    • MAC算法:hmac-sha2-256、hmac-sha2-512

    如果源端主机不支持以上安全算法,推荐升级OpenSSH版本至8.0及以上版本,否则无法进行主机深度采集。

  • iptable未禁用与MgC Agent所在主机的通信。在源端主机执行如下命令,如果命令输出中的source字段包含MgC Agent所在主机的访问IP和端口,则代表已禁用,需要取消禁用。
    iptables -L INPUT -v -n

    执行如下命令取消禁用。
    iptables -D INPUT -s <source字段:MgC Agent所在主机IP地址>

准备工作

在源端内网环境中准备一台用于安装MgC Agent的Windows主机,并确保该Windows主机满足以下要求:
  • 操作系统版本为:Windows Server 2019/Windows Server 2016/Windows Server 2012/Windows 10/Windows Server 8.1。
  • PowerShell 版本在3.0及以上。
  • 推荐规格不小于4U8G
  • 安装MgC Agent的磁盘(默认为C盘)预留可用空间不小于20 GB。
  • 可以连接外网(公网),并检查是否能够访问MgC和IoTDA服务的域名,具体需要检查的域名请查看域名列表
  • 检查是否已开放MgC Agent(原Edge)需要的端口,所需端口请查看通信矩阵
  • 安全组的出方向规则中,需要包含8883端口。
  • 关闭该主机上的杀毒、防护类软件,该类软件会拦截MgC Agent的执行,导致迁移工作流执行失败。

不建议将MgC Agent安装在源端待迁移的主机上,主要原因包括:

  • 资源消耗:MgC Agent在采集和迁移运行过程中会消耗CPU和内存资源。在迁移任务量大时,这可能会对源端的业务运行造成影响。
  • 端口占用:MgC Agent会占用源端主机上的一些端口,也可能会对源端业务产生影响。

步骤一:下载并安装MgC Agent

  1. 使用在源端内网环境准备好的Windows主机,登录迁移中心管理控制台。
  2. 在左侧导航栏单击“迁移中心Agent”,进入迁移中心Agent页面。
  3. 在Windows区域,单击“下载安装包”,将MgC Agent安装程序下载到Windows主机。
  4. 将下载的MgC Agent安装包解压,双击安装程序启动安装。如果无法正常启动安装程序,请尝试以兼容性模式运行,方法请参见以兼容性模式运行程序。默认安装在C盘目录下,无法更改。
  5. 安装完成后,单击“完成”,打开MgC Agent控制台。

步骤二:登录MgC Agent

首次登录MgC Agent控制台需要注册用户名和密码。请妥善保存用户名和密码,避免丢失。

  1. 在用户登录页面,登录方式选择“本地账号登录”。
  2. 在用户注册页面,分别输入用户名、密码,确认密码无误后,单击《隐私政策声明》
  3. 仔细阅读《隐私政策声明》内容后,勾选“已阅读并同意《隐私政策声明》”并单击“注册”按钮。

    完成用户注册后,建议每3-6个月更换一次密码。

  4. 注册成功后,输入注册的用户名、密码,单击“登录”按钮,进入MgC Agent的总览页面。

步骤三:获取主机资源列表

您可以通过“发现主机”和“添加资源”两种方式获取主机资源列表。

发现主机包含以下三种方式,请根据主机实际所在环境选择适合的方式:

  • VMware采集:通过vCenter的IP与凭证,一次性发现vCenter下的所有虚拟主机资源。
  • RvTools导入:将RvTools生成的报告导入到MgC Agent中,从而发现主机资源。
  • 网段扫描:通过扫描指定网段,发现内网中的主机资源。

通过手动输入主机的公网/私网IP地址和接入端口等信息添加主机资源。该方法适用于所有主机部署环境。

  1. 登录MgC Agent控制台。
  2. 在左侧导航树选择“资源管理”,进入资源列表页面。
  3. 单击列表上方的“添加资源”按钮,弹出添加资源窗口。
  4. 根据表1,配置参数。

    表1 添加资源参数说明

    参数

    说明

    资源名称

    支持用户自定义。

    资源类型

    支持下拉框选择:SERVER。

    操作系统

    根据实际添加的操作系统选择。

    接入方式

    选择接入IP,输入主机的私网IP,MgC-Agent将通过该IP进行远程连接,采集资源数据。

    说明:
    • 创建Windows进程与网络采集任务时,只能使用私有IP采集。
    • 创建Linux进程与网络采集器任务时,公网和私有IP都可用于采集,但是建议使用私有IP。

    接入端口

    主机开放端口。

    • Windows主机默认为5985端口,可根据实际情况修改。
    • Linux主机默认22端口,可根据实际情况修改。

    宿主机(可选)

    在下拉列表中选择宿主机。

    凭证(可选)

    在下拉列表中选择主机凭证。

  5. 参数配置完成之后,单击“确认”。可在资源列表页面查看添加的主机。

步骤四:添加主机凭证

请参考以下步骤,将所有待采集的主机凭证添加到MgC Agent控制台。为了确保后续采集过程具备充分的系统访问权限,从而能够获取到必要的信息和数据。对主机的凭证要求如下:

  • Linux主机请添加Root账号和密码作为采集凭证。
  • Windows主机请添加Administrator账号和密码作为采集凭证。
  1. 在左侧导航树选择“凭证管理”,进入凭证列表页面。
  2. 单击列表上方的“创建凭证”按钮,弹出创建凭证窗口。

    图1 创建凭证

  3. 使用类型选择“主机”,选择主机系统类型,选择认证方式并输入相应凭证,凭证说明参见表2凭证名称为用户自定义。

    表2 凭证说明

    系统类型

    认证方式

    说明

    Windows主机

    用户名/密码

    选择是否使用HTTPS建立连接。Windows主机默认使用HTTP的WinRM(5985端口)建立连接。使用HTTPS的WinRM(5986端口)建立连接更安全。

    输入源端主机的登录用户名、密码。网段限制填写网段地址,可以是单个IP地址或IP地址段。

    例如:

    • 单个IP地址:192.168.10.10/32
    • IP地址段:192.168.52.0/24
    • 所有IP地址:0.0.0.0/0

    Linux主机

    • 用户名/密码
    • 用户名/密钥
    • 选择用户名和密码时,输入源端主机的登录用户名、密码。
    • 选择用户名和密钥时,输入源端主机登录用户名、口令(密钥文件对应的密码)、上传.pem类型的密钥文件。
      须知:

      如果密钥文件未加密,则口令无需填写。

    网段限制填写网段地址,可以是单个IP地址或IP地址段。例如:

    • 单个IP地址:192.168.10.10/32
    • IP地址段:192.168.52.0/24
    • 所有IP地址:0.0.0.0/0

  4. 凭证信息配置完成后,单击“确认”保存凭证。

步骤五:为主机绑定凭证

完成主机资源发现/添加后,可以按照以下步骤为待采集主机绑定凭证。

  1. 在资源管理页面的资源列表中,单击凭证列的“绑定”,弹出绑定凭证窗口。
  2. 在下拉列表中选择步骤四添加的对应主机凭证。为主机绑定凭证后,凭证状态会变为“已绑定”。
  3. (可选)单击接入端口列的“修改”,弹出修改端口窗口。根据实际情况输入主机的开放端口。

步骤六:创建进程与网络采集任务

MgC Agent提供了Linux和Windows两种系统类型的进程与网络采集器,两种类型的任务参数配置不同,请根据实际操作系统选择对应的方式创建。

  1. 在左侧导航树选择“任务管理”,进入任务管理页面。
  2. 选择“资源采集任务”页签,单击“创建采集任务”按钮,进入创建采集任务页面。

  3. 基本信息区域的采集器下拉列表,选择“Windows进程与网络采集器”。系统会默认创建任务名称,格式为:Windows进程与网络采集器-时间,支持自定义修改。

  4. 选择资源区域,选择已绑定凭证的资源,单任务最多支持选择 50 个资源。
  5. 配置参数区域,根据表3,配置采集器参数信息。关于Window进程与网络采集器的更多说明和相关操作请参考Windows进程与网络采集器(app-discovery-process-netstat-win)

    表3 Windows进程与网络采集器参数配置说明

    参数

    必选

    配置说明

    app_only

    设置是否仅采集进程应用信息,true代表是,false代表否,默认为false。

    duration

    采集持续时间,超过设置的时长即停止采集,单位为m(分钟)/h(小时)/d(天),取值范围≥1m,取整数 。设置时需要带单位,不设置默认为1m。

    interval

    采集间隔时间,单位为m(分钟),1m≤取值范围≤30m,取整数,不设置默认为1m。

    output_path

    自定义的CSV输出文件路径。如 C:\MgC-Agent\test。

    默认路径C:\MgC-Agent\data\collection-result\app-discovery-process-netstat-win。

  6. 配置完成后,单击“确认”按钮,采集任务创建完成。在任务列表中可以查看任务的数据源采集状态。

    • 数据源采集成功后,可以通过如下方式获取采集结果和查看相关信息:
      • 单击任务名称,右侧详情弹框中选择资源,单击“导出”按钮,支持按需导出资源采集结果。

      • 单击任务操作列的“更多 > 下载CSV(.Zip)”,将所有数据源采集结果保存为csv压缩文件,用于本地查看采集结果。

      • 单击任务操作列的“更多 > 显示结果路径”,可以查看采集结果存放路径。
      • 单击下拉箭头,单击操作列“显示命令”,可以查看数据源相关信息。

      • 单击下拉箭头,单击操作列“下载CSV”,将单个数据源采集结果保存为csv文件,用于本地查看采集结果。
    • 数据源采集失败后,单击下拉箭头,鼠标放到“状态”列的失败上展示对应的错误信息。

  1. 在左侧导航树选择“任务管理”,进入任务管理页面。
  2. 选择“资源采集任务”页签,单击“创建采集任务”按钮,进入创建采集任务页面。

  3. 基本信息区域的采集器下拉列表,选择“Linux进程与网络采集器”。系统会默认创建任务名称,格式为:Linux进程与网络采集器-时间,支持自定义修改。

  4. 选择资源区域,选择已绑定凭证的资源,单任务最多支持选择 50 个资源。
  5. 配置参数区域,根据表4,配置采集器参数信息。

    表4 进程与网络采集器参数配置说明

    参数

    必选

    配置说明

    app_only

    设置是否仅采集进程应用信息,true代表是,false代表否,默认为false。

    duration

    采集持续时间,超过设置的时长即停止采集,单位为m(分钟)/h(小时)/d(天),取值范围≥1m,取整数 。设置时需要带单位,不设置默认为1m。

    interval

    采集间隔时间,单位为m(分钟),1m≤取值范围≤30m,取整数,不设置默认为1m。

    output_path

    自定义的CSV输出文件路径。如 C:\MgC-Agent\test。

    默认路径C:\MgC-Agent\data\collection-result\app-discovery-process-netstat-linux。

  6. 配置完成后,单击“确认”按钮,采集任务创建完成。在任务列表中可以查看任务的数据源采集状态。

    • 数据源采集成功后,可以通过如下方式获取采集结果和查看相关信息:
      • 单击任务名称,右侧详情弹框中选择资源,单击“导出”按钮,支持按需导出资源采集结果。

      • 单击任务操作列的“更多 > 下载CSV(.Zip)”,将所有数据源采集结果保存为csv压缩文件,用于本地查看采集结果。

      • 单击任务操作列的“更多 > 显示结果路径”,可以查看采集结果存放路径。
      • 单击下拉箭头,单击操作列“显示命令”,可以查看数据源相关信息。

      • 单击下拉箭头,单击操作列“下载CSV”,将单个数据源采集结果保存为csv文件,用于本地查看采集结果。
    • 数据源采集失败后,单击下拉箭头,鼠标放到“状态”列的失败上展示对应的错误信息。

相关文档