当前位置:   article > 正文

[云原生专题-48]:Kubesphere云治理-操作-多租户概念概述_云原生 租户的概念

云原生 租户的概念

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/122911019


目录

第1章 多租户管理概述

1.1 Kubesphere在云原生中的位置

1.2 多租户系统官方概述:企业空间、项目、用户和平台角

1.3 多用户系统VS多租户

1.4 多租户 VS 单租户

1.5 多租户专业阐述

第2章 kubesphere多租户系统

2.1 多租户系统的层级

2.2 角色与用户

2.3 授权或邀请

第3章 主要的操作步骤


第1章 多租户管理概述

1.1 Kubesphere在云原生中的位置

1.2 多租户系统官方概述:企业空间、项目、用户和平台角色

https://kubesphere.com.cn/docs/quick-start/create-workspace-and-project/

备注:

多租户功能是kubesphere的基础功能,而不是组件功能,因此,多组合管理不需要安装任何组件。

多租户功能是kubesphere在K8S基础之上,第一个增值功能。

1.3 多用户系统VS多租户

现代软件一般属于多用户的应用,也就是说,同一台机器同一套软件可以为多个用户建立各自的账户,也允许拥有这些账户的用户同时登录这台计算机。这就涉及到计算机用户和资源的管理。简单地说就是多个用户在一个应用系统上可以建立多个用户。Linxu操作系统是多用户分时共享系统,每个用户有自己对Linux操作系统又独立的访问权限。

多租户和多用户是不同的概念,租有临时性的概念,是由使用权,没有所有权。共有云的资源的所有权归云厂商,使用云厂商服务的用户,都是租户,因此kubesphere管理系统中,创建的管理员账号,其实不能算用户账号,而是租户账号。

“租户”相对于“用户“,资源利用率更高。

1.4 多租户 VS 单租户

 单租户系统,就是单一的租户租用全部的资源,如果有多个租户,需要为每个租户创建独立的实例拷贝,包括内存空间、硬盘空间等,而多租户则不同,不需要为每个租户创建独立的实例,多个不同的用户共享相同的底层资源,通过隔离技术确保不同租户之间资源的隔离。

个人打出租车就属于单租户系统,不同的租户需要打不同的出租车实例,而一群人做公共汽车或多人拼车就是多租户系统。

淘宝或京东的系统,就是一个多租户系统,不同的卖家使用同一份云平台,每个卖家就是一个租户,各自的资源是隔离的,且到期不交钱的话,账号就被释放,给其他租户使用。

多“租户”相对于“单租户“,资源利用率进一步提升,多租户是云原生应用程序必然具备的功能。这是为了进一步动态的提升硬件资源和虚拟资源的利用率的一个重要的举措,也是云商上、基于公有云的应用系统降低成本的手段,是公有云赖以存在的重要基础。否则的话,相对于私有云或非云系统,公有云就没有了成本的优势了。

1.5 多租户专业阐述

SaaS领域一般都会涉及到租户的概念。

多租户技术(英语:multi-tenancy technology)或称多重租赁技术,是一种软件架构技术,它是在探讨与实现如何于多用户的环境下共用相同的系统或程序组件,并且仍可确保各用户间数据的隔离性。

多租户简单来说是指一个单独的实例可以为多个用户或组织服务。

多租户技术是使用共用的数据中心,确保以单一系统架构与服务,提供多数客户端相同甚至可定制化的服务,并且仍然可以保障客户的数据隔离。这与Linux系统中,多用户分时共享Linux操作系统相似。

一个支持多租户技术的系统,需要在设计上对它的数据和配置进行虚拟分区,从而使系统的每个租户或称组织都能够使用一个单独的系统实例,并且每个租户都可以根据自己的需求对租用的系统实例进行个性化配置

