2. 点击⾃定义资源 CRD;在搜索栏中输⼊ clusterconfiguration ;点击搜索结果查看其详细⻚⾯。
信息
⾃定义资源定义;CRD;允许⽤户在不增加额外 API 服务器的情况下创建⼀种新的资源类型;⽤户可以像使⽤其他 Kubernetes 原⽣对象⼀样使⽤这些⾃定义资源。
在资源列表中;点击 ks-installer 右边的三个点;选择编辑配置⽂件
4. 在该 YAML ⽂件中;搜寻到 devops ;将 enabled 的 false 改为 true 。完成后;点击右下⻆的更新;保存配置。
等待大概两分钟左右;通过kubectl get pods --all-namespaces
会出现devops的组件安装成功
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l
app=ks-install -o jsonpath=;{.items[0].metadata.name};) -f
验证组件的安装kubectl get pod -n kubesphere-devops-system
当然也可以在这里查看。
4、企业空间、项⽬、帐户和⻆⾊
架构
KubeSphere 的多租户系统分三个层级;即群集、企业空间和项⽬。KubeSphere 中的项⽬等同于Kubernetes 的命名空间。
您需要创建⼀个新的企业空间进⾏操作;⽽不是使⽤系统企业空间;该企业空间中运⾏着系统资源;绝⼤部分仅供查看。出于安全考虑;强烈建议给不同的租户授予不同的权限在企业空间中进⾏协作。
您可以在⼀个 KubeSphere 集群中创建多个企业空间;每个企业空间下可以创建多个项⽬。
KubeSphere 为每个级别默认设有多个内置⻆⾊。此外;您还可以创建拥有⾃定义权限的⻆⾊。
KubeSphere 多层次结构适⽤于具有不同团队或组织以及每个团队中需要不同⻆⾊的企业⽤户。
动⼿实验
步骤 1;创建帐户
安装 KubeSphere 之后;您需要向平台添加具有不同⻆⾊的⽤户;以便他们可以针对⾃⼰授权的资源在不同的层级进⾏⼯作。⼀开始;系统默认只有⼀个帐户 admin ;具有 platform-admin ⻆⾊。在本步骤中;您将创建⼀个帐户 user-manager ;然后使⽤ user-manager 创建新帐户。
使⽤默认帐户和密码 ( admin/P;88w0rd ) 以 admin 身份登录 Web 控制台。
2. 登录控制台后;点击左上⻆的平台管理;然后选择访问控制。
帐户⻆⾊中;有如下所示四个可⽤的内置⻆⾊。接下来要创建的第⼀个帐户将被分配 usersmanager ⻆⾊。
备注
内置⻆⾊由 KubeSphere ⾃动创建;⽆法编辑或删除。
3. 在帐户管理中;点击创建。在弹出窗⼝中;提供所有必要信息;带有*标记;;然后在⻆⾊字段选择 users-manager 。请参考下图示例
完成后;点击确定。新创建的帐户将显示在帐户管理中的帐户列表中。
步骤 2;创建企业空间
在此步骤中;您需要使⽤上⼀个步骤中创建的帐户 ws-manager 创建⼀个企业空间。作为管理项⽬、DevOps ⼯程和组织成员的基本逻辑单元;企业空间是 KubeSphere 多租户系统的基础。
以 ws-manager 身份登录 KubeSphere;它具有管理平台上所有企业空间的权限。点击左上⻆的平台管理;选择访问控制。在企业空间中;可以看到仅列出了⼀个默认企业空间 systemworkspace ;即系统企业空间;其中运⾏着与系统相关的组件和服务;您⽆法删除该企业空间。
完成后;点击创建。
备注
如果您已启⽤多集群功能;您需要为企业空间分配⼀个或多个可⽤集群;以便项⽬可以在集群中创建。
备注
实际⻆⾊名称的格式; - 。例如;在名为 demo-workspace 的企业空间中;⻆⾊ viewer 的实际⻆⾊名称为 demo-workspace-viewer 。
4. 将 project-admin 和 project-regular 都添加到企业空间后;点击确定。在企业成员中;您可以看到列出的三名成员。
步骤 3;创建项⽬
在此步骤中;您需要使⽤在上⼀步骤中创建的帐户 project-admin 来创建项⽬。KubeSphere 中的项
⽬与 Kubernetes 中的命名空间相同;为资源提供了虚拟隔离。有关更多信息;请参⻅命名空间。
3. 在项⽬管理中;点击刚创建的项⽬查看其详细信息。
3. 在项⽬的概览⻚⾯;默认情况下未设置项⽬配额。您可以点击设置并根据需要指定资源请求和限制;例如;CPU 和内存的限制分别设为 1 Core 和 1000 Gi;。
具有 operator ⻆⾊的⽤户是项⽬维护者;可以管理项⽬中除⽤户和⻆⾊以外的资源。
6. 在创建路由;即 Kubernetes 中的 Ingress;之前;需要启⽤该项⽬的⽹关。⽹关是在项⽬中运⾏的 nginx Ingress 控制器。若要设置⽹关;请转到项⽬设置中的⾼级设置;然后点击设置⽹关。此步骤中仍使⽤帐户 project-admin 。
7. 选择访问⽅式 nodePort;然后点击保存。
如果要使⽤ LoadBalancer 暴露服务;则需要使⽤云⼚商的 LoadBalancer 插件。如果您的Kubernetes 集群在裸机环境中运⾏;建议使⽤ Porter 作为 LoadBalancer 插件。
步骤 4;创建⻆⾊
完成上述步骤后;您已了解可以为不同级别的⽤户授予不同⻆⾊。先前步骤中使⽤的⻆⾊都是KubeSphere 提供的内置⻆⾊。在此步骤中;您将学习如何创建⾃定义⻆⾊以满⾜⼯作需求。
3 在访问控制中;选择该⻆⾊所拥有的权限。例如;本示例选择帐户查看、⻆⾊管理和⻆⾊查看。点击确定完成创建
某些权限依赖于其他权限。要选择从属的权限;必须选择其依赖的权限。
5. 在帐户管理中;添加⼀个新帐户并授予其 roles-manager ⻆⾊;您也可以通过编辑将现有帐户的⻆⾊更改为 roles-manager 。
备注
roles-manager 的⻆⾊与 users-manager 重叠;⽽后者还可以进⾏⽤户管理。本示例仅⽤于演示⽬的;您可以根据需要创建⾃定义⻆⾊。
步骤 5;创建 DevOps ⼯程
若要创建 DevOps ⼯程;需要预先安装 KubeSphere DevOps 系统;该系统是个可插拔的组件;提供CI/CD 流⽔线、Binary-to-Image 和 Source-to-Image 等功能。有关如何启⽤ DevOps 的更多信息;请参⻅ KubeSphere DevOps 系统
以 project-admin 身份登录控制台;在 DevOps ⼯程中;点击创建。
输⼊ DevOps ⼯程名称;例如 demo-devops ;;然后点击确定;也可以为该⼯程添加别名和描述。
在 DevOps ⼯程中;点击刚创建的⼯程查看其详细信息
转到⼯程管理;然后选择⼯程成员。点击邀请成员授予 project-regular ⽤户 operator 的⻆⾊;允许其创建流⽔线和凭证。
⾄此;您已熟悉 KubeSphere 的多租户管理系统。在其他教程中; project-regular 帐户还将⽤于演示如何在项⽬或 DevOps ⼯程中创建应⽤程序和资源