CN110262941B - 应用程序容器集群报警实现方法、系统、设备及存储介质 - Google Patents

应用程序容器集群报警实现方法、系统、设备及存储介质 Download PDF

Info

Publication number
CN110262941B
CN110262941B CN201910450320.XA CN201910450320A CN110262941B CN 110262941 B CN110262941 B CN 110262941B CN 201910450320 A CN201910450320 A CN 201910450320A CN 110262941 B CN110262941 B CN 110262941B
Authority
CN
China
Prior art keywords
container
monitoring
alarm
program
application program
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
CN201910450320.XA
Other languages
English (en)
Other versions
CN110262941A (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.)
Shenzhen Inovance Technology Co Ltd
Original Assignee
Shenzhen Inovance 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 Shenzhen Inovance Technology Co Ltd filed Critical Shenzhen Inovance Technology Co Ltd
Priority to CN201910450320.XA priority Critical patent/CN110262941B/zh
Publication of CN110262941A publication Critical patent/CN110262941A/zh
Application granted granted Critical
Publication of CN110262941B publication Critical patent/CN110262941B/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/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/323Visualisation of programs or trace data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供了一种应用程序容器集群报警实现方法、系统、设备及存储介质,所述实现方法包括:创建包括有监控程序和报警程序的监控报警容器,并将所述监控报警容器通过Kubernetes平台部署到宿主机;在应用程序容器中安装监控组件,所述监控组件用于实时获取应用程序在每一节点的运行指标数据;启动所述监控报警容器,使所述监控程序通过所述应用程序容器中的监控组件,实时获取所述应用程序在应用程序容器集群中每一节点的运行指标数据,当所述应用程序在任一节点的运行指标数据超出预设范围时,所述报警程序发出报警消息。本发明实施例可对应用程序容器集群的运行指标进行监控,从而有助于合理调整、分配系统资源,提高应用程序容器集群整体的性能。

Description

应用程序容器集群报警实现方法、系统、设备及存储介质
技术领域
本发明实施例涉及数据监控领域,更具体地说,涉及一种应用程序容器集群报警实现方法、系统及存储介质。
背景技术
Ganglia是UC Berkeley发起的一个开源集群监视项目,其核心包含gmond、gmetad以及一个Web前端,主要用来监控系统性能,如:CPU(Central Processing Unit,中央处理器)、内存、硬盘利用率、I/O负载、网络流量情况等,通过Web前端上的曲线很容易获知每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。
然而,Ganglia的主要功能是从节点中按照用户的需求以较低的代价采集数据,其在预警以及发生事件后通知用户的功能较弱。因此,如果应用程序集群发生异常,我们并不能及时发现止损。
Nagios是一个监视系统运行状态和网络信息的监视系统,其能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等。
为实现较好的数据监控和异常报警,通常需组合Ganglia和Nagios两款软件来对传统应用程序集群进行监控和报警。然而,上述方案仅能对部署在物理机或虚拟机之上的应用程序集群进行监控和报警,而无法对部署在Kubernetes系统的应用程序容器集群进行监控和报警。
发明内容
本发明实施例针对上述无法对部署在Kubernetes系统的应用程序容器集群进行监控和报警的问题,提供一种应用程序容器集群报警实现方法、系统、设备及存储介质。
本发明实施例解决上述技术问题的技术方案是,提供一种应用程序容器集群报警实现方法,所述应用程序容器集群通过Kubernetes平台部署在多个第一宿主机上,所述实现方法包括:
创建包括有监控程序和报警程序的监控报警容器,并将所述监控报警容器通过Kubernetes平台部署到第二宿主机;
在应用程序容器中安装监控组件,所述监控组件用于实时获取应用程序在所述应用程序容器集群的每一节点的运行指标数据,并响应所述监控程序的数据请求;
启动所述监控报警容器,使所述监控程序通过所述应用程序容器中的监控组件,实时获取所述应用程序在应用程序容器集群中每一节点的运行指标数据,当所述应用程序在应用程序容器集群的任一节点的运行指标数据超出预设范围时,所述报警程序发出报警消息。
优选地,所述监控程序为Ganglia,所述报警程序为Nagios,所述监控组件为Ganglia监控组件;所述报警程序通过向预设的电子邮箱发送电子邮件实现报警消息发送。
优选地,所述在应用程序容器中安装监控组件包括:
在用于创建所述应用程序容器的镜像中安装Ganglia监控组件,并将所述镜像上传到镜像仓库中,所述镜像仓库用于在所述应用程序容器启动时提供镜像下载和使用;
编辑所述应用程序容器的yaml文件,使所述应用程序容器内部的监控数据发送端口映射到所述应用程序容器所在第一宿主机IP地址的对应端口上;
通过Kubernetes平台,使用yaml文件来部署所述应用程序容器集群。
优选地,所述创建包括有监控程序和报警程序的监控报警容器包括:在所述监控报警容器的启动脚本中写入使所述监控程序和报警程序自动启动的命令。
优选地,所述创建包括有监控程序和报警程序的监控报警容器包括:通过Kubernetes平台的yaml文件,将所述监控报警容器的监控指标数据和配置文件挂载到所述第二宿主机。
优选地,所述创建包括有监控程序和报警程序的监控报警容器包括:通过Kubernetes平台的yaml文件,将所述监控报警容器的web服务端口和监控数据采集端口映射到所述监控报警容器所在的第二宿主机IP地址的对应端口上;
所述实现方法包括:通过web服务展示所述应用程序在所述应用程序容器集群的每一节点的运行指标数据。
本发明实施例还提供一种应用程序容器集群报警实现系统,所述应用程序容器集群通过Kubernetes平台部署在多个第一宿主机上,所述实现系统包括监控报警容器创建单元、监控组件安装单元以及监控报警容器启动单元,其中:
所述监控报警容器创建单元,用于创建包括有监控程序和报警程序的监控报警容器,并将所述监控报警容器通过Kubernetes平台部署到第二宿主机;
所述监控组件安装单元,用于在应用程序容器中安装监控组件,所述监控组件用于实时获取应用程序在所述应用程序容器集群的每一节点的运行指标数据,并响应所述监控程序的数据请求;
所述监控报警容器启动单元,用于启动所述监控报警容器,使所述监控程序通过所述应用程序容器中的监控组件,实时获取所述应用程序在所述应用程序容器集群的每一节点的运行指标数据,当所述应用程序在所述应用程序容器集群的任一节点的任一运行指标数据超出预设范围时,所述报警程序发出报警消息。
优选地,所述监控程序为Ganglia,所述报警程序为Nagios,所述监控组件为Ganglia监控组件;
所述报警程序通过向预设的电子邮箱发送电子邮件实现报警消息发送;
所述监控报警容器的启动脚本中具有使所述监控程序和报警程序自动启动的命令,且所述监控报警容器创建单元通过Kubernetes平台的yaml文件,将所述监控报警容器的监控指标数据和配置文件挂载到所述第二宿主机,同时通过Kubernetes平台的yaml文件,将所述监控报警容器的web服务端口和监控数据采集端口映射到所述监控报警容器所在的第二宿主机IP地址的对应端口上;
所述监控组件安装单元包括镜像处理子单元、配置文件处理子单元以及容器部署子单元,其中:
所述镜像处理子单元,用于在所述应用程序容器的镜像中安装Ganglia监控组件,并将所述镜像上传到镜像仓库中,所述镜像仓库用于在所述应用程序容器启动时提供镜像下载和使用;
所述配置文件处理子单元,用于编辑所述应用程序容器的yaml文件,使所述应用程序容器的监控数据发送端口映射到所述应用程序容器所在第一宿主机IP地址的对应端口上;
所述容器部署子单元,用于通过Kubernetes平台,使用yaml文件来部署所述应用程序容器集群。
本发明实施例还提供一种应用程序容器集群报警实现设备,包括存储器和处理器,所述存储器中存储有可在所述处理器执行的计算机程序,且所述处理器执行所述计算机程序时实现如上任一项所述应用程序容器集群报警实现方法的步骤。
本发明实施例还提供一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现如上任一项所述应用程序容器集群报警实现方法的步骤。
本发明实施例的应用程序容器集群报警实现方法、系统、设备及存储介质,通过创建包括有监控程序和报警程序的监控报警容器,可对应用程序在应用程序容器集群的每一节点的运行指标进行监控,从而有助于合理调整、分配系统资源,提高应用程序容器集群整体的性能。
附图说明
图1是本发明实施例提供的应用程序容器集群报警实现方法的流程示意图;
图2是本发明实施例提供的应用程序容器集群报警实现方法中创建监控报警容器的流程示意图;
图3是本发明实施例提供的应用程序容器集群报警实现方法中在应用程序容器中安装监控组件的流程示意图;
图4是本发明实施例提供的应用程序容器集群报警实现系统的结构示意图;
图5是本发明实施例提供的应用程序容器集群报警实现设备的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,是本发明实施例提供的一种应用程序容器集群报警实现方法的流程示意图,上述应用程序容器集群通过Kubernetes平台部署在多个第一宿主机上,并用于实现业务数据处理,例如业务数据的管理和维护,且该应用程序容器集群报警实现方法可对应用程序的运行指标情况进行监控和异常报警。本实施例的应用程序容器集群报警实现方法可由一个部署了Kubernetes平台并安装有容器编辑软件的客户端设备执行,且该实现方法包括:
步骤S11:创建包括有监控程序和报警程序的监控报警容器,并将监控报警容器通过Kubernetes平台部署到第二宿主机(该第二宿主机可与第一宿主机无关,也可以为多个第一宿主机中的一个)。上述监控程序的配置文件中包括需监控的应用程序容器集群的相关信息,例如应用程序容器的IP地址等;报警程序的配置文件中则包括需要报警的指标和指标的预设范围,上述需要报警的指标为应用程序的运行指标数据中的一项或多项。
具体地,上述监控报警容器中的监控程序可以为Ganglia,报警程序则可为Nagios,即监控报警容器同时包括Ganglia和Nagios两个软件,从而监控报警容器可通过监控程序获取运行指标数据(例如处理器速度、内存使用量、区块之间的心跳时间、区块的运行时间等),报警程序则可在运行指标数据超过预设范围时产生报警消息,即通过向预设的电子邮箱发送电子邮件。
当然,在实际应用中,监控程序也可为Ganglia外的其他已有的软件获取运行指标数据,报警程序也可为Nagios外的其他软件进行异常数据报警,但通用性和成熟性会稍差。
步骤S12:在应用程序容器中安装监控组件,即重新编辑应用程序容器,上述监控组件用于实时获取应用程序在应用程序容器集群的每一节点的运行指标数据(例如应用程序中各个组件的资源占用情况、区块之间的心跳时间等),并响应监控程序的数据请求。具体地,当应用程序容器集群运行时,应用程序容器中的监控组件在每一部署该应用程序容器集群的节点创建一个进程,并通过该进程获取应用程序容器集群在该节点的运行指标数据。
当监控报警容器中的监控程序采用Ganglia时,上述应用程序服务器中的监控组件为Ganglia监控组件,从而监控报警容器中的监控程序(该监控程序可通过应用程序容器映射的IP地址访问对应的应用程序容器集群)可与应用程序容器中的监控组件进行配合,获取应用程序在应用程序容器集群的各个节点的运行指标情况。
步骤S13:启动监控报警容器,使监控程序通过应用程序容器中的监控组件,实时获取应用程序在应用程序容器集群的每一节点的运行指标数据,当应用程序在应用程序容器集群的任一节点的任一运行指标数据超出预设范围(该预设范围可根据需要在报警程序中进行设置)时,报警程序发出报警消息。
上述应用程序容器集群报警实现方法,通过创建包括有监控程序和报警程序的监控报警容器,可对应用程序的运行指标进行监控,从而有助于合理调整、分配系统资源,提高应用程序容器集群整体的性能。
上述应用程序容器集群报警实现方法中,在需要改变监控指标、监控指标的预设范围以及预设的电子邮箱等时,可通过客户端的web界面进入监控报警容器内部,并重新配置监控程序或报警程序的配置文件(由于设置了目录挂载,因此配置文件不丢失),然后重新启动监控程序和报警程序即可。
如图2所示,是本发明实施例提供的应用程序容器集群报警实现方法中创建监控报警容器的流程示意图。
步骤S111:将监控程序和报警程序写入监控报警容器的镜像构建文件(例如dockerfile)。
步骤S112:在监控报警容器的启动脚本中写入使监控程序和报警程序自动启动的命令,从而在监控报警容器启动时,监控程序和报警程序可自动运行,达到自动化运行和维护的效果。
步骤S113:通过Kubernetes平台的yaml文件,即通过在yaml文件中编写相应的代码,将监控报警容器的监控指标数据(即需要监控的运行指标、运行指标对应的预设范围等)和配置文件挂载到第二宿主机。通过该方式,可使监控程序的监控指标数据不丢失,监控报警容器的配置文件也不会随着监控报警容器的状态改变而改变。
步骤S114:通过Kubernetes平台的yaml文件,将监控报警容器的web服务端口和监控数据采集端口映射到监控报警容器所在的第二宿主机IP地址的对应端口上。通过上述方式,客户端可通过上述web服务端口及web服务,展示应用程序在应用程序容器集群的各个节点的运行指标数据,监控程序可通过监控数据采集端口与应用程序容器进行交互,同时报警程序可通过监控数据采集端口发送报警消息。
如图3所示,是本发明实施例提供的应用程序容器集群报警实现方法中创建监控报警容器的流程示意图。
步骤S121:在用于创建应用程序容器的镜像中安装监控组件(在监控报警容器为Ganglia时,上述监控组件为Ganglia监控组件),并将上述安装有监控组件的镜像上传到镜像仓库中,该镜像仓库用于在应用程序容器启动时提供镜像下载和使用。
步骤S122:编辑应用程序容器的yaml文件,使应用程序容器内部的监控数据发送端口映射到应用程序容器所在的第一宿主机IP地址的对应端口上。通过上述方式,使得应用程序容器的监控组件可响应监控报警容器的请求,并通过监控数据发送端口将获取的应用程序在应用程序容器的每一节点的运行指标数据发送到监控报警容器。
步骤S123:通过Kubernetes平台,使用yaml文件来部署应用程序容器集群,即根据步骤S121重新编辑的镜像进行应用程序容器集群的部署。
如图4所示,本发明实施例还提供一种应用程序容器集群报警实现系统,上述应用程序容器集群通过Kubernetes平台部署在多个第一宿主机上,且该应用程序容器集群报警实现系统可结合Kubernetes平台对应用程序在应用程序容器集群的每一节点的运行指标情况进行监控和异常报警。
本实施例的应用程序容器集群报警实现系统包括监控报警容器创建单元41、监控组件安装单元42以及监控报警容器启动单元43,上述监控报警容器创建单元41、监控组件安装单元42以及监控报警容器启动单元43可结合运行于计算机等设备上的软件实现。
监控报警容器创建单元41用于创建包括有监控程序和报警程序的监控报警容器,并将监控报警容器通过Kubernetes平台部署到第二宿主机。上述监控报警容器创建单元41可通过编写容器的镜像构建文件(例如dockerfile)创建监控报警容器。并且,在创建监控报警容器时,监控报警容器创建单元41可在监控报警容器的启动脚本中写入使监控程序和报警程序自动启动的命令,从而在监控报警容器启动时,监控程序和报警程序可自动运行,达到自动化运行和维护的效果。
具体地,上述监控报警容器中的监控程序可以为Ganglia,报警程序则可为Nagios,即监控报警容器同时包括Ganglia和Nagios两个软件,从而监控报警容器可通过监控程序获取应用程序的运行指标数据(例如处理器速度、内存使用量等),报警程序则可在运行指标数据超过预设范围时产生报警消息,即通过向预设的电子邮箱发送电子邮件。
当然,在实际应用中,监控程序也可为Ganglia外的其他已有的软件获取运行指标数据,报警程序也可为Nagios外的其他软件进行异常数据报警,但通用性和成熟性会稍差。
监控组件安装单元42用于在应用程序容器中安装监控组件,即重新编辑应用程序容器,上述监控组件用于实时获取应用程序在应用程序容器的每一节点的运行指标数据(例如应用程序中各个组件或进程的运行指标情况、区块之间的心跳时间等),并响应监控程序的数据请求。
当监控报警容器中的监控程序采用Ganglia时,上述应用程序服务器中的监控组件为Ganglia监控组件,从而监控报警容器中的监控程序(该监控程序可通过应用程序容器的IP地址访问应用程序容器集群的各个节点)可与应用程序容器中的监控组件进行配合,获取应用程序在应用程序集群的各个节点的运行指标情况。
监控报警容器启动单元43用于启动监控报警容器,使监控程序通过应用程序容器中的监控组件,实时获取应用程序在应用程序容器的每一节点的运行指标数据,当应用程序在应用程序容器集群的任一节点的任一运行指标数据超出预设范围时,报警程序发出报警消息。
此外,监控报警容器创建单元41在创建监控报警容器时,还在监控报警容器的启动脚本中写入使监控程序和报警程序自动启动的命令,且监控报警容器创建单元41通过Kubernetes平台的yaml文件,将监控报警容器的监控指标数据和配置文件挂载到第二宿主机,同时通过Kubernetes平台的yaml文件,将监控报警容器的web服务端口和监控数据采集端口映射到第二宿主机IP地址的对应端口。
上述监控组件安装单元42具体可包括镜像处理子单元、配置文件处理子单元以及容器部署子单元,并通过镜像处理子单元在应用程序容器的镜像中安装Ganglia监控组件,并将镜像上传到镜像仓库并部署至Kubernetes平台;通过配置文件处理子单元编辑应用程序容器的yaml文件,使应用程序容器的监控数据发送端口映射到所在第一宿主机IP地址的对应端口;通过容器部署子单元重新通过Kubernetes平台对应用程序容器集群进行部署。
本实施例中的应用程序容器集群报警实现系统与上述图1、2对应实施例中的应用程序容器集群报警实现方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。
本发明实施例还提供一种应用程序容器集群报警实现设备5,该设备5具体可以是部署了Kubernetes平台的客户端,如图5所示,该应用程序容器集群报警实现设备5包括存储器51和处理器52,存储器51中存储有可在处理器52执行的计算机程序,且处理器52执行计算机程序时实现如上所述应用程序容器集群报警实现方法的步骤。
本实施例中的应用程序容器集群报警实现设备4与上述图1、2对应实施例中的应用程序容器集群报警实现方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,该存储介质上存储有计算机程序,计算机程序被处理器执行时,实现如上所述应用程序容器集群报警实现方法的步骤。本实施例中的计算机可读存储介质与上述图1、2对应实施例中的应用程序容器集群报警实现方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成。实施例中的各功能单元、模块可以集成在一个处理器中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的应用程序容器集群报警实现方法、系统及设备,可以通过其它的方式实现。例如,以上所描述的应用程序容器集群报警实现系统实施例仅仅是示意性的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理器中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或界面切换设备、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种应用程序容器集群报警实现方法,所述应用程序容器集群通过Kubernetes平台部署在多个第一宿主机上,其特征在于,所述实现方法包括:
创建包括有监控程序和报警程序的监控报警容器,并将所述监控报警容器通过Kubernetes平台部署到第二宿主机;
在应用程序容器中安装监控组件,所述监控组件用于实时获取应用程序在所述应用程序容器集群的每一节点的运行指标数据,并响应所述监控程序的数据请求,所述指标数据包括应用程序中各个组件的资源占用情况、区块之间的心跳时间;
启动所述监控报警容器,使所述监控程序通过所述应用程序容器中的监控组件,实时获取所述应用程序在应用程序容器集群中每一节点的运行指标数据,当所述应用程序在应用程序容器集群的任一节点的运行指标数据超出预设范围时,所述报警程序发出报警消息。
2.根据权利要求1所述的应用程序容器集群报警实现方法,其特征在于,所述监控程序为Ganglia,所述报警程序为Nagios,所述监控组件为Ganglia监控组件;所述报警程序通过向预设的电子邮箱发送电子邮件实现报警消息发送。
3.根据权利要求2所述的应用程序容器集群报警实现方法,其特征在于,所述在应用程序容器中安装监控组件包括:
在用于创建所述应用程序容器的镜像中安装Ganglia监控组件,并将所述镜像上传到镜像仓库中,所述镜像仓库用于在所述应用程序容器启动时提供镜像下载和使用;
编辑所述应用程序容器的yaml文件,使所述应用程序容器内部的监控数据发送端口映射到所述应用程序容器所在第一宿主机IP地址的对应端口上;
通过Kubernetes平台,使用yaml文件来部署所述应用程序容器集群。
4.根据权利要求2所述的应用程序容器集群报警实现方法,其特征在于,所述创建包括有监控程序和报警程序的监控报警容器包括:在所述监控报警容器的启动脚本中写入使所述监控程序和报警程序自动启动的命令。
5.根据权利要求2所述的应用程序容器集群报警实现方法,其特征在于,所述创建包括有监控程序和报警程序的监控报警容器包括:通过Kubernetes平台的yaml文件,将所述监控报警容器的监控指标数据和配置文件挂载到所述第二宿主机。
6.根据权利要求2所述的应用程序容器集群报警实现方法,其特征在于,所述创建包括有监控程序和报警程序的监控报警容器包括:通过Kubernetes平台的yaml文件,将所述监控报警容器的web服务端口和监控数据采集端口映射到所述监控报警容器所在的第二宿主机IP地址的对应端口上;
所述实现方法包括:通过web服务展示所述应用程序在所述应用程序容器集群的每一节点的运行指标数据。
7.一种应用程序容器集群报警实现系统,所述应用程序容器集群通过Kubernetes平台部署在多个第一宿主机上,其特征在于,所述实现系统包括监控报警容器创建单元、监控组件安装单元以及监控报警容器启动单元,其中:
所述监控报警容器创建单元,用于创建包括有监控程序和报警程序的监控报警容器,并将所述监控报警容器通过Kubernetes平台部署到第二宿主机;
所述监控组件安装单元,用于在应用程序容器中安装监控组件,所述监控组件用于实时获取应用程序在所述应用程序容器集群的每一节点的运行指标数据,并响应所述监控程序的数据请求,所述指标数据包括应用程序中各个组件的资源占用情况、区块之间的心跳时间;
所述监控报警容器启动单元,用于启动所述监控报警容器,使所述监控程序通过所述应用程序容器中的监控组件,实时获取所述应用程序在所述应用程序容器集群的每一节点的运行指标数据,当所述应用程序在所述应用程序容器集群的任一节点的任一运行指标数据超出预设范围时,所述报警程序发出报警消息。
8.根据权利要求7所述的应用程序容器集群报警实现系统,其特征在于,所述监控程序为Ganglia,所述报警程序为Nagios,所述监控组件为Ganglia监控组件;
所述报警程序通过向预设的电子邮箱发送电子邮件实现报警消息发送;
所述监控报警容器的启动脚本中具有使所述监控程序和报警程序自动启动的命令,且所述监控报警容器创建单元通过Kubernetes平台的yaml文件,将所述监控报警容器的监控指标数据和配置文件挂载到所述第二宿主机,同时通过Kubernetes平台的yaml文件,将所述监控报警容器的web服务端口和监控数据采集端口映射到所述监控报警容器所在的第二宿主机IP地址的对应端口上;
所述监控组件安装单元包括镜像处理子单元、配置文件处理子单元以及容器部署子单元,其中:
所述镜像处理子单元,用于在所述应用程序容器的镜像中安装Ganglia监控组件,并将所述镜像上传到镜像仓库中,所述镜像仓库用于在所述应用程序容器启动时提供镜像下载和使用;
所述配置文件处理子单元,用于编辑所述应用程序容器的yaml文件,使所述应用程序容器的监控数据发送端口映射到所述应用程序容器所在第一宿主机IP地址的对应端口上;
所述容器部署子单元,用于通过Kubernetes平台,使用yaml文件来部署所述应用程序容器集群。
9.一种应用程序容器集群报警实现设备,其特征在于,包括存储器和处理器,所述存储器中存储有可在所述处理器执行的计算机程序,且所述处理器执行所述计算机程序时实现如权利要求1-6中任一项所述应用程序容器集群报警实现方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1至6中任一项所述应用程序容器集群报警实现方法的步骤。
CN201910450320.XA 2019-05-28 2019-05-28 应用程序容器集群报警实现方法、系统、设备及存储介质 Active CN110262941B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910450320.XA CN110262941B (zh) 2019-05-28 2019-05-28 应用程序容器集群报警实现方法、系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910450320.XA CN110262941B (zh) 2019-05-28 2019-05-28 应用程序容器集群报警实现方法、系统、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110262941A CN110262941A (zh) 2019-09-20
CN110262941B true CN110262941B (zh) 2023-06-16

Family

ID=67915649

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910450320.XA Active CN110262941B (zh) 2019-05-28 2019-05-28 应用程序容器集群报警实现方法、系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110262941B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11144418B2 (en) * 2019-09-23 2021-10-12 International Business Machines Corporation Mutation event detection for integrity monitoring
CN110851241A (zh) * 2019-11-20 2020-02-28 杭州安恒信息技术股份有限公司 Docker容器环境的安全防护方法、装置及系统
CN111277460B (zh) * 2020-01-17 2022-02-25 江苏满运软件科技有限公司 一种ZooKeeper容器化控制的方法、装置、存储介质及电子设备
CN112068932A (zh) * 2020-09-01 2020-12-11 北京指掌易科技有限公司 应用程序的集成、监控方法、装置、系统、设备及介质
CN112671602B (zh) * 2020-12-14 2023-07-04 北京金山云网络技术有限公司 边缘节点的数据处理方法、装置、系统、设备和存储介质
CN113485896A (zh) * 2021-07-22 2021-10-08 京东方科技集团股份有限公司 容器状态的监控方法、装置、系统和介质
CN114338687A (zh) * 2021-12-23 2022-04-12 中国农业银行股份有限公司 中间件管理方法和服务器
CN114154160B (zh) * 2022-02-08 2022-09-16 中国电子信息产业集团有限公司第六研究所 容器集群监测方法、装置、电子设备及存储介质
CN114610573A (zh) * 2022-03-11 2022-06-10 航天科工智慧产业发展有限公司 基于容器编排的微服务监控方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684036A (zh) * 2018-12-17 2019-04-26 武汉烽火信息集成技术有限公司 一种容器集群管理方法、存储介质、电子设备及系统
WO2019095936A1 (zh) * 2017-11-15 2019-05-23 腾讯科技(深圳)有限公司 容器镜像的构建方法、系统、服务器、装置及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105763395A (zh) * 2016-04-01 2016-07-13 汉柏科技有限公司 云环境下用于虚拟机和容器的监控管理方法及系统
CN106888254B (zh) * 2017-01-20 2020-08-18 华南理工大学 一种基于Kubernetes的容器云架构及其各模块之间的交互方法
CN107508722B (zh) * 2017-08-01 2020-08-04 北京德塔精要信息技术有限公司 一种业务监控方法和装置
CN108052333A (zh) * 2017-12-11 2018-05-18 北京紫优能源科技有限公司 一种电力调度集控系统标准化自动化部署方法及架构
CN108037973B (zh) * 2017-12-20 2021-11-16 苏州优圣美智能系统有限公司 一种与数据处理工具交互的数据流建模和处理系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019095936A1 (zh) * 2017-11-15 2019-05-23 腾讯科技(深圳)有限公司 容器镜像的构建方法、系统、服务器、装置及存储介质
CN109684036A (zh) * 2018-12-17 2019-04-26 武汉烽火信息集成技术有限公司 一种容器集群管理方法、存储介质、电子设备及系统

