【技术实现步骤摘要】
一种实现集群的服务拓扑感知的方法、装置、设备及介质
[0001]本专利技术涉及计算机领域,并且更具体地涉及一种实现集群的服务拓扑感知的方法、装置、设备及可读介质。
技术介绍
[0002]当前容器云平台大部分基于kubernetes(容器云平台使用量最多的开源容器编排架构,能够实现容器的自动调度、扩展、故障恢复等)框架,面向用户提供以应用管理为核心的功能体系。通过k8s为某一具体业务创建一组Pod(kubernetes调度的最小管理单元,由1个或多个容器组成,这些容器共享进程、网络等命名空间),并通过service提供对外服务。Service(服务,k8s中的一种资源,通过service可以访问一组特定的Pod,并且提供了负载均衡功能)负载均衡主要是通过节点上的kube
‑
proxy进程从API Server获取service对应的Pod,再通过iptables(Linux操作系统内核中的信息包过滤系统,可以根据特定的匹配条件实现数据包的接收、转发、删除等操作)或ipvs(运行于Linux内核网络协议栈的第四 ...
【技术保护点】
【技术特征摘要】
1.一种实现集群的服务拓扑感知的方法,其特征在于,包括以下步骤:为集群中的每个节点添加预设标签;在集群中创建监听服务的程序并在集群中创建ebpf程序的Map;响应于监听服务的程序监听到集群服务发生变化,获取服务的详细信息并根据服务的拓扑感知规则筛选后端容器,并将容器存储到Map中;将ebpf程序挂载到集群内节点内核的预设位置,在访问集群的数据包进入内核网络协议栈前通过查询Map选择服务对应的后端容器。2.根据权利要求1所述的方法,其特征在于,响应于监听服务的程序监听到集群服务发生变化,获取服务的详细信息并根据服务的拓扑感知规则筛选后端容器,并将容器存储到Map中包括:响应于监听服务的程序监听到集群创建或更新服务,解析服务对应的后端容器的具体信息,并获取容器所在节点的信息;将容器所在节点的标签信息与当前节点的标签信息进行比较,并基于比较结果将容器存储到Map中。3.根据权利要求2所述的方法,其特征在于,标签信息包括节点名称的标签、节点所处的可用区的标签以及节点所处的域的标签。4.根据权利要求3所述的方法,其特征在于,将容器所在节点的标签信息与当前节点的标签信息进行比较,并基于比较结果将容器存储到Map中包括:将容器所在节点的节点名称的标签与当前节点的节点名称的标签进行比较;响应于容器所在节点的节点名称的标签与当前节点的节点名称的标签相同,将容器存储到Map中。5.根据权利要求4所述的方法,其特征在于,还包括:响应于容器所在节点的节点名称的标签与当前节点的节点名称的标签不相同,将容器所在节点的节点所处的可用区的标签与当前节点的节点所处的可用区的标签进行比较;响应于容器所在节点的节点所处的可用区的标签与当前节点的节点所处的可用区的标签相同,将容器存储到Map中。6.根据权利要求5所述的方法,其特征在于,还包括:响应于容器所在节点的节点所处的可用区的标签与当前节点的节点所处的可用区的标签不相同,将容器所在节点的节点所处的域的标签与当前节点的节点所处的域的标签进行比较;响应于容器所在节点的节点所处的域的标签与当前节点的节点所处的域的标签相同,将容器存储到Map中。7.根据权利要求6所述的方法,其特征在于,还包括:响应于容器所在节点的节点所处的域的标签与当前节点的节点所处的域的标签不相同,将所有容器存储到Map中以保证服务的可用性。8.根据权利要求2所述的方法,其特征在于,基于比较结果将容器存储到Map中包括:将容器存储到Map的键值对中的值中。9.根据权利要求1所述的方法,其特征在于,将ebpf程序挂载到集群内节点内核的预设位置包括:
将ebpf程序挂载到集群内节...
【专利技术属性】
技术研发人员:彭彬彬,黄吉旺,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。