一种基于Kubernetes的调度管理方法及装置与流程
一种基于kubernetes的调度管理方法及装置
技术领域
1.本发明涉及kubernetes技术领域,尤其是指一种基于kubernetes的调度管理方法及装置。
背景技术:
2.k8s是容器编排和分布式应用部署领域的领导者,在k8s环境中只需要关心应用的业务逻辑,这样可减轻服务器网络以及存储等方面的管理负担。对于用户而言,k8s是一个很复杂的容器编排平台,学习成本非常高。
3.目前,业内的容器云平台都会抽象底层k8s、并进行高度产品化,以此构建一个全栈的多租户容器云平台,为多租户和用户提供了一个健壮、安全、功能丰富、具备极致体验的web控制台,这样可解决k8s使用门槛高和云原生生态工具庞杂等痛点。资源可以在租户之间共享,根据分配的角不同,租户可以对各种资源进行操作,租户与资源之间、资源与资源之间的自由度很高,权限粒度也比较大。
4.但是,如何让容器云平台更快更方便地将kubernetes集中的资源与租户关联起来、如何做到不同权限租户可访问不同资源、以及如何准确地隔离集中资源,是现有技术中的技术痛点。
技术实现要素:
5.为了解决上述技术问题,本发明提供了一种基于kubernetes的调度管理方法及装置,所述基于kubernetes的调度管理方法用于解决目前kubernetes集中无法合理调度与管理各资源、无法实现资源隔离的问题。
6.为实现上述目的,本发明提供一种基于kubernetes的调度管理方法,用于对容器云平台中的kubernetes集进行资源调度管理,所述容器云平台包括多租户管理模块、项目模块、资源管理模块以及节点模块;
7.所述方法包括:
8.将所述多租户管理模块中的当前租户等级设置为等级a、所述项目模块中对应的项目等级设置为等级b、所述资源管理模块中对应的各个软硬件资源等级设置为等级c、所述节点模块中对应的节点等级设置为等级d;其中,所述当前租户、所述项目、所述软硬件资源、所述节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;
9.根据所述等级d获取调度所述节点模块中目标节点的目标调度等级k,所述目标调度等级k≤所述等级d;
10.当所述节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;
11.筛选出等级大于所述目标调度等级k的节点,以调度所述目标节点。
12.进一步的,所述多租户管理模块包括用户模块、企业空间模块;
13.将所述多租户管理模块中的当前租户等级设置为等级a,具体包括:
14.将所述用户模块中的当前用户等级设置为等级a1、所述企业空间模块中对应的企业空间等级设置为等级a2;
15.其中,所述当前用户、所述企业空间、所述当前租户相互匹配,且等级a1≥等级a2=等级a。
16.进一步的,所述资源管理模块包括存储模块、容器组模块、负载模块、服务模块、应用路由模块;
17.将所述资源管理模块中对应的各个软硬件资源等级设置为等级c,具体包括:
18.将所述存储模块、所述容器组模块、所述负载模块、所述服务模块、所述应用路由模块的等级均设置为等级c,且等级c=等级d。
19.进一步的,所述方法还包括:
20.获取用于细分划分两个相邻等级的划分等级j;其中,所述两个相邻等级包括等级a、等级b、等级c、等级d之中的两个,且所述划分等级j的数值介于所述两个相邻等级的数值之间;
21.细分划分所述两个相邻等级,并修改待细分资源的等级、以实现升级操作或降级操作。
22.进一步的,修改待细分资源的等级、以实现升级操作或降级操作,具体包括:
23.对所述待细分资源的等级进行升级、生成升级资源,并判断所述升级资源的上层资源等级是否不低于所述升级资源等级;
24.对所述待细分资源的等级进行降级、生成降级资源,并判断所述降级资源的下层资源等级是否不高于所述降级资源等级;
25.当所述升级资源的上层资源等级不低于所述升级资源等级、且所述降级资源的下层资源等级不高于所述降级资源等级时,对所述待细分资源实现升级操作和/或降级操作。
26.进一步的,所述方法还包括:
27.对所述节点模块中的节点添加节点亲和性功能;
28.筛选出等级等于所述目标调度等级k的节点,以调度相同等级的所述目标节点。
29.进一步的,所述方法还包括:
30.将所述容器云平台对接第三方容器管理平台,对所述第三方容器管理平台中等级不超过所述目标调度等级k的第三方目标节点进行调度。
31.本发明还提供一种基于kubernetes的调度管理装置,用于实现前述所述的基于kubernetes的调度管理方法,所述装置包括:
32.等级设置单元,用于将所述多租户管理模块中的当前租户等级设置为等级a、所述项目模块中对应的项目等级设置为等级b、所述资源管理模块中对应的各个软硬件资源等级设置为等级c、所述节点模块中对应的节点等级设置为等级d;其中,所述当前租户、所述项目、所述软硬件资源、所述节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;
33.目标调度等级获取单元,用于根据所述等级d获取调度所述节点模块中目标节点的目标调度等级k,所述目标调度等级k≤所述等级d;
34.黑名单网络隔离单元,用于当所述节点模块中所有节点处于网络互通状态时,根
据黑名单网络隔离策略阻止所有节点的调度操作;
35.节点调度管理单元,用于筛选出等级大于所述目标调度等级k的节点,以调度所述目标节点。
36.本发明又提供一种计算机设备,包括存储器、处理器及计算机程序,所述计算机程序存储在所述存储器上并可在所述处理器上运行,所述处理器执行所述计算机程序时实现以下步骤:
37.将所述多租户管理模块中的当前租户等级设置为等级a、所述项目模块中对应的项目等级设置为等级b、所述资源管理模块中对应的各个软硬件资源等级设置为等级c、所述节点模块中对应的节点等级设置为等级d;其中,所述当前租户、所述项目、所述软硬件资源、所述节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;
38.根据所述等级d获取调度所述节点模块中目标节点的目标调度等级k,所述目标调度等级k≤所述等级d;
39.当所述节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;
40.筛选出等级大于所述目标调度等级k的节点,以调度所述目标节点。
41.本发明再提供一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
42.将所述多租户管理模块中的当前租户等级设置为等级a、所述项目模块中对应的项目等级设置为等级b、所述资源管理模块中对应的各个软硬件资源等级设置为等级c、所述节点模块中对应的节点等级设置为等级d;其中,所述当前租户、所述项目、所述软硬件资源、所述节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;
43.根据所述等级d获取调度所述节点模块中目标节点的目标调度等级k,所述目标调度等级k≤所述等级d;
44.当所述节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;
45.筛选出等级大于所述目标调度等级k的节点,以调度所述目标节点。
46.本发明的上述技术方案,相比现有技术具有以下技术效果:
47.本发明中,先将kubernetes集中的当前租户、对应的项目、对应的各个软硬件资源、对应的节点等资源的等级依次进行标注,使得当前租户等级a≥项目等级b=各个软硬件资源等级c=节点等级d,从而便于后期按照从高到低的等级权限进行资源调度和管理,即低层级资源不能访问高等级资源,高等级资源可以获取它等级之下的所有资源;
48.当需要调度目标节点(目标节点自身等级不超过等级k,且等级k≤等级d)时,先将处于网络互通状态的所有节点按照黑名单网络隔离策略进行全员阻拦、禁止任何调度操作;再筛选出等级大于等级k的节点,赋予这些筛选节点相关调度权限、以允许这些筛选节点调度目标节点;
49.由此,通过分级管理,来保证拥有不同权限的租户在kubernetes集中资源使用以及访问上拥有不同的策略,即租户隔离、资源隔离以及网络上的隔离。
附图说明
50.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
51.图1是本发明实施例一中基于kubernetes的调度管理方法的流程示意图;
52.图2是本发明实际实施例中等级分级体系示意图;
53.图3是本发明实际实施例中调度管理方法中分级管理架构示意图;
54.图4是本发明实施例二中基于kubernetes的调度管理装置的结构框图;
55.图5为本发明实施例二中计算机设备的内部结构图。
具体实施方式
56.现有技术中,申请号为cn202011094385.4的专利申请公开了一种跨组织用户的分级管理系统;其中,通过设定、分配每级组织的分级管理员,可以管理本组织或跨组织的用户,管理员可以管理自己分配管辖区的用户;本管辖区的管理员可以创建、修改组织、用户、角,并可将权限分配给角,将角分配给用户,用户就有了操作系统相应菜单的权限,分级并可跨组织管理用户解决了庞大组织和用户的管理,将用户管理分解成不同的小单元进行管理,每级都可个性化管理用户,加快了响应速度;用户管理分散到每级管理员,可以减轻超级管理员的压力。
57.可见,上述专利申请主要从用户管理的角度来对用户的角、用户的权限进行管理,从而保证在web端进行不同菜单以及资源的展示。
58.但是,如何从kubernetes集的角度来确保管理、如何实现租户隔离和资源隔离、以及如何对接第三方组件是目前技术痛点。
59.为此,本发明提供一种基于kubernetes的调度管理方法及装置,来解决上述问题。
60.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
61.实施例一:
62.如图1所示,本发明实施例提供一种基于kubernetes的调度管理方法,用于对容器云平台中的kubernetes集进行资源调度管理,容器云平台包括多租户管理模块、项目模块、资源管理模块以及节点模块;
63.方法包括:
64.s1将多租户管理模块中的当前租户等级设置为等级a、项目模块中对应的项目等级设置为等级b、资源管理模块中对应的各个软硬件资源等级设置为等级c、节点模块中对应的节点等级设置为等级d;其中,当前租户、项目、软硬件资源、节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;
65.s21根据等级d获取调度节点模块中目标节点的目标调度等级k,目标调度等级k≤等级d;
66.s22当节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;
67.s23筛选出等级大于目标调度等级k的节点,以调度目标节点。
68.在具体实施例中,先将kubernetes集中的当前租户、对应的项目、对应的各个软硬件资源、对应的节点等资源的等级依次进行标注,使得当前租户等级a≥项目等级b=各个软硬件资源等级c=节点等级d,从而便于后期按照从高到低的等级权限进行资源调度和管理,即低层级资源不能访问高等级资源,高等级资源可以获取它等级之下的所有资源;
69.当需要调度目标节点(目标节点自身等级不超过等级k,且等级k≤等级d)时,先将处于网络互通状态的所有节点按照黑名单网络隔离策略进行全员阻拦、禁止任何调度操作;再筛选出等级大于等级k的节点,赋予这些筛选节点相关调度权限、以允许这些筛选节点调度目标节点;
70.由此,通过分级管理,来保证拥有不同权限的租户在kubernetes集中资源使用以及访问上拥有不同的策略,即租户隔离、资源隔离以及网络上的隔离。
71.在具体实施例中,上述调度管理方法采用极少改动就可实现kubernetest集的分级管理;通过应用整个生命周期中的调度隔离、资源隔离、网络隔离等策略来保证不同租户之间的分级管理。
72.在实际中,分级体系具体概念如下:
73.分级,顾名思义就是按照既定的标准对整体进行分解、分类。具体的,将其抽象成一个金字塔模型,从地基到塔顶会有很多个层级;将公共资源作为金字塔的地基,拥有最高权限的admin作为塔顶,其他资源按照权限等级划分成不同等级。
74.如图2所示,低层级资源不能访问高等级资源,高等级资源可以获取它等级之下的所有资源,以此构建一个权益递减、层级间相互隔离的分级体系。
75.在一个优选的实施方式中,多租户管理模块包括用户模块、企业空间模块;
76.s1中,将多租户管理模块中的当前租户等级设置为等级a,具体包括:
77.s11将用户模块中的当前用户等级设置为等级a1、企业空间模块中对应的企业空间等级设置为等级a2;
78.其中,当前用户、企业空间、当前租户相互匹配,且等级a1≥等级a2=等级a。
79.在一个优选的实施方式中,资源管理模块包括存储模块、容器组模块、负载模块、服务模块、应用路由模块;
80.s1中,将资源管理模块中对应的各个软硬件资源等级设置为等级c,具体包括:
81.s12将存储模块、容器组模块、负载模块、服务模块、应用路由模块的等级均设置为等级c,且等级c=等级d。
82.在一个优选的实施方式中,方法还包括:
83.s241对节点模块中的节点添加节点亲和性功能;
84.s242筛选出等级等于目标调度等级k的节点,以调度相同等级的目标节点。
85.在具体实施例中,以一个多节点的集为例,首先给用户、企业空间、节点等资源打上代表等级的标签。
86.在邀请用户加入企业空间或者项目时,要求加入的企业空间或者项目的等级不得高于用户的等级;
87.同样项目在绑定企业空间时,也要求项目的等级不得高于企业空间(或多租户管理模块)的等级,由此才能对资源进行纳管;
88.同一项目下资源的等级是相同的,基于项目创建的负载、pod(即节点)、服务等资源的等级跟项目保持一致。
89.同时pod中加入节点亲和性,以使pod可调度到不高于其权限等级的节点上。
90.在一个优选的实施方式中,方法还包括:
91.s31获取用于细分划分两个相邻等级的划分等级j;其中,两个相邻等级包括等级a、等级b、等级c、等级d之中的两个,且划分等级j的数值介于两个相邻等级的数值之间;
92.s32细分划分两个相邻等级,并修改待细分资源的等级、以实现升级操作或降级操作。
93.在具体实施例中,在分级管理体系中,支持等级的无限划分,只需定义一个中间值,就可以在两个等级之间插入一个新的等级,无需操作其他资源;在对资源进行升降级时,只需修改资源对应的label标签、就可对资源进行升降级操作。
94.在一个优选的实施方式中,s32中,修改待细分资源的等级、以实现升级操作或降级操作,具体包括:
95.s321对待细分资源的等级进行升级、生成升级资源,并判断升级资源的上层资源等级是否不低于升级资源等级;
96.s322对待细分资源的等级进行降级、生成降级资源,并判断降级资源的下层资源等级是否不高于降级资源等级;
97.s323当升级资源的上层资源等级不低于升级资源等级、且降级资源的下层资源等级不高于降级资源等级时,对待细分资源实现升级操作和/或降级操作。
98.当然,在对资源进行升降级的时候,需要对资源进行检测,以保证升级时其上层资源的权限等级不得低于目标等级;同时,降级时其下层资源的权限等级不得高于目标等级。
99.此外,在不满足升降级操作条件时,需要将对应资源也做相应调整。
100.在一个优选的实施方式中,方法还包括:
101.s4将容器云平台对接第三方容器管理平台,对第三方容器管理平台中等级不超过目标调度等级k的第三方目标节点进行调度。
102.在具体实施例中,上述调度管理方法便于快速对接第三方容器管理平台,实现租户与资源的关联以及资源之间的隔离。
103.其完全基于kubernetes自身的能力,不需要额外组件,去中心化的方式保证了对接方便以及架构安全。
104.综上,本发明实施例提供的一种基于kubernetes的调度管理方法,可解决如下技术问题:
105.1)如何提供不同的策略来保证不同租户之间资源的隔离以及网络上的隔离;
106.2)如何完全基于kubernetes自身的能力,不需要额外的组件,以去中心化的方式保证对接方便以及架构安全;
107.3)如何快速对接第三方容器管理平台,实现租户与资源的关联以及资源之间的隔离。
108.其具有以下优点:
109.1)可从kubernetes集的角度来确保管理,不同权限的用户在集中表现不同;
110.2)可提供不同的策略来保证拥有不同权限的用户在kubernetes集中资源使用以及访问上拥有不同的策略,即租户隔离和资源隔离;
111.3)可提供一种去中心化的方式,方便第三方组件对接原生kubernetes对象,不要额外的学习成本以及对接成本。
112.如图3所示,在实际实施例中,上述基于kubernetes的调度管理方法中的分级管理架构如下:
113.定义一个代表等级的标签kubernetes.io/level。
114.以一个多节点的集为例,首先给用户、企业空间、节点等资源打上代表等级的标签。
115.用户和企业空间模拟容器平台中多租户管理模块;项目对应kubernetes中的namespace资源对象,节点对应kubernetes中的node资源对象,存储、容器组、负载、服务、应用路由都对应kubernetes中的资源对象;
116.在邀请用户加入企业空间或者项目时,要求加入的企业空间或者项目的等级不得高于用户的等级;
117.同样项目在绑定企业空间时,也要求项目的等级不得高于企业空间的等级,由此才能对资源进行纳管;
118.同一项目下资源的等级是相同的,基于项目创建的负载、pod、服务等资源的等级跟项目保持一致;
119.同时pod中加入节点亲和性,以使pod可调度到不高于其权限等级的节点上。
120.在某个实际实施例中,上述基于kubernetes的调度管理方法的流程步骤如下:
121.1.创建一个权限等级是3的用户demo-user,其可以加入权限等级不高于3的企业空间或者项目中。
122.2.创建一个权限等级是2的项目demo-ns,那么基于项目创建的负载、pod、存储等资源的权限等级也是2。
123.yaml示例:
[0124][0125]
3.基于项目demo-ns创建一个nginx的pod,其权限等级也是2;
[0126]
同时加入节点亲和性,要求此pod调度到权限等级不高于2的节点上。
[0127]
yaml示例如下:
[0128][0129][0130]
4.在分级体系中,高等级pod可访问低等级pod,但是低等级pod不可访问高等级pod;为保证不同层级间各个pod的网络通信,具体操作如下:
[0131]
项目在不开启网络隔离的情况下,pod间的网络是互通的,所以在这里新增一个黑名单的网络隔离策略。podselector:{}其作用于项目中所有pod、阻止所有流量流入。
[0132]
然后放行标签等级大于目标等级(这里是2)的流量流入。
[0133]
yaml示例如下:
[0134][0135][0136]
需要注意的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0137]
实施例二:
[0138]
如图4所示,本发明实施例还提供一种基于kubernetes的调度管理装置,用于实现前述的基于kubernetes的调度管理方法,装置包括:
[0139]
等级设置单元,用于将多租户管理模块中的当前租户等级设置为等级a、项目模块中对应的项目等级设置为等级b、资源管理模块中对应的各个软硬件资源等级设置为等级c、节点模块中对应的节点等级设置为等级d;其中,当前租户、项目、软硬件资源、节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;
[0140]
目标调度等级获取单元,用于根据等级d获取调度节点模块中目标节点的目标调度等级k,目标调度等级k≤等级d;
[0141]
黑名单网络隔离单元,用于当节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;
[0142]
节点调度管理单元,用于筛选出等级大于目标调度等级k的节点,以调度目标节点。
[0143]
在一个优选的实施方式中,等级设置单元包括用户与企业空间等级设置单元,用
于将用户模块中的当前用户等级设置为等级a1、企业空间模块中对应的企业空间等级设置为等级a2;其中,当前用户、企业空间、当前租户相互匹配,且等级a1≥等级a2=等级a。
[0144]
在一个优选的实施方式中,等级设置单元还包括资源等级设置单元,用于将存储模块、容器组模块、负载模块、服务模块、应用路由模块的等级均设置为等级c,且等级c=等级d。
[0145]
在一个优选的实施方式中,装置还包括:
[0146]
等级划分单元,用于获取用于细分划分两个相邻等级的划分等级j;其中,两个相邻等级包括等级a、等级b、等级c、等级d之中的两个,且划分等级j的数值介于两个相邻等级的数值之间;
[0147]
升级降级单元,用于细分划分两个相邻等级,并修改待细分资源的等级、以实现升级操作或降级操作。
[0148]
在一个优选的实施方式中,升级降级单元包括:
[0149]
升级检测单元,用于对待细分资源的等级进行升级、生成升级资源,并判断升级资源的上层资源等级是否不低于升级资源等级;
[0150]
降级检测单元,用于对待细分资源的等级进行降级、生成降级资源,并判断降级资源的下层资源等级是否不高于降级资源等级;
[0151]
升级降级单元还用于当升级资源的上层资源等级不低于升级资源等级、且降级资源的下层资源等级不高于降级资源等级时,对待细分资源实现升级操作和/或降级操作。
[0152]
在一个优选的实施方式中,装置还包括:
[0153]
节点亲和性设置单元,用于将节点模块中的节点添加节点亲和性功能;
[0154]
同等级节点筛选单元,用于筛选出等级等于目标调度等级k的节点,以调度相同等级的目标节点。
[0155]
在一个优选的实施方式中,装置还包括第三方平台对接单元,其用于将容器云平台对接第三方容器管理平台,对第三方容器管理平台中等级不超过目标调度等级k的第三方目标节点进行调度。
[0156]
关于上述装置的具体限定,可以参见上文中对于方法的限定,在此不再赘述。
[0157]
上述装置中的各个模块,可全部或部分通过软件、硬件及其组合来实现。上述各模块可以以硬件形式内嵌于、或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0158]
其中,如图5所示,上述计算机设备可以是终端,其包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0159]
可以理解的是,上述图中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包
括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0160]
实施例三:
[0161]
本发明实施例又提供一种计算机设备,包括存储器、处理器及计算机程序,计算机程序存储在存储器上并可在处理器上运行,处理器执行计算机程序时实现以下步骤:
[0162]
s1将多租户管理模块中的当前租户等级设置为等级a、项目模块中对应的项目等级设置为等级b、资源管理模块中对应的各个软硬件资源等级设置为等级c、节点模块中对应的节点等级设置为等级d;其中,当前租户、项目、软硬件资源、节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;
[0163]
s21根据等级d获取调度节点模块中目标节点的目标调度等级k,目标调度等级k≤等级d;
[0164]
s22当节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;
[0165]
s23筛选出等级大于目标调度等级k的节点,以调度目标节点。
[0166]
在一个优选的实施方式中,处理器执行计算机程序时还实现以下步骤:
[0167]
s1中,将多租户管理模块中的当前租户等级设置为等级a,具体包括:s11将用户模块中的当前用户等级设置为等级a1、企业空间模块中对应的企业空间等级设置为等级a2;其中,当前用户、企业空间、当前租户相互匹配,且等级a1≥等级a2=等级a。
[0168]
在一个优选的实施方式中,处理器执行计算机程序时还实现以下步骤:
[0169]
s1中,将资源管理模块中对应的各个软硬件资源等级设置为等级c,具体包括:s12将存储模块、容器组模块、负载模块、服务模块、应用路由模块的等级均设置为等级c,且等级c=等级d。
[0170]
在一个优选的实施方式中,处理器执行计算机程序时还实现以下步骤:
[0171]
s241对节点模块中的节点添加节点亲和性功能;s242筛选出等级等于目标调度等级k的节点,以调度相同等级的目标节点。
[0172]
在一个优选的实施方式中,处理器执行计算机程序时还实现以下步骤:
[0173]
s31获取用于细分划分两个相邻等级的划分等级j;其中,两个相邻等级包括等级a、等级b、等级c、等级d之中的两个,且划分等级j的数值介于两个相邻等级的数值之间;s32细分划分两个相邻等级,并修改待细分资源的等级、以实现升级操作或降级操作。
[0174]
在一个优选的实施方式中,处理器执行计算机程序时还实现以下步骤:
[0175]
s32中,修改待细分资源的等级、以实现升级操作或降级操作,具体包括:s321对待细分资源的等级进行升级、生成升级资源,并判断升级资源的上层资源等级是否不低于升级资源等级;s322对待细分资源的等级进行降级、生成降级资源,并判断降级资源的下层资源等级是否不高于降级资源等级;s323当升级资源的上层资源等级不低于升级资源等级、且降级资源的下层资源等级不高于降级资源等级时,对待细分资源实现升级操作和/或降级操作。
[0176]
在一个优选的实施方式中,处理器执行计算机程序时还实现以下步骤:
[0177]
s4将容器云平台对接第三方容器管理平台,对第三方容器管理平台中等级不超过目标调度等级k的第三方目标节点进行调度。
[0178]
实施例四:
[0179]
本发明实施例再提供一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0180]
s1将多租户管理模块中的当前租户等级设置为等级a、项目模块中对应的项目等级设置为等级b、资源管理模块中对应的各个软硬件资源等级设置为等级c、节点模块中对应的节点等级设置为等级d;其中,当前租户、项目、软硬件资源、节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;
[0181]
s21根据等级d获取调度节点模块中目标节点的目标调度等级k,目标调度等级k≤等级d;
[0182]
s22当节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;
[0183]
s23筛选出等级大于目标调度等级k的节点,以调度目标节点。
[0184]
在一个优选的实施方式中,计算机程序被处理器执行时还实现以下步骤:
[0185]
s1中,将多租户管理模块中的当前租户等级设置为等级a,具体包括:s11将用户模块中的当前用户等级设置为等级a1、企业空间模块中对应的企业空间等级设置为等级a2;其中,当前用户、企业空间、当前租户相互匹配,且等级a1≥等级a2=等级a。
[0186]
在一个优选的实施方式中,计算机程序被处理器执行时还实现以下步骤:
[0187]
s1中,将资源管理模块中对应的各个软硬件资源等级设置为等级c,具体包括:s12将存储模块、容器组模块、负载模块、服务模块、应用路由模块的等级均设置为等级c,且等级c=等级d。
[0188]
在一个优选的实施方式中,计算机程序被处理器执行时还实现以下步骤:
[0189]
s241对节点模块中的节点添加节点亲和性功能;s242筛选出等级等于目标调度等级k的节点,以调度相同等级的目标节点。
[0190]
在一个优选的实施方式中,计算机程序被处理器执行时还实现以下步骤:
[0191]
s31获取用于细分划分两个相邻等级的划分等级j;其中,两个相邻等级包括等级a、等级b、等级c、等级d之中的两个,且划分等级j的数值介于两个相邻等级的数值之间;s32细分划分两个相邻等级,并修改待细分资源的等级、以实现升级操作或降级操作。
[0192]
在一个优选的实施方式中,计算机程序被处理器执行时还实现以下步骤:
[0193]
s32中,修改待细分资源的等级、以实现升级操作或降级操作,具体包括:s321对待细分资源的等级进行升级、生成升级资源,并判断升级资源的上层资源等级是否不低于升级资源等级;s322对待细分资源的等级进行降级、生成降级资源,并判断降级资源的下层资源等级是否不高于降级资源等级;s323当升级资源的上层资源等级不低于升级资源等级、且降级资源的下层资源等级不高于降级资源等级时,对待细分资源实现升级操作和/或降级操作。
[0194]
在一个优选的实施方式中,计算机程序被处理器执行时还实现以下步骤:
[0195]
s4将容器云平台对接第三方容器管理平台,对第三方容器管理平台中等级不超过目标调度等级k的第三方目标节点进行调度。
[0196]
可以理解的是,上述实施例方法中的全部或部分流程的实现,可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。
[0197]
其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0198]
需要注意的是,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其它等效实施例,而本发明的范围由所附的权利要求范围决定。
技术特征:
1.一种基于kubernetes的调度管理方法,其特征在于,用于对容器云平台中的kubernetes集进行资源调度管理,所述容器云平台包括多租户管理模块、项目模块、资源管理模块以及节点模块;所述方法包括:将所述多租户管理模块中的当前租户等级设置为等级a、所述项目模块中对应的项目等级设置为等级b、所述资源管理模块中对应的各个软硬件资源等级设置为等级c、所述节点模块中对应的节点等级设置为等级d;其中,所述当前租户、所述项目、所述软硬件资源、所述节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;根据所述等级d获取调度所述节点模块中目标节点的目标调度等级k,所述目标调度等级k≤所述等级d;当所述节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;筛选出等级大于所述目标调度等级k的节点,以调度所述目标节点。2.根据权利要求1所述的基于kubernetes的调度管理方法,其特征在于,所述多租户管理模块包括用户模块、企业空间模块;将所述多租户管理模块中的当前租户等级设置为等级a,具体包括:将所述用户模块中的当前用户等级设置为等级a1、所述企业空间模块中对应的企业空间等级设置为等级a2;其中,所述当前用户、所述企业空间、所述当前租户相互匹配,且等级a1≥等级a2=等级a。3.根据权利要求2所述的基于kubernetes的调度管理方法,其特征在于,所述资源管理模块包括存储模块、容器组模块、负载模块、服务模块、应用路由模块;将所述资源管理模块中对应的各个软硬件资源等级设置为等级c,具体包括:将所述存储模块、所述容器组模块、所述负载模块、所述服务模块、所述应用路由模块的等级均设置为等级c,且等级c=等级d。4.根据权利要求1所述的基于kubernetes的调度管理方法,其特征在于,所述方法还包括:获取用于细分划分两个相邻等级的划分等级j;其中,所述两个相邻等级包括等级a、等级b、等级c、等级d之中的两个,且所述划分等级j的数值介于所述两个相邻等级的数值之间;细分划分所述两个相邻等级,并修改待细分资源的等级、以实现升级操作或降级操作。5.根据权利要求4所述的基于kubernetes的调度管理方法,其特征在于,修改待细分资源的等级、以实现升级操作或降级操作,具体包括:对所述待细分资源的等级进行升级、生成升级资源,并判断所述升级资源的上层资源等级是否不低于所述升级资源等级;对所述待细分资源的等级进行降级、生成降级资源,并判断所述降级资源的下层资源等级是否不高于所述降级资源等级;当所述升级资源的上层资源等级不低于所述升级资源等级、且所述降级资源的下层资
源等级不高于所述降级资源等级时,对所述待细分资源实现升级操作和/或降级操作。6.根据权利要求1所述的基于kubernetes的调度管理方法,其特征在于,所述方法还包括:对所述节点模块中的节点添加节点亲和性功能;筛选出等级等于所述目标调度等级k的节点,以调度相同等级的所述目标节点。7.根据权利要求6所述的基于kubernetes的调度管理方法,其特征在于,所述方法还包括:将所述容器云平台对接第三方容器管理平台,对所述第三方容器管理平台中等级不超过所述目标调度等级k的第三方目标节点进行调度。8.一种基于kubernetes的调度管理装置,其特征在于,用于实现如权利要求1-7任一项所述的基于kubernetes的调度管理方法,所述装置包括:等级设置单元,用于将所述多租户管理模块中的当前租户等级设置为等级a、所述项目模块中对应的项目等级设置为等级b、所述资源管理模块中对应的各个软硬件资源等级设置为等级c、所述节点模块中对应的节点等级设置为等级d;其中,所述当前租户、所述项目、所述软硬件资源、所述节点相互匹配,且等级a≥等级b=等级c=等级d;等级越高,对应资源的调度权限越大;目标调度等级获取单元,用于根据所述等级d获取调度所述节点模块中目标节点的目标调度等级k,所述目标调度等级k≤所述等级d;黑名单网络隔离单元,用于当所述节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;节点调度管理单元,用于筛选出等级大于所述目标调度等级k的节点,以调度所述目标节点。9.一种计算机设备,包括存储器、处理器及计算机程序,所述计算机程序存储在所述存储器上并可在所述处理器上运行,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的基于kubernetes的调度管理方法的步骤。10.一种计算机可读存储介质,其存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的基于kubernetes的调度管理方法的步骤。
技术总结
本发明涉及一种基于Kubernetes的调度管理方法及装置,方法包括:将多租户管理模块中的当前租户等级设置为等级a、项目模块中对应的项目等级设置为等级b、资源管理模块中对应的各个软硬件资源等级设置为等级c、节点模块中对应的节点等级设置为等级d;等级a≥等级b=等级c=等级d;根据等级d获取调度节点模块中目标节点的目标调度等级k,目标调度等级k≤等级d;当节点模块中所有节点处于网络互通状态时,根据黑名单网络隔离策略阻止所有节点的调度操作;筛选出等级大于目标调度等级k的节点,以调度目标节点。通过上述技术方案,可解决目前kubernetes集中无法合理调度与管理各资源、无法实现资源隔离的问题。无法实现资源隔离的问题。无法实现资源隔离的问题。