掌桥专利:专业的专利平台
掌桥专利
首页

一种基于主动识别采集的运维数据资产维护方法及系统

文献发布时间:2024-04-18 19:58:26


一种基于主动识别采集的运维数据资产维护方法及系统

技术领域

本发明涉及系统运维管理和数据处理技术领域,尤其涉及一种基于主动识别采集的运维数据资产维护方法及系统。

背景技术

运维资产数据维护是保持系统安全和稳定的重要步骤,从系统、设备或应用程序中收集与系统运行相关的数据,例如日志、监控数据、性能指标等作为重要的运维基础资产,可以用于分析系统运行状态、诊断问题、预测故障以及优化系统性能。运维数据资产维护是指对采集到的运维数据进行处理、存储和管理,以确保其可用性、完整性和安全性。

通常的运维资产数据维护过程包括:数据清洗与整理,对采集到的数据进行清洗、整理和规范化处理,以确保数据的准确性和一致性;数据存储与管理,将处理后的运维数据存储在适当的位置,并对其进行管理,以确保其可访问性和长期保存;数据安全与保护,确保运维数据的安全性和隐私性,采取措施来保护数据不被泄露或滥用;数据分析与挖掘,通过分析运维数据,可以发现系统运行中的规律和趋势,为系统优化提供依据。

现有的技术解决方案中,大多采用agent上报基础资产信息的维护资产信息,在实际应用中,仍然存在多种不足。例如,运维数据采集过程中可能会出现数据缺失或错误的情况导致数据采集不完整或不准确,这可能是由于采集工具的故障或错误、数据源的不稳定或其他不可预见的原因导致的;主机采集项少,普通的运维工具只能获取到主机基础信息,无法满足更多的采集项获取需求,使主机上很多所需运维信息不能有效采集;运维数据采集后,需要对大量数据进行处理和分析,如果数据处理效率低下,可能会影响数据分析的及时性和准确性;运维数据的采集、存储、使用、涉及到平台的功能开发,每次的采集需求都需要定制开发,使采集的运维数据很难进行复用;运维数据需要进行长期保存和管理,可能会出现数据存储空间不足、数据备份和恢复困难或其他管理问题;运维数据涉及机密信息或个人隐私,必须确保其安全性和隐私性,否则可能会出现数据泄露、数据损坏或其他安全问题。同时,对于运维数据分析需要采用适当的技术和方法,如果技术不够先进或方法不合适,可能会导致数据分析结果不准确或不足以支持决策。

由此可知,由于现有技术方案存在的诸多不足,常规的采集手段,数据的完整性和准确性受到限制,使传统的运维数据采集仍然需要人工参与,运维人员手动收集整理数据,消耗大量的时间和资源,容易出现人为错误,例如数据录入错误、遗漏、不一致,降低数据的可靠性和可信度,且手动维护的数据准确性和时效性难以保障。

发明内容

为解决现有技术的不足,本发明提出一种基于主动识别采集的运维数据资产维护方法及系统,通过并行处理和分批采集的方式,将数据处理任务与采集任务关联,提高了任务的处理效率和响应速度;实现自动启动采集任务以及自动识别失败的主机并进行重试,确保数据采集的成功率和准确性,根据任务执行记录进行数据处理操作,减轻了运维人员的工作负担。

为实现以上目的,本发明所采用的技术方案包括:

一种基于主动识别采集的运维数据资产维护方法,其特征在于,包括:

S1、配置数据源标签,所述数据源标签对应标识数据类型和数据来源;

S2、匹配数据源标签分别创建对应的数据采集脚本;

S3、获取采集任务,依据采集任务匹配选定一个或多个数据源标签;

S4、根据选定的数据源标签调用对应的数据采集脚本执行数据采集操作,生成第一采集数据;

S5、对第一采集数据执行预处理操作,生成第二采集数据;

S6、使用第二采集数据更新数据资产,生成更新记录,所述更新记录包括采集任务信息、数据源标签信息、数据采集脚本信息、预处理操作信息和数据资产更新信息。

进一步地,所述步骤S2还包括:

匹配数据源标签分别设定任务阈值;

依据任务阈值配置数据采集脚本的执行批次限量和执行失败基准。

进一步地,所述步骤S4还包括:

依据数据源标签指定对应的执行批次限量;

依据执行批次限量分批执行数据采集操作;

依据执行失败基准分别判断各分批的数据采集操作是否执行成功,当判断各分批的数据采集操作均执行成功时,将各分批的数据采集操作所得结果组合生成第一采集数据。

进一步地,所述步骤S4还包括:

当匹配有多个数据源标签时,并行执行各数据源标签对应的数据采集操作。

进一步地,所述获取采集任务包括:

依据预设采集间隔生成采集任务;

和/或,依据数据资产处理任务执行需求生成采集任务。

进一步地,所述对第一采集数据执行预处理操作包括下列操作中的任意一项或多项组合:

数据格式转换;

无效数据清洗;

重复数据归集;

数据表结构转换。

本发明还涉及一种基于主动识别采集的运维数据资产维护系统,其特征在于,包括:

标签管理模块,用于配置数据源标签;

脚本管理模块,用于创建和修改数据采集脚本;

任务匹配模块,用于获取采集任务,依据采集任务匹配选定一个或多个数据源标签;

采集执行模块,用于根据选定的数据源标签调用对应的数据采集脚本执行数据采集操作,生成第一采集数据;

数据预处理模块,用于对第一采集数据执行预处理操作,生成第二采集数据;

资产更新模块,用于使用第二采集数据更新数据资产,生成更新记录。

本发明还涉及一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。

本发明还涉及一种电子设备,其特征在于,包括处理器和存储器;

所述存储器,用于存储数据源标签和数据采集脚本;

所述处理器,用于通过调用数据源标签和数据采集脚本,执行上述的方法。

本发明还涉及一种计算机程序产品,包括计算机程序和/或指令,其特征在于,该计算机程序和/或指令被处理器执行时实现上述方法的步骤。

本发明的有益效果为:

采用本发明所述基于主动识别采集的运维数据资产维护方法及系统,通过并行处理和分批采集的方式定时触发更新任务,将数据处理任务与采集任务关联,实现了对采集数据的自动处理和更新,确保资产管理平台中的数据与实际环境保持同步,提高了数据的质量、可用性和任务的处理效率、响应速度;实现自动启动采集任务以及自动识别失败的主机并进行重试,确保数据采集的成功率和准确性,根据任务执行记录进行数据处理操作,每一条采集执行记录、采集内容、处理结果都可以追溯,减轻了运维人员的工作负担。通过应用本发明方法及系统,减少人工干预,通过标准的数据格式自动化的将采集到的数据自动集成到资产管理平台中,运维人员可以轻松管理和处理大规模的运维数据。

附图说明

图1为本发明基于主动识别采集的运维数据资产维护方法流程示意图。

图2为本发明基于主动识别采集的运维数据资产维护系统结构示意图。

具体实施方式

为了更清楚的理解本发明的内容,将结合附图和实施例详细说明。

本发明第一方面涉及一种步骤流程如图1所示的基于主动识别采集的运维数据资产维护方法,包括:

S1、配置数据源标签,所述数据源标签对应标识数据类型和数据来源。

优选的,可以依据数据源标签建立对应的主机组,根据需要将物理机、虚拟机等划入主机组。同时,可以为主机组增加支持开启或关闭动态匹配,以及支持选择多个匹配规则。开启动态匹配系统自动按照选择的匹配规则属性将符合的物理机和虚拟机划归到该主机组。关闭动态匹配需要手动维护主机组信息。

S2、匹配数据源标签分别创建对应的数据采集脚本。

具体的,对于数据采集任务量较大的应用场景,还可以优选的匹配数据源标签分别设定任务阈值;依据任务阈值配置数据采集脚本的执行批次限量和执行失败基准。

优选的,数据采集脚本的创建可以包括:设置采集脚本的名称、描述、执行的命令、上传采集脚本;脚本上传完成后,支持在线编辑、上传至Fool服务端,下发至指定主机或全量主机;脚本规定统一的输出格式,利用Fool工具在远端执行脚本后,脚本输出json格式数据,用于数据收集和数据处理。

S3、获取采集任务,依据采集任务匹配选定一个或多个数据源标签。执行中,依据采集任务选择关联的脚本和主机组,在指定的主机组上通过Fool工具执行选择的脚本。采集任务可以设置开关选项,以及运行周期和失败节点是否重试选项。

优选的,采集任务可以依据预设采集间隔生成采集任务;和/或,依据数据资产处理任务执行需求生成采集任务。在实际执行中,可以优选的区别标注不同生成方式的采集任务,并可以根据需要对应匹配优先级以使数据采集工作能够匹配数据分析需要。

优选的,可以执行自动匹配主机组任务用于将主机动态划入主机组、周期性运行主动采集任务;或,下发脚本至主机任务、触发执行主动采集任务。

对于数据源标签匹配的具体执行,可以选择针对物理机、虚拟机的字段进行正则或正则匹配,不局限与操作系统类型、主机名、ip地址等。可以选择是否开启动态匹配、串行或并行、是否过滤或者排除主机。

S4、根据选定的数据源标签调用对应的数据采集脚本执行数据采集操作,生成第一采集数据。

优选的,当设定有对应执行批次限量和执行失败基准时,对于单一数据源标签下的数据采集脚本执行可以依据数据源标签指定对应的执行批次限量;依据执行批次限量分批执行数据采集操作;依据执行失败基准分别判断各分批的数据采集操作是否执行成功,当判断各分批的数据采集操作均执行成功时,将各分批的数据采集操作所得结果组合生成第一采集数据。

优选的,当匹配有多个数据源标签时,并行执行各数据源标签对应的数据采集操作。

S5、对第一采集数据执行预处理操作,生成第二采集数据。

具体的,预处理操作包括数据格式转换、无效数据清洗、重复数据归集、数据表结构转换中的任意一项或多项组合。

S6、使用第二采集数据更新数据资产,生成更新记录,所述更新记录包括采集任务信息、数据源标签信息、数据采集脚本信息、预处理操作信息和数据资产更新信息。优选的,每个采集任务、数据处理、脚本下发都会产生一次任务执行记录,包含了一次任务执行主机情况,执行结果、执行事件、失败主机信息等;每个在主机上运行的任务执行情况,关联一个任务执行记录,包含选择的脚本、关联任务运行记录、主机名、主机IP、主机类型、创建时间、状态、执行结果、用途。

以下通过一主动采集数据的具体实施例进一步说明上述方法的执行:

申请一个Mysql数据库,用于存储动态匹配规则、主机组、脚本信息、采集任务配置、数据处理任务配置、任务执行记录和任务执行记录主机详情等信息。申请一个Redis用于存储异步任务以及任务状态。申请3台服务器部署分布式任务处理程序,保证处理程序的高可用性。

在元数据平台中配置动态匹配规则:

规则名称:匹配Mysql;

开启动态匹配:是;

