通过EC2插件在Jenkins主站和从站之间建立连接时,身份验证失败

时间:2016-09-06 22:01:20

标签: jenkins amazon-ec2 continuous-integration jenkins-plugins

在将Jenkins master与“on-demand”slave ec2实例连接时,设置ec2-plugin时遇到问题。 这是詹金斯的日志:

INFO: Connecting to <EC2_PUBLIC_DNS> on port 22, with timeout 10000.
Sep 06, 2016 9:54:53 PM null
INFO: Connected via SSH.
Sep 06, 2016 9:54:54 PM null
WARNING: Authentication failed. Trying again...
Sep 06, 2016 9:55:24 PM null
INFO: Authenticating as docker-client
Sep 06, 2016 9:55:25 PM null
INFO: Connecting to <EC2_PUBLIC_DNS> on port 22, with timeout 10000.
Sep 06, 2016 9:55:25 PM null
INFO: Connected via SSH.
Sep 06, 2016 9:55:26 PM null

另一方面,我可以通过ssh命令从Jenkins master连接到slave,反之亦然,没有任何问题。 知道可能是什么问题吗?

提前致谢, 巴克尔

1 个答案:

答案 0 :(得分:0)

经过长时间的调查后发现问题是我的unix用户docker-client没有公共ssh密钥(来自密钥对):

/home/docker-client/.ssh/authorized_keys

但是它已经在

/home/ubuntu/.ssh/authorized_keys

在Jenkins的ec2-plugin配置部分,我指定了pem key(来自keypair),但我也尝试连接到docker-client(而不是ubuntu)。 即使我在jenkins master和docker-client用户之间进行了无密码访问,但它没有优先权并且使用了pem密钥(从现在不明显的原因没有成功)