Also Published As

Publication number Publication date
CN110262941A (zh) 2019-09-20

Similar Documents

Publication Publication Date Title
CN110262941B (zh) 应用程序容器集群报警实现方法、系统、设备及存储介质
US10831526B2 (en) System and method of application discovery
US10530704B2 (en) Dynamic virtualized resource allocation
US11593302B2 (en) Methods, systems, and computer readable mediums for implementing a data protection policy for a transferred enterprise application
US9442748B2 (en) Multi-RPO data protection
US9606894B2 (en) Collaborative collection of diagnostics data of software programs
US8762931B2 (en) Generating an encoded package profile
US20150081836A1 (en) Profile-based lifecycle management for data storage servers
US11388234B2 (en) Infrastructure for deploying a security information and event management application on a container platform
CN107544837B (zh) 云服务设备性能数据采集系统、方法和装置
CN111258851B (zh) 一种集群的告警方法、装置、设置及存储介质
CN109284170B (zh) 一种局域网内usb共享系统及共享方法
US9612899B2 (en) Collaborative collection of diagnostics data of software programs
US11494130B2 (en) Operation data accessing device and accessing method thereof
CN114553672B (zh) 一种应用系统性能瓶颈确定方法、装置、设备、介质
US9032014B2 (en) Diagnostics agents for managed computing solutions hosted in adaptive environments
US9426023B2 (en) Automatic reconfiguration of network parameters during file system failover
US20170187575A1 (en) System and method for customizing standard device-orientated services within a high scale deployment
US20220342707A1 (en) Infrastructure for deploying a security information and event management application on a container platform
CN115934464A (zh) 一种信息化平台监控采集系统
US20230236866A1 (en) Capacity reduction and capacity expansion method and system for cluster, capacity reduction and capacity expansion control terminal, and medium
CN112685406A (zh) 一种实时探知云平台资产使用状态的监控系统
US11290339B2 (en) Estimating physical disparity for data locality in software-defined infrastructures
US11954693B2 (en) Dynamic test suite creation using event communications from customers
CN109428914B (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