多租户技术可以实现多个租户之间共享系统实例,同时又可以实现租户的系统实例的个性化定制。通过使用多租户技术可以保证系统共性的部分被共享,个性的部分被单独隔离。通过在多个租户之间的资源复用,运营管理维护资源,有效节省开发应用的成本。而且,在租户之间共享应用程序的单个实例,可以实现当应用程序升级时,所有租户可以同时升级。同时,因为多个租户共享一份系统的核心代码,因此当系统升级时,只需要升级相同的核心代码即可。

目前,各大云平台,都是支持的都租户系统。

第2章 kubesphere多租户系统

2.1 多租户系统的层级

KubeSphere 的多租户系统分三个层级,即集群、企业空间和项目。

其中,KubeSphere中的最底层的项目等同于 Kubernetes 的命名空间,也就是集群、企业空间是构建在K8S的名字空间之上的进一步抽象。

KubeSphere可以为建立多个集群,对应一个集团公司,一个集群下可以建立多个企业空间,对应一个公司,一个企业空间可以建立多个项目,对应公司实际产品线,每个层级的一个实例就是一个workspace,其他与同层次其他实例的资源隔离。如下图所示:

备注:多租户架构与集权企业的架构是一致的。

2.2 角色与用户

每个层次,定了多种角色,如admin,operator,viewer,每个角色有不同的资源访问权限和管理权限,也就是说权限管理是基于角色的。

每个角色,可以创建多个用户实例,相同角色的用户具备相同的权限,用户是最终分配给KubeSphere管理者的账号。

角色权限

集群

platform admin

(平台管理员)

platform user mananger

(用户管理员)

platform regular

(平台普通用户)

workspace mananger

管理集群平台所有资源

管理集群平台内所有用户

在被邀请前,没有任何权限,只查看

创建和管理所有企业空间

企业空间

workspace admin

(企业空间管理员)

workspace self provider

(企业空间自管理)

worksapce regular

workspace viewer

管理指定企业空间中的所有资源

创建和管理项目以及 DevOps 项目,并邀请新成员加入项目。

企业日常管理者

企业日常观察者,查看信息

项目

project-admin

(项目管理员)

project-operator

(项目操作员)

project-viewer

(项目观察员)

创建和管理制定项目以及 DevOps 项目

在指定项目中创建项目工作负载、流水线和其他资源。

只能查看项目的状态信息

2.3 授权或邀请

(1)邀请或授权其他账号进行特定权限的管理。

(2)kubesphere的所有账号在集群级别创建,而账号的角色或职责在企业空间和项目空间时指派。

(3)先创建集群,然后创建企业空间,然后在创建项目。

第3章 主要的操作步骤

step1:admin修改初始密码

admin 身份使用默认帐户和密码 (admin/P@88w0rd) 登录 Web 控制台

srep2:创建集群用户

  • 由admin创建platform user mananger
  • 由platform user mananger创建workspace mananger, 包括集团的boss-big
  • 由platform user mananger创建platform regular, 包括项目管理人员pm-xxx、开发人员dev-xxx、专家big-xxx、各个企业空间的管理员boss-xxx等等用户,此次用户还没有别授权,知识创建了账号而已,在后续会通过其他角色的邀请,称为特定权限的管理者。所有后续的对集群的各种角色都需要在此创建。这个角色就相当于公司的HR, 统一管理公司各个部门,各个项目的所有人员的账号。

step3:创建企业空间

  • 由workspace mananger创建企业空间

step4:指派/邀请企业用户

  • 由workspace mananger邀请step2创建的用户为workspace self provider
  • 由workspace mananger邀请step2创建的用户为worksapce regular等。

step5:创建项目(是部署在云平台上的项目,可以通过Kubesphere部署)

  • 由 workspace self provider(PM)创建项目

step6:指派/邀请项目成员

  • 由workspace self provider邀请项目成员

step7:在项目上部署应用程序

  • 由project-operator的就可以部署应用,这种角色通常包括开发人员、测试人员等等......
  • 至于如何部署微服务应用,请参考后续文章。

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/122911019

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/886849
推荐阅读
相关标签
  

闽ICP备14008679号