发明内容
为解决CDN节点部署监控复杂的问题,本申请提供一种CDN节点全链路监控方法。本申请还涉及一种CDN节点全链路监控装置。
本申请提供一种CDN节点全链路监控方法,包括:
在中心服务器中安装K8S集群和分布式追踪系统;
获取所述分布式追踪系统的运行环境文件,通过编写K8S的配置文件将所述运行环境文件配置到CDN节点的应用服务中并配置监控探针,生成容器镜像存储到镜像仓库中;
编写所述K8S的部署文件,根据所述部署文件从所述镜像仓库中调取所述容器镜像部署到CDN节点上;
启动所述容器镜像,根据所述监控探针获取所述CDN节点检测数据,并根据预设的数据过滤规则进行数据过滤发送到中心服务器中。
可选的,还包括:所述检测数据在所述分布式追踪系统的显示界面显示。
可选的,所述监控探针监控所述CDN节点的健康度和通讯关联关系;
所述健康度包括:CDN节点负载,所述关联关系包括:连接的其他CDN节点。
可选的,所述分布式追踪系统包括:追踪单元、性能分析单元和依赖分析单元,分别用于CDN节点追踪、CDN节点性能分析和CDN节点的应用和服务的依赖关系分析。
可选的,所述镜像仓库包括:存储介质。
本申请还提供一种CDN节点全链路监控装置,包括:
安装单元,用于在中心服务器中安装K8S集群和分布式追踪系统;
配置单元,用于获取所述分布式追踪系统的运行环境文件,通过编写K8S的配置文件将所述运行环境文件配置到CDN节点的应用服务中并配置监控探针,生成容器镜像存储到镜像仓库中;
部署单元,用于编写所述K8S的部署文件,根据所述部署文件从所述镜像仓库中调取所述容器镜像部署到CDN节点上;
检测单元,用于启动所述容器镜像,根据所述监控探针获取所述CDN节点检测数据,并根据预设的数据过滤规则进行数据过滤发送到中心服务器中。
可选的,还包括:显示单元,用于所述检测数据在所述分布式追踪系统的显示界面显示。
可选的,所述监控探针监控所述CDN节点的健康度和通讯关联关系;
所述健康度包括:CDN节点负载,所述关联关系包括:连接的其他CDN节点。
可选的,所述分布式追踪系统包括:追踪单元、性能分析单元和依赖分析单元,分别用于CDN节点追踪、CDN节点性能分析和CDN节点的应用和服务的依赖关系分析。
可选的,所述镜像仓库包括:存储介质。
本申请相对与现有技术的优点:
本申请提供一种CDN节点全链路监控方法,包括:在中心服务器中安装K8S集群和分布式追踪系统;获取所述分布式追踪系统的运行环境文件,通过编写K8S的配置文件将所述运行环境文件配置到CDN节点的应用服务中并配置监控探针,生成容器镜像存储到镜像仓库中;编写所述K8S的部署文件,根据所述部署文件从所述镜像仓库中调取所述容器镜像部署到CDN节点上;启动所述容器镜像,根据所述监控探针获取所述CDN节点检测数据,并根据预设的数据过滤规则进行数据过滤发送到中心服务器中。通过容器技术部署监控探针,实现监控探针能够快速统一的部署到各个CDN节点,并实现CDN网络的中心化监控和管理。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
本申请提供一种CDN节点全链路监控方法,包括:在中心服务器中安装K8S集群和分布式追踪系统;获取所述分布式追踪系统的运行环境文件,通过编写K8S的配置文件将所述运行环境文件配置到CDN节点的应用服务中并配置监控探针,生成容器镜像存储到镜像仓库中;编写所述K8S的部署文件,根据所述部署文件从所述镜像仓库中调取所述容器镜像部署到CDN节点上;启动所述容器镜像,根据所述监控探针获取所述CDN节点检测数据。通过容器技术部署监控探针,实现监控探针能够快速统一的部署到各个CDN节点,并实现CDN网络的中心化监控和管理。
图1是本申请中CDN节点全链路监控的流程图。
请参照图1所示,S101在中心服务器中安装K8S集群和分布式追踪系统。
本申请中,所示搜索服务器集群包括:Elasticsearch集群,所述分布式追踪系统包括:Skywalking(一种数据分析和度量结果的存储平台)。
所述Elasticsearch集群是一个基于Lucene(一种全文搜索框架)的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfulweb(一种软件架构)接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。
所述分布式追踪系统包括,追踪单元、性能分析单元和依赖分析单元,分别用于CDN节点追踪、CDN节点性能分析和CDN节点的应用和服务的依赖关系分析。
具体的,所述CDN节点追踪是,所述分布式追踪系统全称监控所述CDN节点。所述节点性能分析是计算所述CDN节点的负载能力和数据量之间的关系,所述应用和服务的依赖关系是指,一个计算流程所依赖的应用的服务进程。
本申请首先在中心服务器安装部署搜索服务器集群和所述分布式追踪系统。
请参照图1所示,S102获取所述分布式追踪系统的运行环境文件,通过编写K8S的配置文件将所述运行环境文件配置到CDN节点的应用服务中并配置监控探针,生成容器镜像存储到镜像仓库中。
在本申请中,通过设置容器镜像模拟分布式追踪系统的运行环境,并将所述容器镜像配置到每个CDN节点服务器中以实现分布式追踪系统的快速部署。
具体的,首先需要获取所述分布式追踪系统的运行环境文件,并通过编写K8S的配置文件,将所述运行环境文件配置到CDN节点的应用服务中,采用docker技术,结合CDN节点的应用服务生成CDN节点的应用服务容器。所述K8S(Kubernetes)是Google公司在2014年创建管理的,大规模容器管理技术Borg的开源版本。它是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。本申请采用K8S进行容器的部署和管理。
在完成所述配置文件的过程中,将所述分布式追踪系统的监控探针也根据已经配置的所述运行环境配置到所述CDN节点的应用服务生成的容器镜像中。具体的,所述将监控探针配置到所述CDN节点的应用服务容器中包括:将监控项目和参数进行配置,并在部署所述CDN节点的应用服务容器时,将监控探针直接挂载到所述CDN节点的应用服务容器上。所述CDN节点的应用服务容器将存储到镜像仓库中等待调用。本申请所述镜像仓库包括:存储介质,所述存储介质可以是光盘、硬盘以及软盘等可存储电子数据的设备。
请参照图1所示,S103编写所述K8S的部署文件,根据所述部署文件从所述镜像仓库中调取所述容器镜像部署到CDN节点上。
上述已经完成了CDN节点的应用服务的容器镜像的设置,接下来将部署所述CDN节点的应用服务的容器镜像。
图2是本申请中CDN节点全链路监控部署流程图。
请参照图2所示,S201编写K8S的部署文件。
本申请所述部署文件是用于将所述CDN节点的应用服务的容器镜像部署到每个CDN节点的参数文件,其中包括:部署到哪一个CDN节点,以及将部署的CDN节点进行编号。在另一种实施方式中,所述编号可以用所述CDN节点的IP地址代替。
请参照图2所示,S202CDN节点部署。
编写完成所述部署文件后,就可以根据所述部署文件,从所述镜像仓库中调取CDN节点的应用服务的容器镜像,部署到每个CDN服务器中,其中每个CDN节点的应用服务的容器镜像都挂载由分布式追踪系统的监控探针。
一个优选的实施例如下:设有X个CDN节点,其中所述CDN节点级别不一样,包括一级CDN节点、二级CDN节点等,将最后一级CDN节点设为边缘CDN节点。
在所述容器镜像的发送过程中,所述容器镜像的发送信息目的地址为每个边缘CDN节点。当所述容器镜像到达一个CDN节点后,对比所述CDN节点的地址信息和发送信息目的地址是否一致,若一致则判断该容器镜像不再向下一级发送,若不一致,则继续向下一级CDN节点发送。
所述边缘CDN节点之前的每个CDN节点将保存所述容器镜像,解析后运行所述容器镜像,并以该CDN地址为发送端向中心服务器发送结果信息。所述中心服务器接收到每个CDN节点的结果信息,带接收到全部CDN节点的结果信息后完成部署,若有CDN节点的结果信息未接收到,则重新发送所述容器镜像。
请参照图1所示,S104启动所述容器镜像,根据所述监控探针获取所述CDN节点检测数据,并根据预设的数据过滤规则进行数据过滤发送到中心服务器中。
启动所述CDN节点的应用服务的容器镜像后,该容器镜像提供了分布式追踪系统的运行环境,在该运行环境中所述监控探针可以检测到所述CDN服务器的健康度以和通讯关联关系;所述健康度包括:CDN节点负载,所述关联关系包括:连接的其他CDN节点。
具体的,所述CDN节点中的监控探收集到监控数据后,将所述CDN节点的监控数据进行打包,并发送到上一级别CDN节点。所述上一级CDN节点解析所述监控数据,并根据预先设置的数据过滤规则进行数据过滤。以响应时间为例,设置响应时间阈值,当所述监控数据中的CDN节点响应时间超过响应时间阈值,则所述上一级CDN节点将该监控数据发送到中心服务器,若没有超过,则仅仅发送一个表示状态正常的字符串。
另外所述上一级的CDN节点中的监控探针收集到监控数据后,将通过所述预先设置的数据过滤规则进行数据过滤,并发送到中心服务器中。
当所述中心服务器收到监控数据,若仅仅是表示状态正常的字符串,则只现实正常,若收到监控数据,则标记所述CDN节点,并发警报。
进一步的,所述监控数据将存储在所述上一级CDN节点的存储系统中,并根据中心服务器的调度进行数据的上传。
优选的,所述检测数据发送到所述分布式追踪系统的显示界面显示。
本申请还提供一种CDN节点全链路监控装置,包括:安装单元301,配置单元302,部署单元303,检测单元304。
图3是本申请中CDN节点全链路监控装置示意图。
请参照图3所示,安装单元301,用于在中心服务器中安装K8S集群和分布式追踪系统。
本申请中,所示搜索服务器集群包括:Elasticsearch集群,所述分布式追踪系统包括:Skywalking(一种数据分析和度量结果的存储平台)。
所述Elasticsearch集群是一个基于Lucene(一种全文搜索框架)的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfulweb(一种软件架构)接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。
所述分布式追踪系统包括,追踪单元、性能分析单元和依赖分析单元,分别用于CDN节点追踪、CDN节点性能分析和CDN节点的应用和服务的依赖关系分析。
具体的,所述CDN节点追踪是,所述分布式追踪系统全称监控所述CDN节点。所述节点性能分析是计算所述CDN节点的负载能力和数据量之间的关系,所述应用和服务的依赖关系是值,一个计算流程所依赖的应用个服务进程。
本申请首先在中心服务器安装部署搜索服务器集群和所述分布式追踪系统。
请参照图1所示,配置单元302,用于获取所述分布式追踪系统的运行环境文件,通过编写K8S的配置文件将所述运行环境文件配置到CDN节点的应用服务中并配置监控探针,生成容器镜像存储到镜像仓库中。
在本申请中,通过设置容器镜像模拟分布式追踪系统的运行环境,并将所述容器镜像配置到每个CDN节点服务器中以实现分布式追踪系统的快速部署。
具体的,首先需要获取所述分布式追踪系统的运行环境文件,并通过编写K8S的配置文件,将所述运行环境文件配置到CDN节点的应用服务中,采用docker技术,结合CDN节点的应用服务生成CDN节点的应用服务容器。所述K8S(Kubernetes)是Google公司在2014年创建管理的,大规模容器管理技术Borg的开源版本。它是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。本申请采用K8S进行容器的部署和管理。
在完成所述配置文件的过程中,将所述分布式追踪系统的监控探针也根据已经配置的所述运行环境配置到所述CDN节点的应用服务生成的容器镜像中。具体的,所述将监控探针配置到所述CDN节点的应用服务容器中包括:将监控项目和参数进行配置,并在部署所述CDN节点的应用服务容器时,将监控探针直径挂载到所述CDN节点的应用服务容器上。所述CDN节点的应用服务容器将存储到镜像仓库中等待调用。本申请所述镜像仓库包括:存储介质,所述存储介质可以是光盘、硬盘以及软盘等可存储电子数据的设备。
请参照图1所示,部署单元303,用于编写所述K8S的部署文件,根据所述部署文件从所述镜像仓库中调取所述容器镜像部署到CDN节点上。
上述已经完成了CDN节点的应用服务的容器镜像的设置,接下来将部署所述CDN节点的应用服务的容器镜像。
图2是本申请中CDN节点全链路监控部署流程图。
请参照图2所示,S201编写K8S的部署文件。
本申请所述部署文件是用于将所述CDN节点的应用服务的容器镜像部署到每个CDN节点的参数文件,其中包括:部署到那个CDN节点,以及将部署的CDN节点进行编号。在另一种实施方式中,所述编号可以用所述CDN节点的IP地址代替。
一个优选的实施例如下:设有X个CDN节点,其中所述CDN节点级别不一样,包括一级CDN节点、二级CDN节点等,将最后一级CDN节点设为边缘CDN节点。
在所述容器镜像的发送过程中,所述容器镜像的发送信息目的地址为每个边缘CDN节点。当所述容器镜像到达一个CDN节点后,对比所述CDN节点的地址信息和发送信息目的地址是否一致,若一致则判断该容器镜像不再向下一级发送,若不一致,则继续向下一级CDN节点发送。
所述边缘CDN节点之前的每个CDN节点将保存所述容器镜像,解析后运行所述容器镜像,并以该CDN地址为发送端向中心服务器发送结果信息。所述中心服务器接收到每个CDN节点的结果信息,带接收到全部CDN节点的结果信息后完成部署,若有CDN节点的结果信息未接收到,则重新发送所述容器镜像。
请参照图2所示,S202CDN节点部署。
编写完成所述部署文件后,就可以根据所述部署文件,从所述镜像仓库中调取CDN节点的应用服务的容器镜像,部署到每个CDN服务器中,其中每个CDN节点的应用服务的容器镜像都挂载由分布式追踪系统的监控探针。
请参照图1所示,检测单元304,用于启动所述容器镜像,根据所述监控探针获取所述CDN节点检测数据,并根据预设的数据过滤规则进行数据过滤发送到中心服务器中。
启动所述CDN节点的应用服务的容器镜像后,该容器镜像提供了分布式追踪系统的运行环境,在该运行环境中所述监控探针可以检测到所述CDN服务器的健康度以和通讯关联关系;所述健康度包括:CDN节点负载,所述关联关系包括:连接的其他CDN节点。
具体的,所述CDN节点中的监控探收集到监控数据后,将所述CDN节点的监控数据进行打包,并发送到上一级别CDN节点。所述上一级CDN节点解析所述监控数据,并根据预先设置的数据过滤规则进行数据过滤。以响应时间为例,设置响应时间阈值,当所述监控数据中的CDN节点响应时间超过响应时间阈值,则所述上一级CDN节点将该监控数据发送到中心服务器,若没有超过,则仅仅发送一个表示状态正常的字符串。
另外所述上一级的CDN节点中的监控探针收集到监控数据后,将通过所述预先设置的数据过滤规则进行数据过滤,并发送到中心服务器中。
当所述中心服务器收到监控数据,若仅仅是表示状态正常的字符串,则只现实正常,若收到监控数据,则标记所述CDN节点,并发警报。
进一步的,所述监控数据将存储在所述上一级CDN节点的存储系统中,并根据中心服务器的调度进行数据的上传。
优选的,本装置还包括显示单元,用于所述检测数据在所述分布式追踪系统的显示界面显示。