如何在具有持久卷的 EKS 集群之上设置可扩展的 Jenkins?

How to setup scalable Jenkins on top of a EKS Cluster with persistent Volumes?

我坚持在 EKS 集群上设置可扩展的 Jenkins。我在本地系统上的 Minikube k8s 上使用 Jenkins docker 从节点处理额外负载。但是当我尝试在 EKS 上设置相同的设置时 无法为 运行 作业启动 docker 从属节点。如果有人在 EKS 上做同样的事情,请分享链接、想法或 k8s 清单。

根据你的描述,如果你在 EKS installed/configured 上有 Jenkins "master",我无法理解清楚。假设您已经通过 helm 或 "yaml" 安装了 Jenkins,并且您可以从 UI.

访问它

下一步将是在 Jenkins 中安装一个名为“Kubernetes”的插件。此插件旨在在 Kubernetes 集群(Jenkins slaves/nodes)之上实现 Jenkins 扩展。

安装插件后,您必须对其进行配置。

转到: 管理 Jenkins -> 配置系统 -> 云 -> Kubernetes

  1. Nr.1 是您的 Pod 的名称(您可以随意取一个名称)
  2. Nr.2 更重要,你必须记住这个名称标签,因为你将在 Jenkinsfile 中使用它来调用这个 pod/slave 模板。
  3. Nr.3 是容器的名称(通过这个名称,您可以指定要在特定 Jenkinsfile 阶段使用的所需容器。
  4. Nr.4 这个容器有一个图像,表现得像 Jenkins slave/node(从 dockerhub 使用)。

在 Jenkinsfile 中调用 Pod/slave 模板的方式如下:

 agent {
   label "jenkins-slave"
    }

以下是将特定 slave/container 模板调用到 Jenkinsfile 中的方法:

steps {
   container('jenkins-slave') {
   }
}

如需更多描述性步骤,请随时 Google "How to install/configure Jenkins slave on EKS" 您将获得许多文章,例如: How to install/configure Jenkins slave on EKS

祝你好运!