System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于Kubelet的网卡虚拟功能自定义调度方法、装置及程序产品制造方法及图纸_技高网

基于Kubelet的网卡虚拟功能自定义调度方法、装置及程序产品制造方法及图纸

技术编号:41815178 阅读:1 留言:0更新日期:2024-06-24 20:32
本发明专利技术提供一种基于Kubelet的网卡虚拟功能自定义调度方法、装置及程序产品,资源服务器利用SR‑IOV设备插件基于用户给出的需求定义,选择符合要求的网卡虚拟功能VF,并按照类别建立资源池并向Kubelet代理组件注册。同时,按照用户指定的调度策略对资源池中的VF进行排序形成偏好池,在Kubelet代理组件调用VF时,首先发起请求告知需要调用VF的类型和数量,由资源服务器将该类型偏好池中相应数量的VF设备号封装发送至Kubelet代理组件以供调用,实现在SR‑IOV侧指定调度策略,保证了各VF调用满足场景需求,提高资源利用率。同时在Kubernetes结构下,每个节点由Kubelet代理组件管理,并针对不同类型的网卡虚拟功能VF分别设置不同的调度策略,实现灵活且高效的调度策略部署,满足用户需求提升整体效率。

【技术实现步骤摘要】

本专利技术涉及数据处理,尤其涉及一种基于kubelet的网卡虚拟功能自定义调度方法、装置及程序产品。


技术介绍

1、kubernetes作为开源的容器编排和管理平台,功能强大且全面,生态系统广泛且活跃,是云原生应用开发和部署的首选工具。kubernetes除了在集群层面对容器进行管理之外,还支持将某些容器运行时需要的计算资源如内存,cpu等也列入纳管范围,以便在容器调度过程中凭借其需求的资源以将容器调度到合适的节点,同时为其分配资源。例如,当一个节点注册成为kubernetes集群中的worker节点时,运行在该节点上的kubernetes组件kubelet便会感知到该节点上的cpu资源和内存资源并且将其记录,当一个容器被调度时,kubernetes便会通过分析该容器运行时所需要的计算资源与各个工作节点上的资源使用情况,将其调度到满足其资源需求且比较空闲的节点上,以实现容器的正常运行和集群节点负载压力的平衡。

2、随着当前容器内服务的愈加复杂化,容器运行所需要的资源也不只局限于常规的cpu资源和内存资源,许多容器在运行过程中可能会需求一些自定义资源,而这些自定义资源一般不被kubernetes所识别,如果想让这些需求自定义资源的容器能够支持kubernetes部署和管理,就需要让这些自定义资源能被kubernetes识别。为了满足对自定义资源的识别需求,kubernetes中为自定义资源提供了一个设备插件接口,这个接口中定义了设备插件需要向kubernetes提供的一系列服务,自定义资源需要实现这个接口并与kubernetes之间建立连接之后,才能使资源被kubernetes识别并管理。

3、当前市场上云平台上单个节点容器数量激增且逐渐复杂化,对容器网络的要求也水涨船高,要求容器网络也能有更大的吞吐量和更低的时延,而单个节点物理网卡的数量显然不足以满足节点上数量庞大的容器的需要,因此可以对物理网卡进行虚拟化的sr-iov(单根i/o虚拟化设备)技术成为关键。sr-iov是一种硬件虚拟化技术,旨在提高虚拟化环境中的i/o性能。它允许物理网卡创建多个虚拟功能(vf),每个vf都可以直接映射到容器中,而不需要通过虚拟交换机进行中介,相比于一般的虚拟网卡显著提升了吞吐量和性能,这些vf资源便成为某些高速网络容器运行时需求的资源,如果要通过kubernetes部署该类型的容器,需要通过预先注册的形式使这种vf资源被kubernetes所识别和管理。

4、由于kubelet中自定义设备资源对应的资源表是无序集合,当有需求该vf资源的容器被调度到该节点时,从vf的资源表中选择vf资源时是完全随机的,即kubernetes并没有对这些自定义资源进行调度的策略,这样可能会产生一些负面影响,即某些vf被反复调度分配和释放,而另外一些vf则一直得不到使用。此外,在某些特殊的场景中,当这些vf资源作为消耗性资源被使用时,要求每个vf最多被调度一次,为了解决以上的问题,kubelet需要具有以特定的调度算法来对这些资源进行选择的能力。因此,亟需一种新的vf资源调度方法。


技术实现思路

1、鉴于此,本专利技术实施例提供了一种基于kubelet的网卡虚拟功能自定义调度方法、装置及程序产品,以消除或改善现有技术中存在的一个或更多个缺陷,解决现有技术中kubernetes无序调用网卡虚拟功能资源的问题。

2、本专利技术的一个方面提供了一种基于kubelet的网卡虚拟功能自定义调度方法,所述方法在资源服务器上运行,该方法包括以下步骤:

3、接收多个用户通过各自选择器配置的网卡虚拟功能类别的需求定义,针对每个类别建立对应的资源池;

4、接收宿主机基于单根i/o虚拟化设备插件查找到符合所述需求定义的网卡虚拟功能,并存储在与其类别对应的所述资源池中;

5、根据各所述用户针对每类资源池分别指定的调度策略,对所述资源池中的所述网卡虚拟功能进行排序形成偏好池;

6、通过预设的远程调用框架将各所述资源池中的网卡虚拟功能注册至kubelet代理组件中;

