K8s集群安装Devops 朴灿烈づ我的快乐病毒、 2024-04-06 09:26 25阅读 0赞 1. 以 admin 身份登录控制台,点击左上⻆的平台管理,选择集群管理。 ![在这里插入图片描述][245bd9c67c194e24bd81d6b421b57586.png] 2. 点击⾃定义资源 CRD,在搜索栏中输⼊ clusterconfiguration ,点击搜索结果查看其详细⻚⾯。 信息 ⾃定义资源定义(CRD)允许⽤户在不增加额外 API 服务器的情况下创建⼀种新的资源类型,⽤户可以像使⽤其他 Kubernetes 原⽣对象⼀样使⽤这些⾃定义资源。 1. 在资源列表中,点击 ks-installer 右边的三个点,选择编辑配置⽂件 ![在这里插入图片描述][172cc9941ddd467ca2134fb5f5a8c77d.png] 搜索到资源以后点进去 ![在这里插入图片描述][d8d5b0b9b57e4acd898b30600d1ecd96.png] ![在这里插入图片描述][cdb46949cc414ef8828b350a9cd9d41a.png] 4. 在该 YAML ⽂件中,搜寻到 devops ,将 enabled 的 false 改为 true 。完成后,点击右下⻆的更新,保存配置。 ![在这里插入图片描述][0d189b3559ba4e52af8c150241b7e408.png] 等待大概两分钟左右,通过`kubectl get pods --all-namespaces` 会出现devops的组件安装成功 ![在这里插入图片描述][3fc3a4fe0cae46c3ba4498aa0c6f5be5.png] 1. 您可以使⽤ Web Kubectl ⼯具执⾏以下命令来检查安装过程: kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{ .items[0].metadata.name}') -f ![在这里插入图片描述][aa4e1c0ab6034f7ea69fb59fcab326a0.png] 1. 验证组件的安装 进⼊服务组件,检查 DevOps 的状态,可以看到如下类似图⽚: kubectl get pod -n kubesphere-devops-system ![在这里插入图片描述][afe17134aacd47a5afe89fb45fe3e617.png] 当然也可以在这里查看。![在这里插入图片描述][d9b43419b8f84c628edef8c0f820547a.png] 4、企业空间、项⽬、帐户和⻆⾊ **架构** KubeSphere 的多租户系统分三个层级,即群集、企业空间和项⽬。KubeSphere 中的项⽬等同于Kubernetes 的命名空间。 您需要创建⼀个新的企业空间进⾏操作,⽽不是使⽤系统企业空间,该企业空间中运⾏着系统资源,绝⼤部分仅供查看。出于安全考虑,强烈建议给不同的租户授予不同的权限在企业空间中进⾏协作。 您可以在⼀个 KubeSphere 集群中创建多个企业空间,每个企业空间下可以创建多个项⽬。 KubeSphere 为每个级别默认设有多个内置⻆⾊。此外,您还可以创建拥有⾃定义权限的⻆⾊。 KubeSphere 多层次结构适⽤于具有不同团队或组织以及每个团队中需要不同⻆⾊的企业⽤户。 ![在这里插入图片描述][479b5289bb2b42f38c783dd366361b2a.png] 动⼿实验 ![在这里插入图片描述][f914896d1d6b4b9cb3eae8ebcfb938df.png] 步骤 1:创建帐户 安装 KubeSphere 之后,您需要向平台添加具有不同⻆⾊的⽤户,以便他们可以针对⾃⼰授权的资源在不同的层级进⾏⼯作。⼀开始,系统默认只有⼀个帐户 admin ,具有 platform-admin ⻆⾊。在本步骤中,您将创建⼀个帐户 user-manager ,然后使⽤ user-manager 创建新帐户。 1. 使⽤默认帐户和密码 ( admin/P@88w0rd ) 以 admin 身份登录 Web 控制台。 提示 出于安全考虑,强烈建议您在⾸次登录控制台时更改密码。若要更改密码,在右上⻆的下拉菜单中选择个⼈设置,在密码设置中设置新密码,您也可以在个⼈设置中修改控制台语⾔。 ![在这里插入图片描述][16251273016d4e3ea7b1725c3acfda34.png] 2. 登录控制台后,点击左上⻆的平台管理,然后选择访问控制。 ![在这里插入图片描述][26ef91fb3a4a4f9a809c9ce2475262b1.png] 帐户⻆⾊中,有如下所示四个可⽤的内置⻆⾊。接下来要创建的第⼀个帐户将被分配 usersmanager ⻆⾊。 ![在这里插入图片描述][c4cb6b3893824a5f8405cc27ea6c1744.png] 备注 内置⻆⾊由 KubeSphere ⾃动创建,⽆法编辑或删除。 3. 在帐户管理中,点击创建。在弹出窗⼝中,提供所有必要信息(带有\*标记),然后在⻆⾊字段选择 users-manager 。请参考下图示例 ![在这里插入图片描述][6cebaf1dbba546e6b6fa5e6fdd53b2b7.png] 完成后,点击确定。新创建的帐户将显示在帐户管理中的帐户列表中。 1. 切换帐户使⽤ user-manager 重新登录,创建如下四个新帐户,这些帐户将在其他的教程中使⽤。 提示 帐户登出请点击右上⻆的⽤户名,然后选择登出。 ![在这里插入图片描述][f662af8e13a44dd2a8d8d4bf1193bf42.png] 2. 查看创建的四个帐户。 ![在这里插入图片描述][33f64a37ec234b548ed95415d428b66d.png] 步骤 2:创建企业空间 在此步骤中,您需要使⽤上⼀个步骤中创建的帐户 ws-manager 创建⼀个企业空间。作为管理项⽬、DevOps ⼯程和组织成员的基本逻辑单元,企业空间是 KubeSphere 多租户系统的基础。 1. 以 ws-manager 身份登录 KubeSphere,它具有管理平台上所有企业空间的权限。点击左上⻆的平台管理,选择访问控制。在企业空间中,可以看到仅列出了⼀个默认企业空间 systemworkspace ,即系统企业空间,其中运⾏着与系统相关的组件和服务,您⽆法删除该企业空间。 ![在这里插入图片描述][f496d556f3c348b5967c546f737e85e3.png] 2. 点击右侧的创建,将新企业空间命名为 demo-workspace ,并将⽤户 ws-admin 设置为企业空间管理员,如下图所示: ![在这里插入图片描述][0475c1d0984d402f8cabc5cbadcde6a1.png] 完成后,点击创建。 备注 如果您已启⽤多集群功能,您需要为企业空间分配⼀个或多个可⽤集群,以便项⽬可以在集群中创建。 1. 登出控制台,然后以 ws-admin 身份重新登录。在企业空间设置中,选择企业成员,然后点击邀请成员。 ![在这里插入图片描述][e09d12887f824c7d827cdf9042d552fd.png]4. 邀请 project-admin 和 project-regular 进⼊企业空间,分别授予他们 workspace-selfprovisioner 和 workspace-viewer ⻆⾊。 备注 实际⻆⾊名称的格式: - 。例如,在名为 demo-workspace 的企业空间中,⻆⾊ viewer 的实际⻆⾊名称为 demo-workspace-viewer 。 ![在这里插入图片描述][c2bb7bd381e54edf9c20b83c48f5eb9d.png] 4. 将 project-admin 和 project-regular 都添加到企业空间后,点击确定。在企业成员中,您可以看到列出的三名成员。 ![在这里插入图片描述][98541ee4232345479d1462444c1658e5.png] 步骤 3:创建项⽬ 在此步骤中,您需要使⽤在上⼀步骤中创建的帐户 project-admin 来创建项⽬。KubeSphere 中的项 ⽬与 Kubernetes 中的命名空间相同,为资源提供了虚拟隔离。有关更多信息,请参⻅[命名空间][Link 1]。 1. 以 project-admin 身份登录 KubeSphere,在项⽬管理中,点击创建。 ![在这里插入图片描述][21c09d4faf2a4084aded1b76332922c6.png] 2. 输⼊项⽬名称(例如 demo-project ),然后点击确定完成,您还可以为项⽬添加别名和描述。 ![在这里插入图片描述][d81dffa109bb4add8bb7d009ff8f9b80.png]3. 在项⽬管理中,点击刚创建的项⽬查看其详细信息。 ![在这里插入图片描述][395221ae0fa349658c71f7744c131f9d.png] 3. 在项⽬的概览⻚⾯,默认情况下未设置项⽬配额。您可以点击设置并根据需要指定资源请求和限制(例如:CPU 和内存的限制分别设为 1 Core 和 1000 Gi)。 ![在这里插入图片描述][fa132b2921a944e0accce429a5c4c68c.png] ![在这里插入图片描述][9f0c4a2893b947e088c114d40dc495fb.png] 1. 邀请 project-regular ⾄该项⽬,并授予该⽤户 operator ⻆⾊。请参考下图以了解具体步骤。 ![在这里插入图片描述][79b24c80e419434f98144f858aca2cbf.png] 具有 operator ⻆⾊的⽤户是项⽬维护者,可以管理项⽬中除⽤户和⻆⾊以外的资源。 6. 在创建路由(即 Kubernetes 中的 Ingress)之前,需要启⽤该项⽬的⽹关。⽹关是在项⽬中运⾏的 NGINX Ingress 控制器。若要设置⽹关,请转到项⽬设置中的⾼级设置,然后点击设置⽹关。此步骤中仍使⽤帐户 project-admin 。 ![在这里插入图片描述][d7665b3e6f054db797204c22649e2bb3.png] 7. 选择访问⽅式 NodePort,然后点击保存。 ![在这里插入图片描述][e57eecf6cba24ae2b0d78d6f21921cd8.png] 1. 在外⽹访问下,可以在⻚⾯上看到⽹关地址以及 http/https 的端⼝ 如果要使⽤ LoadBalancer 暴露服务,则需要使⽤云⼚商的 LoadBalancer 插件。如果您的Kubernetes 集群在裸机环境中运⾏,建议使⽤ Porter 作为 LoadBalancer 插件。 ![在这里插入图片描述][507ee44ae98142959b8acbe7d98f4deb.png] 步骤 4:创建⻆⾊ 完成上述步骤后,您已了解可以为不同级别的⽤户授予不同⻆⾊。先前步骤中使⽤的⻆⾊都是KubeSphere 提供的内置⻆⾊。在此步骤中,您将学习如何创建⾃定义⻆⾊以满⾜⼯作需求。 1. 再次以 admin 身份登录控制台,然后转到访问控制。 2. 帐户⻆⾊中列出了四个系统⻆⾊,⽆法删除或编辑。点击创建并设置⻆⾊标识符。在本示例将创建⼀个名为 roles-manager 的⻆⾊。 ![在这里插入图片描述][4e3d636888b5437f800bbb88c0a32e6a.png] 建议您输⼊⻆⾊说明解释此⻆⾊的⽤途。此处创建的⻆⾊将仅负责⻆⾊管理,包括添加和删除⻆⾊。 点击编辑权限继续 3 在访问控制中,选择该⻆⾊所拥有的权限。例如,本示例选择帐户查看、⻆⾊管理和⻆⾊查看。点击确定完成创建 ![在这里插入图片描述][129e33a03a8a42fe96b88766624abcea.png] 某些权限依赖于其他权限。要选择从属的权限,必须选择其依赖的权限。 1. 新创建的⻆⾊将列于帐户⻆⾊中,可以点击右侧的三个点对其进⾏编辑。 ![在这里插入图片描述][d7a25276729d4b1fa5e2e724aff1184f.png] 5. 在帐户管理中,添加⼀个新帐户并授予其 roles-manager ⻆⾊,您也可以通过编辑将现有帐户的⻆⾊更改为 roles-manager 。 ![在这里插入图片描述][4e083485c8d14f00829de0a632cf1397.png] 备注 roles-manager 的⻆⾊与 users-manager 重叠,⽽后者还可以进⾏⽤户管理。本示例仅⽤于演示⽬的,您可以根据需要创建⾃定义⻆⾊。 步骤 5:创建 DevOps ⼯程 若要创建 DevOps ⼯程,需要预先安装 KubeSphere DevOps 系统,该系统是个可插拔的组件,提供CI/CD 流⽔线、Binary-to-Image 和 Source-to-Image 等功能。有关如何启⽤ DevOps 的更多信息,请参⻅ [KubeSphere DevOps 系统][KubeSphere DevOps] 1. 以 project-admin 身份登录控制台,在 DevOps ⼯程中,点击创建。 ![在这里插入图片描述][ce1f93b13a114e049c94ac209048e050.png] 2. 输⼊ DevOps ⼯程名称(例如 demo-devops ),然后点击确定,也可以为该⼯程添加别名和描述。 ![在这里插入图片描述][cde13cb0088b4a23bb43b36632326b86.png] 3. 在 DevOps ⼯程中,点击刚创建的⼯程查看其详细信息 ![在这里插入图片描述][d4ce44b923ce49ddb13e31a47534fd8f.png] 4. 转到⼯程管理,然后选择⼯程成员。点击邀请成员授予 project-regular ⽤户 operator 的⻆⾊,允许其创建流⽔线和凭证。 ![在这里插入图片描述][772387687f2a48a38caf08d8c63681cb.png] ⾄此,您已熟悉 KubeSphere 的多租户管理系统。在其他教程中, project-regular 帐户还将⽤于演示如何在项⽬或 DevOps ⼯程中创建应⽤程序和资源 [245bd9c67c194e24bd81d6b421b57586.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/57e32c78117b45c198b520ce2cf57e70.png [172cc9941ddd467ca2134fb5f5a8c77d.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/6739bcb53aab4cf39d2b686ba56554e5.png [d8d5b0b9b57e4acd898b30600d1ecd96.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/05f23cdf69234f37aef063485172d51a.png [cdb46949cc414ef8828b350a9cd9d41a.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/80de88d2bad5471bb9b299493f1130ea.png [0d189b3559ba4e52af8c150241b7e408.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/615e90813475480db026e59de8068104.png [3fc3a4fe0cae46c3ba4498aa0c6f5be5.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/0f4aa5a8b45d4ff194524b5fe7878593.png [aa4e1c0ab6034f7ea69fb59fcab326a0.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/4efc8a91a73b4500ba50544019cc593f.png [afe17134aacd47a5afe89fb45fe3e617.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/bace9b4b3ca242999e9d9e059a9388ea.png [d9b43419b8f84c628edef8c0f820547a.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/304c473eb1db4580841d6a66186a54ec.png [479b5289bb2b42f38c783dd366361b2a.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/6b10770d2de44215b31173714d8749af.png [f914896d1d6b4b9cb3eae8ebcfb938df.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/6dd33af9af074632843526429fcafb1e.png [16251273016d4e3ea7b1725c3acfda34.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/da41dbb02917472d86b2fe9bea9b08bf.png [26ef91fb3a4a4f9a809c9ce2475262b1.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/ac681f90a236441ebd7c54c74999dd49.png [c4cb6b3893824a5f8405cc27ea6c1744.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/242b09c1d749464499ca452ec75b7416.png [6cebaf1dbba546e6b6fa5e6fdd53b2b7.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/4a1b992cdc3f4a2fa1fb26010c951ba8.png [f662af8e13a44dd2a8d8d4bf1193bf42.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/f1711684aea04b9ba3d4b9bd2f7124ca.png [33f64a37ec234b548ed95415d428b66d.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/817bec8f574348359255c95a9e716a98.png [f496d556f3c348b5967c546f737e85e3.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/e7b5959636a045b79f8d41bc0ab9bc46.png [0475c1d0984d402f8cabc5cbadcde6a1.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/a772277a280443b18a674f064c00b7ae.png [e09d12887f824c7d827cdf9042d552fd.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/4c411e82ef4b41b4a2db3a1b1c37c406.png [c2bb7bd381e54edf9c20b83c48f5eb9d.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/40194bad5fce44389ef2322793e51f64.png [98541ee4232345479d1462444c1658e5.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/c366d91b994640baa3691b0348cb932c.png [Link 1]: https://kubernetes.io/zh/docs/concepts/overview/working-with-objects/namespaces/ [21c09d4faf2a4084aded1b76332922c6.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/2410645986194115ae650b819939fa3a.png [d81dffa109bb4add8bb7d009ff8f9b80.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/6766738f7ed4499db2e7bfb0ff3779fc.png [395221ae0fa349658c71f7744c131f9d.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/c80860f1b26545a19efe20bfb99c8b33.png [fa132b2921a944e0accce429a5c4c68c.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/a987b2959e824ed19a0ae59e3f6624dc.png [9f0c4a2893b947e088c114d40dc495fb.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/7027c44d5bcc43bf9737f5502c2dbc9f.png [79b24c80e419434f98144f858aca2cbf.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/8a82980a341843bbbccff9ab1dc0e994.png [d7665b3e6f054db797204c22649e2bb3.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/9aaa656afb3f47799f1d6191199c0a32.png [e57eecf6cba24ae2b0d78d6f21921cd8.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/a2c12fbfd9b54265a564e60ebfc16e31.png [507ee44ae98142959b8acbe7d98f4deb.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/7af3c08b29824c0aaa117c493a8c6e6b.png [4e3d636888b5437f800bbb88c0a32e6a.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/da716552314f4db7ace832fbc587af4c.png [129e33a03a8a42fe96b88766624abcea.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/331f43e7ed2f41d2b24f3123ac942eef.png [d7a25276729d4b1fa5e2e724aff1184f.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/3c0cdfdadd42479f9464c8cd4b36d354.png [4e083485c8d14f00829de0a632cf1397.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/fdc834e41a8b48219b46d56e94f4a480.png [KubeSphere DevOps]: https://kubesphere.com.cn/docs/pluggable-components/devops/ [ce1f93b13a114e049c94ac209048e050.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/119b869f61e445e78cf5b29528638cb6.png [cde13cb0088b4a23bb43b36632326b86.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/33ec936513fc4e3e8e88b25a5c3e2857.png [d4ce44b923ce49ddb13e31a47534fd8f.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/a634babb1a474b93bb13a99b275eb332.png [772387687f2a48a38caf08d8c63681cb.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/06/e113dd97f2cf44ac90a1272c44b856f1.png
还没有评论,来说两句吧...