CN111324513B - 一种人工智能开发平台的监控管理方法及系统 - Google Patents

一种人工智能开发平台的监控管理方法及系统 Download PDF

Info

Publication number
CN111324513B
CN111324513B CN202010132501.0A CN202010132501A CN111324513B CN 111324513 B CN111324513 B CN 111324513B CN 202010132501 A CN202010132501 A CN 202010132501A CN 111324513 B CN111324513 B CN 111324513B
Authority
CN
China
Prior art keywords
data
data acquisition
module
time sequence
sequence database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010132501.0A
Other languages
English (en)
Other versions
CN111324513A (zh
Inventor
孙辽东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202010132501.0A priority Critical patent/CN111324513B/zh
Publication of CN111324513A publication Critical patent/CN111324513A/zh
Application granted granted Critical
Publication of CN111324513B publication Critical patent/CN111324513B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及服务器技术领域,提供一种人工智能开发平台的监控管理方法及系统,方法包括:对数据采集模块进行源码优化,并利用优化的数据采集模块进行数据采集;将数据写入多节点部署的时间序列数据库InfluxDB,时间序列数据库InfluxDB处于高可用状态;根据用户选取的聚合分析的时间节点,从所述时间序列数据库InfluxDB中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果,从而不仅解决监控数据安全性和监控数据价值性问题,并且实时提供给用户整个集群资源的使用情况,有效提高计算资源的利用率,减少业务成本,提高产品竞争力。

Description

一种人工智能开发平台的监控管理方法及系统
技术领域
本发明属于服务器技术领域,尤其涉及一种人工智能开发平台的监控管理方法及系统。
背景技术
人工智能开发平台AIStation,将为用户提供更加智能的AI容器化部署以及更具效率的分布式训练。监控管理模块作为AIStation的重要模块,需要实时监控整个集群中节点的运行情况和资源的使用情况,有效的提高计算资源的利用率和生产率;并且需要具有处理大规模集群产生的监控数据,保证监控数据的安全性和数据价值性的能力。
但是,人工智能开发平台在数据采集以及数据存储方面存在如下缺陷:
(1)数据抓取过程中,数据采集场景单一,采集时间粒度无法控制在纳秒级,而且采集模块内存数据容易丢失,而且自身占据内存过大,影响采集数据的存储;
(2)当存储节点故障时,无法正常提供监控管理业务,给用户造成较大损失。
发明内容
针对现有技术中的缺陷,本发明提供了一种人工智能开发平台的监控管理方法,旨在解决现有技术中数据采集场景单一,采集时间粒度无法控制在纳秒级,而且采集模块内存数据容易丢失,同时当存储节点故障时,无法正常提供监控管理业务的问题。
本发明所提供的技术方案是:一种人工智能开发平台的监控管理方法,所述方法包括下述步骤:
对数据采集模块进行源码优化,并利用优化的数据采集模块进行数据采集,其中采集到的数据为包括集群、存储节点和GPU卡在内的各个资源的使用数据;
将采集到的数据写入多节点部署的时间序列数据库,所述时间序列数据库处于高可用状态;
根据用户选取的聚合分析的时间节点,从所述时间序列数据库中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果。
作为一种改进的方案,所述数据采集模块的源码优化内容包括自定义数据采集脚本、数据采集方式的修改和数据采集模块内存管理方式的修改;
其中,修改后的数据采集方式满足指定场景的数据采集和纳米级时间粒度的采集,所述自定义数据采集脚本所采集的数据包括节点中CPU的温度、GPU卡的性能数据以及容器相关的性能数据,所述指定场景包括GPU存在不可用情况的场景和由于网络问题导致GPU卡训练速度不足的场景;
内存管理方式的修改包括在所述数据采集模块内增加一个中间文件,所述中间文件用来存储数据采集模块中的内存数据;
所述时间序列数据库为InfluxDB。
作为一种改进的方案,所述利用优化的数据采集模块进行数据采集的步骤具体包括下述步骤:
采集符合源码优化的数据采集模块内存结构的数据;
通过对所述数据采集模块内存管理方式的修改,在将采集的数据写入时间序列数据库InfluxDB之前,将所述数据采集模块的内存数据写入预先配置的中间文件。
作为一种改进的方案,所述时间序列数据库InfluxDB的高可用状态的设置步骤具体包括:
配置多个用于冗余的存储节点,并将所述数据采集模块采集到的数据同时写入多个存储节点的时间序列数据库InfluxDB中;
对服务器集群中的存储节点进行增加或删除,同时,通过自动修改目前集群中所有存储节点中数据采集模块写入数据的目标信息,并且把集群中所有的时间序列数据库InfluxDB的配置信息维护到配置中心中;
在Linux操作系统上增加对所述时间序列数据库InfluxDB的可用性检测脚本,用于对所述时间序列数据库InfluxDB的可用性进行检测;
在Linux操作系统上增加用于重启恢复所述时间序列数据库InfluxDB的恢复脚本,用于对当检测到所述时间序列数据库InfluxDB不可用时,通过重启服务以及清理内存的方式进行服务恢复;
在Linux操作系统上增加存储节点切换脚本,用于当时间序列数据库InfluxDB恢复失败时,将工作状态切换到备用的存储节点上。
作为一种改进的方案,所述根据用户选取的聚合分析的时间节点,从所述时间序列数据库InfluxDB中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果的步骤具体包括下述步骤:
选取聚合分析的时间节点,所述时间节点包括24小时、7天以及30天;
根据选取的聚合分析的时间节点,按照与所述时间节点相匹配的时间频率在所述数据采集模块采集的包括集群、存储节点和GPU卡在内的各个资源的使用数据中采集一次数据;
将所有次采集到数据做聚合分析,生成聚合分析结果,并存储在时间序列数据库InfluxDB中;
接收用户输入的页面展示命令,从所述时间序列数据库InfluxDB中查找与所述页面展示命令相匹配的聚合分析结果,并通过UI界面展示。
本发明的另一目的在于提供一种人工智能开发平台的监控管理系统,其特征在于,所述系统包括:
源码优化模块,用于对数据采集模块进行源码优化;
数据采集控制模块,用于利用优化的数据采集模块进行数据采集,其中采集到的数据为包括集群、存储节点和GPU卡在内的各个资源的使用数据;
数据写入模块,用于将采集到的数据写入多节点部署的时间序列数据库,所述时间序列数据库处于高可用状态;
聚合展示模块,用于根据用户选取的聚合分析的时间节点,从所述时间序列数据库中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果。
作为一种改进的方案,所述数据采集模块的源码优化内容包括自定义数据采集脚本、数据采集方式的修改和数据采集模块内存管理方式的修改;
其中,修改后的数据采集方式满足指定场景的数据采集和纳米级时间粒度的采集,所述自定义数据采集脚本所采集的数据包括节点中CPU的温度、GPU卡的性能数据以及容器相关的性能数据,所述指定场景包括GPU存在不可用情况的场景和由于网络问题导致GPU卡训练速度不足的场景;
内存管理方式的修改包括在所述数据采集模块内增加一个中间文件,所述中间文件用来存储数据采集模块中的内存数据;
所述时间序列数据库为InfluxDB。
作为一种改进的方案,所述数据采集控制模块具体包括:
采集模块,用于采集符合源码优化的数据采集模块内存结构的数据;
中间文件写入模块,用于通过对所述数据采集模块内存管理方式的修改,在将采集的数据写入时间序列数据库InfluxDB之前,将所述数据采集模块的内存数据写入预先配置的中间文件。
作为一种改进的方案,所述系统还包括:
冗余存储节点配置模块,用于配置多个用于冗余的存储节点;
多存储节点存储模块,用于将所述数据采集模块采集到的数据同时写入多个存储节点的时间序列数据库InfluxDB中;
存储节点修改模块,用于对服务器集群中的存储节点进行增加或删除;
修改匹配模块,用于通过自动修改目前集群中所有存储节点中数据采集模块写入数据的目标信息,并且把集群中所有的时间序列数据库InfluxDB的配置信息维护到配置中心中;
可用性检测脚本增加模块,用于在Linux操作系统上增加对所述时间序列数据库InfluxDB的可用性检测脚本;
可用性检测模块,用于对所述时间序列数据库InfluxDB的可用性进行检测;
恢复脚本增加模块,用于在Linux操作系统上增加用于重启恢复所述时间序列数据库InfluxDB的恢复脚本;
恢复模块,用于对当检测到所述时间序列数据库InfluxDB不可用时,通过重启服务以及清理内存的方式进行服务恢复;
储存节点切换脚本增加模块,用于在Linux操作系统上增加存储节点切换脚本;
切换模块,用于当时间序列数据库InfluxDB恢复失败时,将工作状态切换到备用的存储节点上。
作为一种改进的方案,所述聚合展示模块具体包括下述步骤:
时间节点选取模块,用于选取聚合分析的时间节点,所述时间节点包括24小时、7天以及30天;
分频采集模块,用于根据选取的聚合分析的时间节点,按照与所述时间节点相匹配的时间频率在所述数据采集模块采集的包括集群、存储节点和GPU卡在内的各个资源的使用数据中采集一次数据;
聚合分析模块,用于将所有次采集到数据做聚合分析,生成聚合分析结果,并存储在时间序列数据库InfluxDB中;
匹配查找模块,用于接收用户输入的页面展示命令,从所述时间序列数据库InfluxDB中查找与所述页面展示命令相匹配的聚合分析结果;
界面展示模块,用于将所述匹配查找模块查找到的聚合分析结果通过UI界面展示。
在本发明实施例中,对数据采集模块进行源码优化,并利用优化的数据采集模块进行数据采集;将采集到的数据写入多节点部署的时间序列数据库,所述时间序列数据库处于高可用状态;根据用户选取的聚合分析的时间节点,从所述时间序列数据库中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果,从而不仅解决了监控数据安全性和监控数据价值性问题,并且可以通过UI交互实时提供给用户整个集群资源的使用情况,有效的提高计算资源的利用率和生产率,减少业务成本,提高了AI平台在同类产品中的竞争力。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1是本发明提供的人工智能开发平台的监控管理方法的实现流程图;
图2是本发明提供的利用优化的数据采集模块进行数据采集的实现流程图;
图3是本发明提供的时间序列数据库的高可用状态的设置流程图;
图4是本发明提供的对所述数据采集模块采集到的包括集群、存储节点和GPU卡在内的各个资源的使用数据进行聚合分析,并通过UI界面展示给用户的实现流程图;
图5是本发明提供的聚合分析示意图;
图6是本发明提供的人工智能开发平台的监控管理系统的结构框图;
图7是本发明提供的聚合展示模块的结构框图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的、技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。
图1是本发明提供的人工智能开发平台的监控管理方法的实现流程图,其具体包括下述步骤:
在步骤S101中,对数据采集模块进行源码优化,并利用优化的数据采集模块进行数据采集,其中采集到的数据为包括集群、存储节点和GPU卡在内的各个资源的使用数据;
在该步骤中,该数据采集模块可以是Telegraf,其部署在集群的每个主机上,通过不同的input plugin采集不同的资源的监控信息,将监控信息输出到数据库InfluxDB。
在步骤S102中,将采集到的数据写入多节点部署的时间序列数据库InfluxDB,所述时间序列数据库InfluxDB处于高可用状态;
在步骤S103中,根据用户选取的聚合分析的时间节点,从所述时间序列数据库InfluxDB中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果。
在该实施例中,数据采集模块的源码优化内容包括自定义数据采集脚本、数据采集方式的修改和数据采集模块内存管理方式的修改;
修改后的数据采集方式满足指定场景的数据采集和纳米级时间粒度的采集,所述自定义数据采集脚本所采集的数据包括节点中CPU的温度、GPU卡的性能数据以及容器相关的性能数据,通过该设置,精简数据采集模块采集数据的整个过程,直接采集生成符合数据采集模块内存结构的数据;
内存管理方式的修改包括在所述数据采集模块内增加一个中间文件,所述中间文件用来存储数据采集模块中的内存数据;而且该中间文件的设置,既可快速的释放数据采集模块占用的内存,又可以解决数据采集模块内存数据丢失的问题。
其中,上述指定场景包括GPU存在不可用情况的场景和由于网络问题导致GPU卡训练速度不足的场景,其具体为:
(1)检测GPU卡的可用性:用户在大规模训中,经常会遇到由于GPU温度过高或GPU供电不足导致GPU丢失,以致影响整个训练;该实施例可以提前获取GPU的温度和GPU供电信息反馈给用户,降低GPU不可用的概率;
(2)提高训练效率:在多GPU卡训练过程中经常会由于网络问题导致训练速度不足,该实施例通过抓取GPU卡拓扑信息(GPU卡之间的最短路径),快速分配最短路径的GPU卡给用户,提高训练效率。
在该实施例中,通过调整CPU和GPU内部的物理结构实现数据采集粒度精确到纳米级,提升采集效率,在此不再赘述。
在本发明实施例中,如图2所示,利用优化的数据采集模块进行数据采集的步骤具体包括下述步骤:
在步骤S201中,采集符合源码优化的数据采集模块内存结构的数据;
在步骤S202中,通过对所述数据采集模块内存管理方式的修改,在将采集的数据写入时间序列数据库InfluxDB之前,将所述数据采集模块的内存数据写入预先配置的中间文件。
在本发明实施例中,如图3所示,时间序列数据库InfluxDB的高可用状态的设置步骤具体包括:
在步骤S301中,配置多个用于冗余的存储节点,并将所述数据采集模块采集到的数据同时写入多个存储节点的时间序列数据库InfluxDB中;
在步骤S302中,对服务器集群中的存储节点进行增加或删除,同时,通过自动修改目前集群中所有存储节点中数据采集模块写入数据的目标信息,并且把集群中所有的时间序列数据库InfluxDB的配置信息维护到配置中心中;
在步骤S303中,在Linux操作系统上增加对所述时间序列数据库InfluxDB的可用性检测脚本,用于对所述时间序列数据库InfluxDB的可用性进行检测;
在该步骤中,该可用性检测的内容包括InfluxDB本身系统级别状态检测(通过systemctl status InfluxDB即可获取状态)、InfluxDB本身数据库读写性能(通过InfluxDB本身监控接口直接获取)以及InfluxDB写入和查询数据服务状态检测(通过插入和查询一条数据即可获取)。
获取以上数据进行故障判断:如果状态为stop或者读写性能太低都会被判定为不可用;判断不可用之后系统会通过重启服务、清理内存的方式完成服务恢复,如果恢复失败则开发服务切换功能。
在步骤S304中,在Linux操作系统上增加用于重启恢复所述时间序列数据库InfluxDB的恢复脚本,用于对当检测到所述时间序列数据库InfluxDB不可用时,通过重启服务以及清理内存的方式进行服务恢复;
在步骤S305中,在Linux操作系统上增加存储节点切换脚本,用于当时间序列数据库InfluxDB恢复失败时,将工作状态切换到备用的存储节点上。
在该步骤中,如果自动切换失败则需要通知管理员来进行手动切换,在此不再赘述。
在本发明实施例中,该时间序列数据库InfluxDB的高可用性的设置,考虑了各种场景的应用,保证数据安全,防止数据丢失,给用户较好的体验。
在本发明实施例中,结合图4和图5所示,根据用户选取的聚合分析的时间节点,从所述时间序列数据库InfluxDB中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果的步骤具体包括下述步骤:
在步骤S401中,选取聚合分析的时间节点,所述时间节点包括24小时、7天以及30天,如图5中的上述判断框中的时间节点,当然也可以设置为其他时间节点;
在步骤S402中,根据选取的聚合分析的时间节点,按照与所述时间节点相匹配的时间频率在所述数据采集模块采集的包括集群、存储节点和GPU卡在内的各个资源的使用数据中采集一次数据,对应上述的时间节点该采集频率对应为15分钟、2个小时、8个小时以及24小时;
在步骤S403中,将所有次采集到数据做聚合分析,生成聚合分析结果,并存储在时间序列数据库InfluxDB中,对每一个单位的时间频率采集的数据进行聚合分析,生成供用户查看的界面数据;
在步骤S404中,接收用户输入的页面展示命令,从所述时间序列数据库InfluxDB中查找与所述页面展示命令相匹配的聚合分析结果,并通过UI界面展示;
结合图5中的展示内容,对应上述时间节点、时间频率给出相应的24小时内的采集数据、7天内的采集数据、30天内的采集数据、180内的采集数据以及其他,在此不再赘述。
在该实施例中,通过上述设置,可供用户直观的了解整个人工智能开发平台AIStation的状态。
图6示出了本发明提供的人工智能开发平台的监控管理系统的结构框图,为了便于说明,图中仅给出了与本发明实施例相关的部分。
人工智能开发平台的监控管理系统包括:
源码优化模块11,用于对数据采集模块进行源码优化;
数据采集控制模块12,用于利用优化的数据采集模块进行数据采集,其中采集到的数据为包括集群、存储节点和GPU卡在内的各个资源的使用数据;
数据写入模块13,用于将采集到的数据写入多节点部署的时间序列数据库InfluxDB,所述时间序列数据库InfluxDB处于高可用状态;
聚合展示模块14,用于根据用户选取的聚合分析的时间节点,从所述时间序列数据库InfluxDB中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果。
在该实施例中,数据采集模块的源码优化内容包括自定义数据采集脚本、数据采集方式的修改和数据采集模块内存管理方式的修改;
其中,修改后的数据采集方式满足指定场景的数据采集和纳米级时间粒度的采集,所述自定义数据采集脚本所采集的数据包括节点中CPU的温度、GPU卡的性能数据以及容器相关的性能数据;
内存管理方式的修改包括在所述数据采集模块内增加一个中间文件,所述中间文件用来存储数据采集模块中的内存数据。
结合图6所示,数据采集控制模块12具体包括:
采集模块15,用于采集符合源码优化的数据采集模块内存结构的数据;
中间文件写入模块16,用于通过对所述数据采集模块内存管理方式的修改,在将采集的数据写入时间序列数据库InfluxDB之前,将所述数据采集模块的内存数据写入预先配置的中间文件。
在本发明实施例中,结合图6所示,所述系统还包括:
冗余存储节点配置模块17,用于配置多个用于冗余的存储节点;
多存储节点存储模块18,用于将所述数据采集模块采集到的数据同时写入多个存储节点的时间序列数据库InfluxDB中;
存储节点修改模块19,用于对服务器集群中的存储节点进行增加或删除;
修改匹配模块20,用于通过自动修改目前集群中所有存储节点中数据采集模块写入数据的目标信息,并且把集群中所有的时间序列数据库InfluxDB的配置信息维护到配置中心中;
可用性检测脚本增加模块21,用于在Linux操作系统上增加对所述时间序列数据库InfluxDB的可用性检测脚本;
可用性检测模块22,用于对所述时间序列数据库InfluxDB的可用性进行检测;
恢复脚本增加模块23,用于在Linux操作系统上增加用于重启恢复所述时间序列数据库InfluxDB的恢复脚本;
恢复模块24,用于对当检测到所述时间序列数据库InfluxDB不可用时,通过重启服务以及清理内存的方式进行服务恢复;
储存节点切换脚本增加模块25,用于在Linux操作系统上增加存储节点切换脚本;
切换模块26,用于当时间序列数据库InfluxDB恢复失败时,将工作状态切换到备用的存储节点上。
在本发明实施例中,如图7所示,聚合展示模块14具体包括:
时间节点选取模块27,用于选取聚合分析的时间节点,所述时间节点包括24小时、7天以及30天;
分频采集模块28,用于根据选取的聚合分析的时间节点,按照与所述时间节点相匹配的时间频率在所述数据采集模块采集的包括集群、存储节点和GPU卡在内的各个资源的使用数据中采集一次数据;
聚合分析模块29,用于将所有次采集到数据做聚合分析,生成聚合分析结果,并存储在时间序列数据库InfluxDB中;
匹配查找模块30,用于接收用户输入的页面展示命令,从所述时间序列数据库InfluxDB中查找与所述页面展示命令相匹配的聚合分析结果;
界面展示模块31,用于将所述匹配查找模块查找到的聚合分析结果通过UI界面展示。
在本发明实施例中,对数据采集模块进行源码优化,并利用优化的数据采集模块进行数据采集;将采集到的数据写入多节点部署的时间序列数据库InfluxDB,所述时间序列数据库InfluxDB处于高可用状态;根据用户选取的聚合分析的时间节点,从所述时间序列数据库InfluxDB中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果,从而不仅解决了监控数据安全性和监控数据价值性问题,并且可以通过UI交互实时提供给用户整个集群资源的使用情况,有效的提高计算资源的利用率和生产率,减少业务成本,提高了AI平台在同类产品中的竞争力。
以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

Claims (8)

1.一种人工智能开发平台的监控管理方法,其特征在于,所述方法包括下述步骤:
对数据采集模块进行源码优化,并利用优化的数据采集模块进行数据采集,其中采集到的数据为包括集群、存储节点和GPU卡在内的各个资源的使用数据;
将采集到的数据写入多节点部署的时间序列数据库,所述时间序列数据库处于高可用状态;
根据用户选取的聚合分析的时间节点,从所述时间序列数据库中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果;
所述数据采集模块的源码优化内容包括自定义数据采集脚本、数据采集方式的修改和数据采集模块内存管理方式的修改;
其中,修改后的数据采集方式满足指定场景的数据采集和纳米级时间粒度的采集,所述自定义数据采集脚本所采集的数据包括节点中CPU的温度、GPU卡的性能数据以及容器相关的性能数据,所述指定场景包括GPU存在不可用情况的场景和由于网络问题导致GPU卡训练速度不足的场景;
内存管理方式的修改包括在所述数据采集模块内增加一个中间文件,所述中间文件用来存储数据采集模块中的内存数据;
所述时间序列数据库为InfluxDB。
2.根据权利要求1所述的人工智能开发平台的监控管理方法,其特征在于,所述利用优化的数据采集模块进行数据采集的步骤具体包括下述步骤:
采集符合源码优化的数据采集模块内存结构的数据;
通过对所述数据采集模块内存管理方式的修改,在将采集的数据写入时间序列数据库InfluxDB之前,将所述数据采集模块的内存数据写入预先配置的中间文件。
3.根据权利要求1所述的人工智能开发平台的监控管理方法,其特征在于,所述时间序列数据库InfluxDB的高可用状态的设置步骤具体包括:
配置多个用于冗余的存储节点,并将所述数据采集模块采集到的数据同时写入多个存储节点的时间序列数据库InfluxDB中;
对服务器集群中的存储节点进行增加或删除,同时,通过自动修改目前集群中所有存储节点中数据采集模块写入数据的目标信息,并且把集群中所有的时间序列数据库InfluxDB的配置信息维护到配置中心中;
在Linux操作系统上增加对所述时间序列数据库InfluxDB的可用性检测脚本,用于对所述时间序列数据库InfluxDB的可用性进行检测;
在Linux操作系统上增加用于重启恢复所述时间序列数据库InfluxDB的恢复脚本,用于对当检测到所述时间序列数据库InfluxDB不可用时,通过重启服务以及清理内存的方式进行服务恢复;
在Linux操作系统上增加存储节点切换脚本,用于当时间序列数据库InfluxDB恢复失败时,将工作状态切换到备用的存储节点上。
4.根据权利要求1所述的人工智能开发平台的监控管理方法,其特征在于,所述根据用户选取的聚合分析的时间节点,从所述时间序列数据库InfluxDB中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果的步骤具体包括下述步骤:
选取聚合分析的时间节点,所述时间节点包括24小时、7天以及30天;
根据选取的聚合分析的时间节点,按照与所述时间节点相匹配的时间频率在所述数据采集模块采集的包括集群、存储节点和GPU卡在内的各个资源的使用数据中采集一次数据;
将所有次采集到数据做聚合分析,生成聚合分析结果,并存储在时间序列数据库InfluxDB中;
接收用户输入的页面展示命令,从所述时间序列数据库InfluxDB中查找与所述页面展示命令相匹配的聚合分析结果,并通过UI界面展示。
5.一种人工智能开发平台的监控管理系统,其特征在于,所述系统包括:
源码优化模块,用于对数据采集模块进行源码优化;
数据采集控制模块,用于利用优化的数据采集模块进行数据采集,其中采集到的数据为包括集群、存储节点和GPU卡在内的各个资源的使用数据;
数据写入模块,用于将采集到的数据写入多节点部署的时间序列数据库,所述时间序列数据库处于高可用状态;
聚合展示模块,用于根据用户选取的聚合分析的时间节点,从所述时间序列数据库中采集包括集群、存储节点和GPU卡在内的各个资源的使用数据,同时对采集到的使用数据进行聚合分析,并通过UI界面展示聚合分析结果;
所述数据采集模块的源码优化内容包括自定义数据采集脚本、数据采集方式的修改和数据采集模块内存管理方式的修改;
其中,修改后的数据采集方式满足指定场景的数据采集和纳米级时间粒度的采集,所述自定义数据采集脚本所采集的数据包括节点中CPU的温度、GPU卡的性能数据以及容器相关的性能数据,所述指定场景包括GPU存在不可用情况的场景和由于网络问题导致GPU卡训练速度不足的场景;
内存管理方式的修改包括在所述数据采集模块内增加一个中间文件,所述中间文件用来存储数据采集模块中的内存数据;
所述时间序列数据库为InfluxDB。
6.根据权利要求5所述的人工智能开发平台的监控管理系统,其特征在于,所述数据采集控制模块具体包括:
采集模块,用于采集符合源码优化的数据采集模块内存结构的数据;
中间文件写入模块,用于通过对所述数据采集模块内存管理方式的修改,在将采集的数据写入时间序列数据库InfluxDB之前,将所述数据采集模块的内存数据写入预先配置的中间文件。
7.根据权利要求5所述的人工智能开发平台的监控管理系统,其特征在于,所述系统还包括:
冗余存储节点配置模块,用于配置多个用于冗余的存储节点;
多存储节点存储模块,用于将所述数据采集模块采集到的数据同时写入多个存储节点的时间序列数据库InfluxDB中;
存储节点修改模块,用于对服务器集群中的存储节点进行增加或删除;
修改匹配模块,用于通过自动修改目前集群中所有存储节点中数据采集模块写入数据的目标信息,并且把集群中所有的时间序列数据库InfluxDB的配置信息维护到配置中心中;
可用性检测脚本增加模块,用于在Linux操作系统上增加对所述时间序列数据库InfluxDB的可用性检测脚本;
可用性检测模块,用于对所述时间序列数据库InfluxDB的可用性进行检测;
恢复脚本增加模块,用于在Linux操作系统上增加用于重启恢复所述时间序列数据库InfluxDB的恢复脚本;
恢复模块,用于对当检测到所述时间序列数据库InfluxDB不可用时,通过重启服务以及清理内存的方式进行服务恢复;
储存节点切换脚本增加模块,用于在Linux操作系统上增加存储节点切换脚本;
切换模块,用于当时间序列数据库InfluxDB恢复失败时,将工作状态切换到备用的存储节点上。
8.根据权利要求5所述的人工智能开发平台的监控管理系统,其特征在于,所述聚合展示模块具体包括下述步骤:
时间节点选取模块,用于选取聚合分析的时间节点,所述时间节点包括24小时、7天以及30天;
分频采集模块,用于根据选取的聚合分析的时间节点,按照与所述时间节点相匹配的时间频率在所述数据采集模块采集的包括集群、存储节点和GPU 卡在内的各个资源的使用数据中采集一次数据;
聚合分析模块,用于将所有次采集到数据做聚合分析,生成聚合分析结果,并存储在时间序列数据库InfluxDB中;
匹配查找模块,用于接收用户输入的页面展示命令,从所述时间序列数据库InfluxDB中查找与所述页面展示命令相匹配的聚合分析结果;
界面展示模块,用于将所述匹配查找模块查找到的聚合分析结果通过UI界面展示。
CN202010132501.0A 2020-02-29 2020-02-29 一种人工智能开发平台的监控管理方法及系统 Active CN111324513B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010132501.0A CN111324513B (zh) 2020-02-29 2020-02-29 一种人工智能开发平台的监控管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010132501.0A CN111324513B (zh) 2020-02-29 2020-02-29 一种人工智能开发平台的监控管理方法及系统

Publications (2)

Publication Number Publication Date
CN111324513A CN111324513A (zh) 2020-06-23
CN111324513B true CN111324513B (zh) 2022-12-27

Family

ID=71172962

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010132501.0A Active CN111324513B (zh) 2020-02-29 2020-02-29 一种人工智能开发平台的监控管理方法及系统

Country Status (1)

Country Link
CN (1) CN111324513B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116301796A (zh) * 2023-02-15 2023-06-23 四川省气象探测数据中心 一种基于人工智能技术的气象数据分析系统及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943668A (zh) * 2017-12-15 2018-04-20 江苏神威云数据科技有限公司 计算机服务器集群日志监控方法及监控平台
CN108829509A (zh) * 2018-05-03 2018-11-16 山东汇贸电子口岸有限公司 基于国产cpu和操作系统的分布式容器集群框架资源管理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943668A (zh) * 2017-12-15 2018-04-20 江苏神威云数据科技有限公司 计算机服务器集群日志监控方法及监控平台
CN108829509A (zh) * 2018-05-03 2018-11-16 山东汇贸电子口岸有限公司 基于国产cpu和操作系统的分布式容器集群框架资源管理方法

Also Published As

Publication number Publication date
CN111324513A (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
CN102981931B (zh) 虚拟机备份方法及装置
CN103069752B (zh) 收集信息的代理的方法和存储管理系统
CN105512283A (zh) 数据质量管理控制方法及装置
CN104035836A (zh) 集群检索平台中的自动容灾恢复方法及系统
CN103399781A (zh) 云服务器及其虚拟机管理方法
CN103973470A (zh) 用于无共享集群的集群管理方法和设备
CN114816820A (zh) chproxy集群故障修复方法、装置、设备及存储介质
CN103034567A (zh) 发现并修复损坏数据的装置和方法
CN111324513B (zh) 一种人工智能开发平台的监控管理方法及系统
CN111327685A (zh) 分布式存储系统数据处理方法、装置及设备和存储介质
CN108647118A (zh) 基于存储集群的副本异常恢复方法、装置及计算机设备
CN113705896A (zh) 目标设备的确定方法、装置及电子设备
CN116701043B (zh) 面向异构计算系统的故障节点切换方法、装置和设备
EP2838023A2 (en) Centralised information reporting in a large scale information processing system
CN116723085A (zh) 服务冲突的处理方法、装置、存储介质及电子装置
CN112579552A (zh) 日志存储及调用方法、装置及系统
CN111162938A (zh) 数据处理系统及方法
CN114598731B (zh) 集群日志采集方法、装置、设备及存储介质
CN109032762A (zh) 虚拟机回溯方法及相关设备
CN113872673A (zh) 一种卫星星座仿真的容器云资源调度系统及其调度方法
Kang et al. Spatiotemporal real-time anomaly detection for supercomputing systems
CN104199930A (zh) 数据采集及处理的系统及方法
CN111885159A (zh) 数据采集方法、装置、电子设备及存储介质
CN112231142B (zh) 系统备份恢复方法、装置、计算机设备和存储介质
CN110830281A (zh) 一种基于网状网络结构的热备方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant