本说明书涉及存储服务,尤其涉及面向kubernetes集群的多租户资源配置方法和多租户管理方法以及相应的装置、电子设备、存储介质。
背景技术:
1、租户是指一组拥有访问特定软件资源权限的用户集合,在多租户环境中,它还包括共享的服务、数据以及配置等。kubernetes集群本身没有租户的定义,通常企业通过使用kubernetes原生的命名空间的各种隔离机制来实现租户的落地,这样可以以最小代价完成租户的管理。对小平台、小企业而言,应用通常比较单一,使用命名空间的这种隔离方案,将所有的服务、配置等放在单一的命名空间中,可以满足基本需求。但对于中大型企业,应用的多样性和复杂程度很高,若使用命名空间作为隔离方案,可能会面临运维瓶颈,即在单命名空间维护多个不同类型、不同功能的应用。
2、因此,如何在kubernetes集群中实现租户与命名空间的解耦合,提高kubernetes资源与租户之间的灵活配置,是亟待解决的技术问题。
技术实现思路
1、本说明书实施例的目的是针对上述问题,提供一种面向kubernetes集群的多租户资源配置方法和多租户管理方法以及相应的装置、电子设备、存储介质。
2、为解决上述技术问题,本说明书实施例是这样实现的:
3、第一方面,提出一种面向kubernetes集群的多租户资源配置方法,包括:
4、为目标租户配置一个或多个命名空间;
5、设置命名空间的权限role,并通过rolebinding将不同权限向目标租户的相应成员用户进行授权;
6、设置命名空间的资源定义,建立目标租户的相应成员用户与命名空间的相应资源之间的对应关系。
7、进一步地,还包括:
8、设置kubernetes集群的特定资源定义podsecuritypolicy,并通过rolebinding将特定资源定义podsecuritypolicy向目标租户的相应成员用户进行授权;
9、设置目标租户的网络访问策略,网络访问策略包括默认网络访问策略和租户之间网络访问策略。
10、进一步地,所述命名空间的资源定义包括pod、service、persistentvolumeclaim中的一项或多项。
11、第二方面,提出一种面向kubernetes集群的多租户管理方法,包括:
12、创建租户管理自定义资源文件crd;
13、在租户管理自定义资源文件crd中,定义租户属性信息、工作组以及与租户对应的一个或多个命名空间;所述工作组包括租户的成员用户信息;
14、提交租户管理自定义资源文件crd至kubernetes集群,进行租户注册。
15、进一步地,当租户注册成功后,还包括:
16、定义命名空间权限并建立权限与租户的成员用户之间的授权关系,和/或建立租户的相应成员用户与命名空间相应资源之间的对应关系,和/或设置租户的网络访问策略。
17、进一步地,每个租户具有至少1个租户管理员,所述租户管理员具有当前租户的全部命名空间的全部权限;和/或,设置当前租户的资源配额,以使当前租户的全部命名空间的资源配额不超过当前租户的资源配额。
18、第三方面,提出一种面向kubernetes集群的多租户资源配置装置,包括:
19、命名空间配置模块,被配置为目标租户配置一个或多个命名空间;
20、权限设置模块,被配置为设置命名空间的权限role,并通过rolebinding将不同权限向目标租户的相应成员用户进行授权;
21、资源定义模块,被配置为设置命名空间的资源定义,建立目标租户的相应成员用户与命名空间的相应资源之间的对应关系。
22、第四方面,提出一种面向kubernetes集群的多租户管理装置,包括:
23、租户管理文件创建模块,被配置为创建租户管理自定义资源文件crd;
24、租户信息配置模块,被配置为在租户管理自定义资源文件crd中,定义租户属性信息、工作组以及与租户对应的一个或多个命名空间;所述工作组包括租户的成员用户信息;
25、租户注册模块,被配置为提交租户管理自定义资源文件crd至kubernetes集群,进行租户注册。
26、第五方面,提出一种电子设备,包括:处理器;以及
27、被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使得所述处理器执行第一方面或者第二方面所述方法的步骤。
28、第六方面,提出一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行第一方面或者第二方面所述方法的步骤。
29、本说明书可以达到至少以下技术效果:
30、本发明方案的多租户资源配置方法,可以为目标租户配置一个或多个命名空间;设置命名空间的权限role,并通过rolebinding将不同权限向目标租户的相应成员用户进行授权;设置命名空间的资源定义,建立目标租户的相应成员用户与命名空间的相应资源之间的对应关系。本发明方案的多租户管理方法,首先创建租户管理自定义资源文件crd;在租户管理自定义资源文件crd中,定义租户属性信息、工作组以及与租户对应的一个或多个命名空间;所述工作组包括租户的成员用户信息;提交租户管理自定义资源文件crd至kubernetes集群,进行租户注册。本发明方案将kubernetes租户与命名空间解耦合,可实现kubernetes资源与租户之间的灵活配置。
1.一种面向kubernetes集群的多租户资源配置方法,其特征在于,包括:
2.根据权利要求1所述的面向kubernetes集群的多租户资源配置方法,其特征在于,还包括:
3.根据权利要求2所述的面向kubernetes集群的多租户资源配置方法,其特征在于,所述命名空间的资源定义包括pod、service、persistentvolumeclaim中的一项或多项。
4.一种面向kubernetes集群的多租户管理方法,其特征在于,包括:
5.根据权利要求4所述的面向kubernetes集群的多租户管理方法,其特征在于,当租户注册成功后,还包括:
6.根据权利要求5所述的面向kubernetes集群的多租户管理方法,其特征在于,每个租户具有至少1个租户管理员,所述租户管理员具有当前租户的全部命名空间的全部权限;和/或,设置当前租户的资源配额,以使当前租户的全部命名空间的资源配额不超过当前租户的资源配额。
7.一种面向kubernetes集群的多租户资源配置装置,其特征在于,包括:
8.一种面向kubernetes集群的多租户管理装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行权利要求1至6任一项所述方法的步骤。