安装 Alauda DevOps
本文档提供了安装 Alauda DevOps 的详细步骤。
目录
前提条件Namespace 安全策略要求安装 Operator部署位置操作步骤Katanomi 参数说明FAQ由于只读根文件系统导致 Katanomi Pod 无法启动:/cpaas 目录不可写部署 Katanomi 时如何配置自定义 ImagePullSecret前提条件
请确保在继续之前已上传 Alauda DevOps v3 operator。
有关上传 operator 的更多信息,请参阅 Uploading Operators
Namespace 安全策略要求
-
Katanomi 仅支持创建一个实例。该实例可以部署到任意 namespace,但必须满足以下条件:
- namespace 资源充足
- namespace 配置为特权安全策略
-
Katanomi Operator 需要 namespace 使用特权安全策略配置才能正常运行。此要求源于该组件对特权容器和 hostPath volume 挂载的依赖。
根本原因:Katanomi Operator 组件需要特权容器访问权限和 hostPath volume 挂载(audit log 目录)才能正常运行:
- 特权容器:多个 Katanomi Operator 部署使用了
privileged: truesecurity context:apiserver deployment- API server 部署需要privileged: true,用于对 audit log 目录执行chownapi deployment- API 部署使用privileged: true,用于对 audit log 目录执行chowndevops-api deployment- DevOps API 部署需要privileged: true,用于对 audit log 目录执行chownbuild-image-buildkit-v1tasks - 构建任务显式使用privileged: true,以支持 container image 构建能力
- 特权容器:多个 Katanomi Operator 部署使用了
安装 Operator
进入平台的 Administrator -> Marketplace -> OperatorHub 页面,搜索 Alauda DevOps v3,然后单击 operator 卡片进入 operator 详情页。
单击 Install 安装 operator。
部署位置
在 Global Cluster 中部署 Katanomi 实例。Business Cluster 可按需部署实例用于 CI/CD。
操作步骤
创建 Katanomi 实例
仅支持一个 Katanomi 实例。
-
Global Cluster:部署在
cpaas-systemnamespace 中。将ExternalURL设置为globalcluster 的Platform URL,并将Service.Type设置为Ingress。 -
Business Cluster:可以部署在除
cpaas-system之外的任意 namespace 中。
-
登录
Alauda Container Platform平台。 -
进入
Platform Management下的 Clusters 选项卡。 -
选择已部署的 cluster,然后单击 CLI Tools。
-
创建 Katanomi 实例(可根据需要调整参数)
global cluster
business cluster
- 等待 DevOps 实例就绪
CI/CD 功能准备
在开始使用 Alauda DevOps 的构建和发布流水线功能之前,平台管理员需要先完成一些准备工作。
请参考部署 Alauda DevOps v3 后平台内的文档:<Platform URL>/console-devops-docs/en/devops-initialization/cicd/init/
Katanomi 参数说明
FAQ
由于只读根文件系统导致 Katanomi Pod 无法启动:/cpaas 目录不可写
Katanomi 需要对宿主机上的 /cpaas 目录具有写入权限,以存储 audit logs。如果 Pod 无法向该目录写入,则会启动失败。
要解决此问题,可以配置其他 audit log 存储路径。例如:
该配置会让 Katanomi 组件使用 /tmp/audit 作为 audit log 存储路径,从而确保其可兼容强制使用只读根文件系统的环境。可根据安全和运维要求调整该路径。
部署 Katanomi 时如何配置自定义 ImagePullSecret
要为 Katanomi 实例指定自定义 ImagePullSecret,请添加以下配置:
该配置可确保 Katanomi 在从私有 registry 拉取 container images 时使用指定的 ImagePullSecret。请将 imagePullSecretName 替换为您预先创建的、包含所需 registry 凭证的 Kubernetes secret 名称。