k8smaster 服务器的工作方式类似 worker

k8smaster 服务器的工作方式类似 worker

我使用 Jenkins 将 Spring 项目部署到 Kubernetes。我有 k8smaster 和 3 个工作服务器。它有时会在 k8smaster 服务器下写入 .m2 文件。我该如何防止这种情况?所以我希望它只在工作服务器上写入。

Kubernetes 节点

在此处输入图片描述

我在Jenkins中定义了一个具有特殊名称的标签,这样该作业就不会在主服务器上运行,但它仍然像工作服务器一样工作。 在此处输入图片描述 在此处输入图片描述

Jenkins 代理容器中要挂载的卷列表 在此处输入图片描述

Pod 模板设置 在此处输入图片描述

示例管道

node ("zrgl-label") {
    stage('Checkout'){
        cleanWs()
        withCredentials([gitUsernamePassword(credentialsId: 'zrgl.jenkins')]){
            sh 'git clone -b ..'
        }
    }
    stage('Kubernetes Deployment'){
            container('kubectl'){
                 ...
            }
    }
}

答案1

据我所知,您不喜欢 Jenkins 在 K8S 主服务器上运行作业。如果是这样,我建议不要在 K8S 主服务器上运行 Jenkins。

相关内容