Jenkins掌握在swarm客户端

时间:2017-03-02 01:39:54

标签: jenkins jenkins-pipeline jenkins-slave

我试图在使用swarm客户端的代理中运行管道作业。作业运行正常,但我在日志中收到了很多错误消息,如下所示:

Cannot contact tst_db2: java.io.IOException: Remote call on Channel to /XX.XX.XX.XXX failed

(实际IP地址替换为XX)

在我的观察中,主服务器在等待客户端中运行的脚本时抛出此错误。同样,管道作业运行完全,除了我在管道日志上获得此错误。

以下是我的管道脚本:

pipeline {
    agent none
    stages {
        stage('Recreate DB') {
            agent { label 'tst_db2'}
            steps {
                checkout([$class: 'SubversionSCM', 
                  additionalCredentials: [], 
                  excludedCommitMessages: '', 
                  excludedRegions: '', 
                  excludedRevprop: '', 
                  excludedUsers: '', 
                  filterChangelog: false, 
                  ignoreDirPropChanges: false, 
                  includedRegions: '', 
                  locations: [[credentialsId: 'a84f7197-929a-437e-9aac-ca09fcd4c63a', 
                               depthOption: 'infinity', 
                               ignoreExternalsOption: true, 
                               local: '', 
                               remote: 'svn://XXXXX/XXX/tags/CR/Rebuild_VCRDWD01']], 
                  workspaceUpdater: [$class: 'CheckoutUpdater']])  

                 sh 'Rebuild_VCRDWD01/recreate_db.sh'
            }
        }       
    }
}   

无论如何我们可以摆脱这些错误吗?

环境

詹金斯版本:2.32.2

在Windows Server 2012 R2上运行

AIX 7.1和JDK 8上的Swarm Client 3.3

还引发了Jenkins问题:https://issues.jenkins-ci.org/browse/JENKINS-42428

1 个答案:

答案 0 :(得分:0)

前面提到的故障单中的用户报告说,他们能够通过将Jenkins中的“Pipeline:Nodes and Processes”插件降级为2.8来解决错误 - 可从here获得。这样做我也能摆脱这个问题。不幸的是,我安装了许多依赖于2.10版本的其他插件。我并不热衷于对所有这些进行反向调整,所以我猜你不得不忍受这种烦恼,直到插件维护者得到正式修复。希望很快就会这样。