技术新讯 > 电子通信装置的制造及其应用技术 > 一种k8s网络拨测方法、装置、设备及存储介质与流程  >  正文

一种k8s网络拨测方法、装置、设备及存储介质与流程

  • 国知局
  • 2025-01-10 13:40:17

本发明属于容器管理领域,尤其涉及一种k8s网络拨测方法、装置、设备及存储介质。

背景技术:

1、容器是微服务部署的主流方式,k8s是容器编排事实标准。大规模k8s集群中存在工作节点,k8s中使用cni插件在这些节点上构建一个庞大而复杂的容器网络。k8s集群内通过service为各个服务做负载均衡,并通过coredns做服务发现。集群外访问服务通常还需要通过ingress-nginx提供从集群外部到集群内服务的http和https路由http服务。整个服务访问链路上任何一个环节异常都可能影响服务稳定性,排查也非常困难。

2、当前一般通过mirantis/k8s-netchecker检查k8s node节点网络,另外还可以通过postfinance/kubenurse作为开源k8s网络检查工具,能够检查节点之间、节点和svc、ingress之前的网络延迟、coredns延迟。但ingress地址只能配置一个,大规模生产环境可能有多个lb转发到后端ingress集群,且现有方案缺少对外部依赖地址,包括域名、ip端口的拨测,导致拨测的覆盖不够全面。

技术实现思路

1、鉴于以上现有技术的不足,发明的目的在于提供一种k8s网络拨测方法、装置、设备及存储介质。

2、本发明第一方面提供一种k8s网络拨测方法,包括:

3、s1:建立服务器组件及智能体组件,并将所述服务器组件及所述智能体组件分别进行部署;

4、s2:启动所述服务器组件,并通过所述服务器组件维持k8s集群的内部负载均衡及外部负载均衡;

5、s3:通过所述智能体组件拨测k8s集群的服务,获得拨测结果;

6、s4:将所述拨测结果可视化,以完成k8s集群拨测。

7、根据本发明提供的一种k8s网络拨测方法,步骤s1中的所述服务器组件为netcheck-server组件,所述智能体组件为netcheck-agent组件。

8、根据本发明提供的一种k8s网络拨测方法,步骤s1中,所述服务器组件通过deployment部署至k8s集群,所述智能体组件通过daemonset方式分别部署至每个节点。

9、根据本发明提供的一种k8s网络拨测方法,步骤s2中,所述服务器组件通过svc服务进行k8s集群的内部负载均衡,通过ingress入口进行k8s集群的外部负载均衡。

10、根据本发明提供的一种k8s网络拨测方法,步骤s3具体包括:

11、所述智能体组件拨测每个pod单元的alive接口;

12、所述智能体组件通过svc服务拨测服务器组件;

13、所述智能体组件基于ingress入口,通过配置多个域名拨测k8s集群的内部服务;

14、所述智能体组件通过多个lb地址拨测虚拟ip地址至ingress入口至svc服务的链路;

15、所述智能体组件通过ip端口或域名拨测外部依赖服务。

16、根据本发明提供的一种k8s网络拨测方法,当所述智能体组件拨测外部依赖服务时,默认对所有外部依赖服务进行拨测;

17、当所述智能体组件拨测指定外部依赖服务时,所述智能体组件与kube-apiserver组件保持通信以获取当前节点标签,当所述当前节点标签与预设的指定节点标签匹配时,对匹配的当前节点标签对应的当前节点的外部依赖服务进行拨测。

18、根据本发明提供的一种k8s网络拨测方法,步骤s4中,所述服务器组件及所述智能体组件均提供metrics接口,服务监控系统通过所述metrics接口对k8s集群的网络配置及所述拨测结果进行可视化监控。

19、本发明第二方面提供一种k8s网络拨测装置,包括:

20、部署模块:用于将建立服务器组件及智能体组件分别进行部署;

21、负载均衡模块:用于启动所述服务器组件,还用于通过所述服务器组件维持k8s集群的内部负载均衡及外部负载均衡;

