跳至主要内容

配置 K8S 集群

翻譯正在進行中本指南目前僅提供簡體中文版本,其他語言版本將在後續補充。

K8S Pipeline 在集群中创建构建 Job,将镜像推送到 Harbor,再按应用部署配置生成并应用 Kubernetes 资源。注册集群只是第一步;至少还要完成 Harbor Config 和 Deployment Template。

1. 注册集群​

进入 Cluster Management → Registered Clusters,点击标题旁的 +:

  1. 填写 Cluster Name 和稳定的 Cluster Code。
  2. Cluster Type 选择 K8S。
  3. Environment 选择 DEV、TEST、STAGING 或 PROD。
  4. 粘贴 kubeconfig,点击 Test Connection。
  5. 测试成功后选择 Default Namespace 和 Allowed Namespaces。
  6. 保存集群。
注册 K8S 集群展示 K8S 类型、环境、kubeconfig、Test Connection、默认 namespace 和允许的 namespace。images/spark-pipeline-k8s-register-01.webp
截图待补充

应用创建环境时只能选择 Allowed Namespaces。修改 kubeconfig 后必须重新 Test Connection,未验证的新内容不能直接保存。

2. 配置 Harbor​

进入该集群的 Harbor Config:

字段说明
Registry Addresshost[:port],不填写协议和仓库路径
Harbor Secret选择 Harbor 类型 Secret
Git Clone Image拉取 Git 源码的镜像,可留空继承系统默认值
Kaniko Image构建并推送容器镜像的执行镜像
Java Builder ImageJava 源码构建镜像
Node.js Builder ImageNode.js 管理构建镜像
Python Builder ImagePython 构建环境镜像

保存后点击 Test Connection。只有登录和 Registry 访问正常,Pipeline 才能稳定推送制品。

K8S Harbor Config展示 Registry、Harbor Secret、Git Clone、Kaniko、Java、Node.js、Python builder image 和连接测试结果。images/spark-pipeline-k8s-harbor-02.webp
截图待补充

3. 按技术栈配置构建缓存​

Java:Maven Config​

在 Maven Config 中可配置:

  • Host Maven .m2 Directory,例如 /home/nfs/storage/m2
  • 可选的 settings.xml

Pipeline 会把宿主机 .m2 目录挂载到构建容器的 /root/.m2。上传 settings.xml 后,它会覆盖同路径配置。共享目录应由集群管理员准备并保证构建节点可访问。

Node.js:NPM Config​

在 NPM Config 中可配置:

  • .npmrc,用于私有 Registry、scope 和认证
  • NPM Cache Host Path,用于 NPM、Yarn、PNPM 缓存

不要把 Token 写进 App 的 Build Command;统一放入受控的 .npmrc 配置。

Maven 与 NPM 集群配置展示 Maven .m2、settings.xml、NPM .npmrc 和缓存路径;Token 必须打码。images/spark-pipeline-k8s-build-cache-03.webp
截图待补充

Python Dockerfile 构建通常不需要额外的集群包管理配置。依赖源、Conda channel 或系统库应在仓库 Dockerfile 中明确声明,使构建可重复。

4. 创建 Deployment Template​

进入 Deployment Templates 创建模板:

  1. 填写模板名称和代码。
  2. 可限制 App Language 为 Java、Node.js 或 Python;留空表示通用。
  3. 配置模板内容和说明。
  4. 保存后,在 App 的 K8S Deployment Configuration 中选择该模板。

模板属于集群。App 侧不能粘贴一份私有 YAML 代替模板,而是用模板加上 App 的工作负载、网络、健康检查、资源、变量和卷配置生成最终清单。

K8S Deployment Template展示模板列表、新建模板、Language 限制和模板内容。images/spark-pipeline-k8s-template-04.webp
截图待补充

5. 可选运行能力​

按应用需求配置:

  • Runtime Variables:集群级变量,App 可在部署环境中覆盖允许的值。
  • Storage Classes / PVC Configs:应用需要持久化卷时使用。
  • Domain Certificates / DNS:需要 HTTPS 和自动 DNS 同步时使用。
  • Management Nodes:证书维护、巡检或 SSH 运维使用,不是普通 Pipeline 构建的必需项。

6. 完成检查​

开始配置 App 前确认:

  • Cluster 状态可连接,目标 namespace 在 Allowed Namespaces 中。
  • Harbor Config 已保存并测试成功。
  • 至少有一个与 App Language 兼容的 Deployment Template。
  • Java 私服需要的 Maven settings、Node.js 私服需要的 .npmrc 已配置。
  • 构建镜像可以从集群拉取,Harbor 账号可以推送目标 repository。

下一步进入创建 App 与关联 Repository。