是串行/否并行:否(决定匹配出的结果是交集、合集;

是过滤/否排除:是(决定是否排除匹配中的信息);

匹配规则:-mysql。

配置主机组:

组名称:Mysql主机组;

开启动态匹配规则:是;

匹配动态规则:选中【1.主机名称匹配-mysql 2.主机名称匹配-db】;

关联主机:根据动态匹配规则任务执行后会自动加入。

采集脚本:

脚本名称:Mysql信息采集;

维护脚本内容:标准的python脚本和格式化的json结果输出。

采集任务维护:

任务名称:Mysql信息采集;

运行脚本:Mysql信息采集;

运行主机组:Mysql主机组;

是否开启:是;

运行周期(小时):6;

失败节点是否重试:是;

上次运行时间:为空时立即运行,;

预计下次运行时间:任务运行后根据运行周期重新计算下次运行时间。

数据处理任务:

名称:Mysql数据库信息处理;

描述:处理从Mysql物理机采集到数据库信息;

是否开启:是;

数据来源任务:Mysql信息采集;

应用名称:CMDB资产;

表名称:mysqldatabase;

存储方式:创建或更新;

更新主键:hostname,port,database;

字段处理:{}。

对于一次特定的数据采集、数据处理任务执行过程,可以包括:

每分钟查询一次所有的主动采集任务列表,获取所有达到预计下次运行时间的任务,将任务下发给celery进行处理。

Celery任务处理程序拿到任务信息后创建一条任务执行记录,将任务绑定的主机组信息中的IP列表拿到保存到任务执行记录中,同时将任务上次执行时间和预计下次执行时间更新。将IP列表中不被Fool管理的主机直接创建执行失败的任务执行记录主机详情信息。

根据任务信息和任务执行记录自动启动采集任务。

针对要采集的主机进行分批多次采集,一次采集任务仅下发100台(配置),全部执行成功或者失败节点尝试3次后放弃。采集任务分为下发脚本、执行命令、获取返回结果、将执行结果保存至任务执行记录主机详情。

执行完成后将失败主机和成功主机进行区分记录至任务执行记录中。判断任务是否开启失败重试选项,如果开启则针对失败主机重新执行一次:下发脚本、执行命令、获取返回结果操作。

查询采集任务关联的数据处理任务,数据处理任务根据任务执行记录主机详情信息和数据处理参数及更新方式,对数据处理中对应的表数据进行创建、更新、创建或更新等操作。同时将数据处理结果保存至任务执行记录主机详情中。

本发明另一方面还涉及一种基于主动识别采集的运维数据资产维护系统,其结构如图2所示,包括:

标签管理模块,用于配置数据源标签;

脚本管理模块,用于创建和修改数据采集脚本;

任务匹配模块,用于获取采集任务,依据采集任务匹配选定一个或多个数据源标签;

采集执行模块,用于根据选定的数据源标签调用对应的数据采集脚本执行数据采集操作,生成第一采集数据;

数据预处理模块,用于对第一采集数据执行预处理操作,生成第二采集数据;

资产更新模块,用于使用第二采集数据更新数据资产,生成更新记录。

通过使用该系统,能够执行上述的运算处理方法并实现对应的技术效果。

本发明的实施例还提供能够实现上述实施例中的方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的方法的全部步骤。

本发明的实施例还提供一种用于执行上述方法的电子设备,作为该方法的实现装置,所述电子设备至少具备有处理器和存储器,特别是该存储器上存储有执行方法所需的数据和相关的计算机程序,例如数据源标签和数据采集脚本等,并通过由处理器调用存储器中的数据、程序执行实现方法的全部步骤,并获得对应的技术效果。

优选的,该电子设备可以包含有总线架构,总线可以包括任意数量的互联的总线和桥,总线将包括由一个或多个处理器和存储器的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和接收器和发送器之间提供接口。接收器和发送器可以是同一个元件,即收发机,提供用于在传输介质上与各种其他系统通信的单元。处理器负责管理总线和通常的处理,而存储器可以被用于存储处理器在执行操作时所使用的数据。

额外的,所述电子设备还可以进一步包括通信模块、输入单元、音频处理器、显示器、电源等部件。其所采用的处理器(或称为控制器、操作控件)可以包括微处理器或其他处理器装置和/或逻辑装置,该处理器接收输入并控制电子设备的各个部件的操作;存储器可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种,可储存上述有关的数据信息,此外还可存储执行有关信息的程序,并且处理器可执行该存储器存储的该程序,以实现信息存储或处理等;输入单元用于向处理器提供输入,例如可以为按键或触摸输入装置;电源用于向电子设备提供电力;显示器用于进行图像和文字等显示对象的显示,例如可为LCD显示器。通信模块即为经由天线发送和接收信号的发送机/接收机。通信模块(发送机/接收机)耦合到处理器,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)还经由音频处理器耦合到扬声器和麦克风,以经由扬声器提供音频输出,并接收来自麦克风的音频输入,从而实现通常的电信功能。音频处理器可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器还耦合到中央处理器,从而使得可以通过麦克风能够在本机上录音,且使得可以通过扬声器来播放本机上存储的声音。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的系统。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令系统的制造品,该指令系统实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

以上所述仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换等都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

相关技术
  • 一种基于智能运维平台的人工智能自动识别系统和方法
  • 一种基于MySQL数据库运维方法和系统
  • 一种基于虚拟化计算的大数据平台运维方法以及系统
  • 输电运维跨系统融合数据的采集方法及数字资产处理系统
  • 运维数据采集系统及运维数据采集方法
技术分类

06120116490244