7、接收所述kubelet代理组件发送的调度请求,所述调度请求包括目标调用类别和目标调用数量;

8、按照所述目标调用类别选取对应类别的所述偏好池,并按照预设顺序和所述目标调用数量出队该所述偏好池中网卡虚拟功能的标签信息,将各标签信息作为期望调度设备号封装为反馈信息;

9、将所述反馈信息发送至kubelet代理组件,以供调用对应所述资源池中所述期望调度设备号对应的网卡虚拟功能。

10、在一些实施例中,所述需求定义包括带宽限制参数、服务质量参数、安全策略参数和最大传输单元参数;

11、其中,所述带宽限制参数包括最大带宽和带宽配额;

12、所述服务质量参数包括最小带宽、最大延迟和传输抖动;

13、所述安全策略参数包括访问控制列表和防火墙规则;

14、所述最大传输单元参数为最大传输单元大小。

15、在一些实施例中,所述调度策略包括:均衡负载调度策略、延迟优先调度策略和/或最低资源成本调度策略;

16、所述均衡负载调度策略对计算资源或带宽利用率进行均衡。

17、在一些实施例中,通过预设的远程调用框架将各所述资源池中的网卡虚拟功能注册至kubelet代理组件中,包括:

18、通过grpc框架将各所述资源池中的网卡虚拟功能注册至kubelet代理组件中。

19、在一些实施例中,将所述反馈信息发送至kubelet代理组件之后,所述方法还包括:

20、接收所述kubelet代理组件返回的核查结果信息,若所述反馈信息中所述期望调度设备号对应的网卡虚拟功能已经注册,则核查结果信息表示通过;若所述反馈信息中所述期望调度设备号对应的网卡虚拟功能未注册,则核查结果信息表示未通过。

21、在一些实施例中,所述方法还包括:

22、接收所述用户针对指定类别网卡虚拟功能发送的调度策略变更请求,并根据新的调度策略更新所述偏好池。

23、在一些实施例中,所述方法还包括:

24、按照设定间隔时长重新接收宿主机基于单根i/o虚拟化设备插件查找到符合所述需求定义的网卡虚拟功能,并更新各类所述资源池和对应的所述偏好池。

25、另一方面,本专利技术还提供一种基于kubelet的网卡虚拟功能自定义调度装置,包括处理器、存储器及存储在存储器上的计算机程序/指令,所述处理器用于执行所述计算机程序/指令,当所述计算机程序/指令被执行时该装置实现如上述方法的步骤。

26、另一方面,本专利技术还提供一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现上述方法的步骤。

27、另一方面,本专利技术还提供一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现上述方法的步骤。

2本文档来自技高网...

【技术保护点】

1.一种基于Kubelet的网卡虚拟功能自定义调度方法,其特征在于,所述方法在资源服务器上运行,该方法包括以下步骤:

2.根据权利要求1所述的基于Kubelet的网卡虚拟功能自定义调度方法,其特征在于,所述需求定义包括带宽限制参数、服务质量参数、安全策略参数和最大传输单元参数;

3.根据权利要求1所述的基于Kubelet的网卡虚拟功能自定义调度方法,其特征在于,所述调度策略包括:均衡负载调度策略、延迟优先调度策略和/或最低资源成本调度策略;

4.根据权利要求1所述的基于Kubelet的网卡虚拟功能自定义调度方法,其特征在于,通过预设的远程调用框架将各所述资源池中的网卡虚拟功能注册至Kubelet代理组件中,包括:

5.根据权利要求1所述的基于Kubelet的网卡虚拟功能自定义调度方法,其特征在于,将所述反馈信息发送至Kubelet代理组件之后,所述方法还包括:

6.根据权利要求1所述的基于Kubelet的网卡虚拟功能自定义调度方法,其特征在于,所述方法还包括:

7.根据权利要求1所述的基于Kubelet的网卡虚拟功能自定义调度方法,其特征在于,所述方法还包括:

8.一种基于Kubelet的网卡虚拟功能自定义调度装置,包括处理器、存储器及存储在存储器上的计算机程序/指令,其特征在于,所述处理器用于执行所述计算机程序/指令,当所述计算机程序/指令被执行时该装置实现如权利要求1至7中任一项所述方法的步骤。

9.一种计算机可读存储介质,其上存储有计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1至7中任一项所述方法的步骤。

10.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至7中任一项所述方法的步骤。

...

【技术特征摘要】

1.一种基于kubelet的网卡虚拟功能自定义调度方法,其特征在于,所述方法在资源服务器上运行,该方法包括以下步骤:

2.根据权利要求1所述的基于kubelet的网卡虚拟功能自定义调度方法,其特征在于,所述需求定义包括带宽限制参数、服务质量参数、安全策略参数和最大传输单元参数;

3.根据权利要求1所述的基于kubelet的网卡虚拟功能自定义调度方法,其特征在于,所述调度策略包括:均衡负载调度策略、延迟优先调度策略和/或最低资源成本调度策略;

4.根据权利要求1所述的基于kubelet的网卡虚拟功能自定义调度方法,其特征在于,通过预设的远程调用框架将各所述资源池中的网卡虚拟功能注册至kubelet代理组件中,包括:

5.根据权利要求1所述的基于kubelet的网卡虚拟功能自定义调度方法,其特征在于,将所述反馈信息发送至kubelet代理组件之后,所...

【专利技术属性】
技术研发人员:阮杲杲黄明亮鄢贵海
申请(专利权)人:中科驭数北京科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1