我的jenkins从节点离线,日志如下:
[06/11/15 09:02:52] [SSH] Opening SSH connection to <ip>.
ERROR: Server rejected the 1 private key(s) for jenkins (credentialId:d7a17c00-1300-4cf3-8cf5-810b3297ebc6/method:publickey)
[06/11/15 09:02:52] [SSH] Authentication failed.
hudson.AbortException: Authentication failed.
at hudson.plugins.sshslaves.SSHLauncher.openConnection(SSHLauncher.java:1178)
at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:701)
at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:696)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
[06/11/15 09:02:52] Launch failed - cleaning up connection
[06/11/15 09:02:52] [SSH] Connection closed.
本人已验证以下内容:
1.位于/var/lib/jenkins-slave/.ssh的Authorized_keys文件具有正确的主服务器公钥。
1.位于/var/lib/jenkins/.ssh的Authorized_keys文件具有正确的主密钥公钥。
- Master的私钥和公钥文件位于/var/lib/jenkins/.ssh文件夹和~/.ssh文件夹中。
我也尝试了“ssh -i .ssh/id_rsa -l jenkins“从主机,但它是要求密码。看起来它不是识别从机。
主机和从机的.ssh文件夹中都有known_hosts文件,里面有什么数据?
如何解决这个问题?
2条答案
按热度按时间1zmg4dgp1#
我最近刚经历过这种痛苦。
我发现,你必须确保.ssh目录有700个权限,jenkins已经读过,id_rsa.pub应该有644个权限(而不是之前建议的755个,这将使文件可执行,这不应该是必需的)。
此外,我发现,如果你有一个基于Windows的奴隶在那里,你必须确保你创建你的密钥没有密码。
egdjgwm82#
SSH生成代理插件更新
插件版本2.854.v7fd446b_337c9需要PEM格式
1.在Jenkins上生成密钥
第一个月
1.将公共密钥复制到代理授权密钥(~/.ssh/授权密钥)
1.将公钥复制到Jenkins凭据