22、拨测模块:用于通过所述智能体组件拨测k8s集群的服务,获得拨测结果;

23、可视化模块:用于将所述拨测结果可视化。

24、本发明第三方面提供一种k8s网络拨测设备,包括:

25、存储器和至少一个处理器,所述存储器中存储有指令;

26、所述处理器调用所述存储器中的所述指令,以使得k8s网络拨测设备执行如以上任一项所述的k8s网络拨测方法。

27、本发明第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,所述指令被处理器执行时实现如以上任一项所述的k8s网络拨测方法。

28、本发明有益效果如下:

29、本发明提供的一种k8s网络拨测方法、装置、设备及存储介质,通过在k8s集群各个节点部署agent,通过agent与server直接的拨测、agent通过对svc、ingress、coredns和外部依赖地址和域名的拨测,快速定位异常机器,提升网络问题处理速度。本发明部署的agent通过对server的svc、ingress、lb进行拨测,能够全面检测到服务暴露的整个链路上lb、ingress、svc连通性和域名解析情况。可配置拨测多个ingress和lb地址配置;其次agent和server之间的相互拨测可以检测pod之间网络健康情况;另外agent可以对外部ip端口和域名拨测,及时发现外部依赖连通性问题,还通过label限定可以限定需要访问外部依赖的机器才拨测,减少脏数据,更加精准发现问题。

30、本发明提供的一种k8s网络拨测方法、装置、设备及存储介质,功能丰富,agent通过对server的svc、ingress、lb进行拨测,能够全面检测到服务暴露的整个链路上lb、ingress、svc连通性和域名解析情况,可配置拨测多个ingress和lb地址配置;且配置灵活,agent可以对外部ip端口和域名拨测,及时发现外部依赖连通性问题,通过label限定可以限定需要访问外部依赖的机器才拨测,减少脏数据,更加精准发现问题。

技术特征:

1.一种k8s网络拨测方法,其特征在于,包括:

2.根据权利要求1所述的一种k8s网络拨测方法,其特征在于,步骤s1中的所述服务器组件为netcheck-server组件,所述智能体组件为netcheck-agent组件。

3.根据权利要求1所述的一种k8s网络拨测方法,其特征在于,步骤s1中,所述服务器组件通过deployment部署至k8s集群,所述智能体组件通过daemonset方式分别部署至每个节点。

4.根据权利要求1所述的一种k8s网络拨测方法,其特征在于,步骤s2中,所述服务器组件通过svc服务进行k8s集群的内部负载均衡,通过ingress入口进行k8s集群的外部负载均衡。

5.根据权利要求1所述的一种k8s网络拨测方法,其特征在于,步骤s3具体包括:

6.根据权利要求5所述的一种k8s网络拨测方法,其特征在于,当所述智能体组件拨测外部依赖服务时,默认对所有外部依赖服务进行拨测;

7.根据权利要求1所述的一种k8s网络拨测方法,其特征在于,步骤s4中,所述服务器组件及所述智能体组件均提供metrics接口,服务监控系统通过所述metrics接口对k8s集群的网络配置及所述拨测结果进行可视化监控。

8.一种k8s网络拨测装置,其特征在于,包括:

9.一种k8s网络拨测设备,其特征在于,包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,所述指令被处理器执行时实现如权利要求1-7中任一项所述的k8s网络拨测方法。

技术总结本发明涉及一种k8s网络拨测方法、装置、设备及存储介质,该方法包括:建立服务器组件及智能体组件,并将所述服务器组件及所述智能体组件分别进行部署;启动所述服务器组件,并通过所述服务器组件维持k8s集群的内部负载均衡及外部负载均衡;通过所述智能体组件拨测k8s集群的服务,获得拨测结果;将所述拨测结果可视化,以完成k8s集群拨测。本发明能够全面地对k8s集群进行拨测,快速定位异常机器,提升网络问题处理速度。技术研发人员:覃忠良受保护的技术使用者:天翼视联科技有限公司技术研发日:技术公布日:2025/1/6

本文地址:https://www.jishuxx.com/zhuanli/20250110/354596.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。