本发明专利技术公开了一种基于容器平台的日志聚合方法及装置,所述方法应用于基于容器平台实现的集群中,所述集群包括至少一个节点,所述方法包括:采集每个节点的日志数据,压缩打包并附加标识信息后发送给每个日志处理单元;每个日志处理单元根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据;日志聚合单元根据待聚合的日志数据中定位标识,将来自不同日志处理单元且属于相同应用的待聚合的日志数据进行聚合,得到聚合日志数据;对所述聚合日志数据进行分类存储以供调用访问。本发明专利技术实施例提供的基于容器平台的日志聚合方法及装置,能够降低了容器平台的运维成本,提高了容器平台的可用性以及拓展性。
Method and device of log aggregation based on container platform
【技术实现步骤摘要】
基于容器平台的日志聚合方法及装置
本专利技术涉及计算机
,尤指一种基于容器平台的日志聚合方法及装置。
技术介绍
随着容器技术的不断发展,容器化的应用带来了越来越多实际好处。相较于传统应用,容器化的应用容易自动化部署、可以在同一环境同时运行多个实例而互不影响、新版本自动化升级发布、更少的外部环境依赖以及易于横向延展以应对流量高峰情况,因此越来越多的企业开始发展容器技术,将更多的IT服务进行容器化改造。与此同时,针对急剧增长的容器运行需求,容器治理技术应用而生,经过多年的发展与竞争,Kubernetes成为容器治理平台的业界事实标准。Kubernetes通过容器运行状态探针来保证容器的平稳运行,同时通过调度算法来保证集群的负载均衡。Kubernetes不仅可以使容器应用根据实时负载情况进行动态延展保证服务稳定,也提供了容器应用的灰度发布能力,大大提高了集群的使用效率同时降低了企业的运维成本。Kubernetes提供的容器编排治理能力能有效保证运行在其上的应用层服务的负载性能稳定,但同时也会带来一些影响。第一是部署应用的影响,在Kubernetes上初始化部署一个应用服务比传统单机部署方式困难,在Kubernetes上部署应用除了要能将应用容器化、正确编写部署配置文件外,还要掌握Kubernetes管理应用程序接口(ApplicationProgramInterface,API)查看启动日志来追踪应用部署过程,如果出现部署问题需要退转到应用调度的节点继续追踪Kubernetes组件日志等;第二是应用调试的影响,在应用测试运行过程中出现错误时就需要对程序逻辑进行调试,由于Kubernetes集群与本地环境不属同一网络域,微服务应用通常与后台数个其他服务相关联依赖,因此无法直接在本地修改代码逻辑后实时运行调试,通常需要人工使用Kubernetes管理API查看容器的运行日志,甚至需要进入容器内部查看容器的相关日志输出;第三是Kubernetes集群故障定位困难,大部分的Kubernetes集群问题都会使得应用状态失败,这时使用管理API直接查看应用的启动日志、内部日志可能都无法定位,通常需要根据经验到应用调度节点上查看docker的运行日志,甚至还需要使用journalctl查看系统日志来定位具体问题。比如最常见ip资源不够、DNS域名解析失败时,都无法直接从应用日志上定位问题,需要进一步查看Kubernetes组件的运行日志才能定位问题。基于上述三个问题,完成一次应用部署、应用调试、故障定位需要运维人员付出巨大的努力,集群的规模越大需要耗费的精力也越大,从而造成企业在Kubernetes集群上投入较大的运维成本。
技术实现思路
本专利技术实施例提供一种基于容器平台的日志聚合方法及装置,用以解决现有技术中存在基于容器平台实现集群时运维调试成本较高的问题。本专利技术实施例提供一种基于容器平台的日志聚合方法,所述方法应用于基于容器平台实现的集群中,所述集群包括至少一个节点,所述方法包括:采集每个节点的日志数据,压缩打包并附加标识信息后发送给每个日志处理单元;每个日志处理单元根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据;日志聚合单元根据待聚合的日志数据中定位标识,将来自不同日志处理单元且属于相同应用的待聚合的日志数据进行聚合,得到聚合日志数据;对所述聚合日志数据进行分类存储以供调用访问。其中,所述采集每个节点的日志数据,包括:采集每个节点的应用级别日志数据和系统级别日志数据;当所述节点为管理节点时,还包括采集管理节点的事件级别日志数据。其中,所述压缩打包并附加标识信息后发送给每个日志处理单元,包括:压缩打包,并附加包括采集时间戳、节点名称和所属级别的标识信息后发送给每个日志处理单元。其中,所述日志处理单元的处理级别包括事件级别、应用级别以及系统级别;相应地,所述每个日志处理单元根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据,包括:每个日志处理单元根据所述标识信息中的所属级别,解压缩对应自身处理级别的日志数据压缩包并进行解析,得到携带有定位标识的带聚合的日志数据,所述定位标识包括应用名称以及容器运行池POD名称。其中,所述将来自不同日志处理单元且属于相同应用的待聚合的日志数据进行聚合,得到聚合日志数据,包括:将来自不同日志处理单元且属于相同应用的带聚合的日志数据进行聚合,得到携带有格式为namespaceid_resourceid_level的聚合标识的聚合日志数据。本专利技术实施例还提供一种基于容器平台的日志聚合装置,所述装置应用于容器平台实现的集群中,所述集群包括至少一个节点,所述装置包括:设置于每个节点中的采集单元、多个日志处理单元、日志聚合单元以及存储单元;其中,所述采集单元,用于采集每个节点的日志数据,压缩打包并附加标识信息后发送给每个日志处理单元;所述日志处理单元,用于根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据;所述日志聚合单元,用于根据待聚合的日志数据中定位标识,将来自不同日志处理单元且属于相同应用的待聚合的日志数据进行聚合,得到聚合日志数据;所述存储单元,用于对所述聚合日志数据进行分类存储以供调用访问。其中,所述采集单元,用于采集每个节点的日志数据,包括:采集每个节点的应用级别日志数据和系统级别日志数据;当所述节点为管理节点时,还包括采集管理节点的事件级别日志数据。其中,所述采集单元,用于压缩打包并附加标识信息后发送给每个日志处理单元,包括:压缩打包,并附加包括采集时间戳、节点名称和所属级别的标识信息后发送给每个日志处理单元。其中,所述日志处理单元的处理级别包括事件级别、应用级别以及系统级别;相应地,所述日志处理单元,用于根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据,包括:每个日志处理单元根据所述标识信息中的所属级别,解压缩对应自身处理级别的日志数据压缩包并进行解析,得到携带有定位标识的带聚合的日志数据,所述定位标识包括应用名称以及POD名称。其中,所述日志聚合单元,用于将来自不同日志处理单元且属于相同应用的待聚合的日志数据进行聚合,得到聚合日志数据,包括:将来自不同日志处理单元且属于相同应用的带聚合的日志数据进行聚合,得到携带有格式为namespaceid_resourceid_level的聚合标识的聚合日志数据。本专利技术有益效果如下:本专利技术实施例提供的基于容器平台的日志聚合方法及装置,通过采集每个节点的日志数据,压缩打包并附加标识信息后发送给每个日志处理单元;每个日志处理单元根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据;日志聚合单元根据待聚合的日志数据中定位标识,将来自不同日志处理单元且属于相同应用的待聚合的日志数本文档来自技高网...
【技术保护点】
1.一种基于容器平台的日志聚合方法,其特征在于,所述方法应用于基于容器平台实现的集群中,所述集群包括至少一个节点,所述方法包括:/n采集每个节点的日志数据,压缩打包并附加标识信息后发送给每个日志处理单元;/n每个日志处理单元根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据;/n日志聚合单元根据待聚合的日志数据中定位标识,将来自不同日志处理单元且属于相同应用的待聚合的日志数据进行聚合,得到聚合日志数据;/n对所述聚合日志数据进行分类存储以供调用访问。/n
【技术特征摘要】
1.一种基于容器平台的日志聚合方法,其特征在于,所述方法应用于基于容器平台实现的集群中,所述集群包括至少一个节点,所述方法包括:
采集每个节点的日志数据,压缩打包并附加标识信息后发送给每个日志处理单元;
每个日志处理单元根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据;
日志聚合单元根据待聚合的日志数据中定位标识,将来自不同日志处理单元且属于相同应用的待聚合的日志数据进行聚合,得到聚合日志数据;
对所述聚合日志数据进行分类存储以供调用访问。
2.根据权利要求1所述的方法,其特征在于,所述采集每个节点的日志数据,包括:
采集每个节点的应用级别日志数据和系统级别日志数据;
当所述节点为管理节点时,还包括采集管理节点的事件级别日志数据。
3.根据权利要求1所述的方法,其特征在于,所述压缩打包并附加标识信息后发送给每个日志处理单元,包括:
压缩打包,并附加包括采集时间戳、节点名称和所属级别的标识信息后发送给每个日志处理单元。
4.根据权利要求1所述的方法,其特征在于,所述日志处理单元的处理级别包括事件级别、应用级别以及系统级别;
相应地,所述每个日志处理单元根据所述标识信息,处理对应自身处理级别的日志数据压缩包,得到待聚合的日志数据,包括:
每个日志处理单元根据所述标识信息中的所属级别,解压缩对应自身处理级别的日志数据压缩包并进行解析,得到携带有定位标识的带聚合的日志数据,所述定位标识包括应用名称以及容器运行池POD名称。
5.根据权利要求1所述的方法,其特征在于,所述将来自不同日志处理单元且属于相同应用的待聚合的日志数据进行聚合,得到聚合日志数据,包括:
将来自不同日志处理单元且属于相同应用的带聚合的日志数据进行聚合,得到携带有格式为namespaceid_resourceid_level的聚合标识的聚合日志数据。
6.一种基于容器平台的日志聚合装置,其特征在于,所述装置应用于容器平台...
【专利技术属性】
技术研发人员:赖新明,邓应强,舒南飞,王志刚,林文辉,
申请(专利权)人:航天信息股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。