更新时间:2022-02-21 GMT+08:00

节点数据收集

功能

获取当前节点所有与IEF相关的数据,后续IEF运维人员定位使用。

收集的数据清单如下所示。

表1 数据收集清单

分类

收集项

描述

系统数据

硬件架构

收集arch命令输出,并判断IEF安装的类型

CPU信息

解析/proc/cpuinfo文件,输出cpu信息文件

内存信息

收集free -h命令输出

硬盘信息

收集df -h命令输出,以及mount命令输出

网络信息

收集netstat -anp命令输出,并拷贝/etc/resolv.conf和/etc/hosts文件

进程信息

收集ps -aux命令输出

时间信息

收集date和uptime命令输出

历史命令输入

收集当前用户所有输入的命令

IEF数据

IEF数据库数据

拷贝/opt/IEF/Edge-core/bin/edge.db文件

IEF日志文件

拷贝/var/IEF/sys/log下所有文件

IEF service文件

拷贝/lib/systemd/system/下edgecore.service、edgelogger.service、edgemonitor.service、edgedaemon.service文件

IEF软件版本

拷贝/opt/IEF/version文件

IEF证书

拷贝/opt/IEF/Cert/下所有文件

IEF加密物料

拷贝/opt/material/下所有文件

IEF软件中Edge-Core配置文件(包含Edge-daemon)

拷贝/opt/IEF/Edge-core/conf/下所有文件

IEF软件中Edge-Logger配置文件

拷贝/opt/IEF/Edge-logger/conf/下所有文件

IEF软件中Edge-Monitor配置文件

拷贝/opt/IEF/Edge-monitor/conf/下所有文件

Docker数据(若IEF中使能,则收集)

Docker版本信息

收集docker version命令输出

Docker信息

收集docker info命令输出

Docker日志信息

收集journalctl -u docker.service命令输出

Docker容器信息

收集docker ps -a命令输出

Docker容器配置及日志信息

拷贝/var/lib/docker/containers下所有文件

Docker镜像信息

收集docker images命令输出

GPU设备信息

收集ls /dev/nvidiactl /dev/nvidia-uvm /dev/nvidia? 2>&1命令输出

GPU内核模块信息

收集lsmod |grep -e nvidia -e nvidia-uvm 2>&1命令输出

GPU自身信息

收集/var/IEF/nvidia/bin/nvidia-smi 2>&1命令输出

GPU驱动状态信息

收集systemctl status nvidia-drivers-loader命令输出

NPU设备信息

收集ls /dev/davinci_manager /dev/hisi_hdc /dev/davinci?命令输出

语法

edgectl collect [params]

参数说明

表2 参数说明

参数名称

是否必选

简写

描述

--path

-p

缓存IEF数据,并存储IEF数据压缩包的目录。默认为当前目录。

--detail

-x

是否打印内部日志输出。

注意事项

  • 因涉及系统数据的采集,必须按照root方式启动,否则命令会返回失败。
  • 因涉及用户节点数据的采集,需要用户手动输入yes。
  • 采集的数据会以data_{时间戳}.tar.gz的名字,以tar包的形式存在指定的目录下。

使用示例

收集IEF数据:

edgectl collect

提示信息如下,此时请手动输入yes或者y:

Do you agree that edgectl collects data on this machine (yes/no)? y  

示例执行结果:

Data packet name: data_2020-03-18-10-47-47.tar.gz.

+----------------------------------+
| Data collection process succeed. |
+----------------------------------+

回显中会打印缓存的压缩包名称。