2015-02-23 69 views
0

我有一个公司网络jenkins服务器。需要使用jenkins ec2插件旋转EC2实例。我给人的印象是,在给予访问权限,秘密密钥和AMI Id后,打开ssh端口22(它的一个linux映像)的安全组。我将能够将ec2实例作为奴隶连接。但它抛出低于错误。当地jenkins连接VPC ec2 instanse

Connecting to 172.30.0.204 on port 22, with timeout 10000. 
Waiting for SSH to come up. Sleeping 5. 
Connecting to 172.30.0.204 on port 22, with timeout 10000. 
Waiting for SSH to come up. Sleeping 5. 
Connecting to 172.30.0.204 on port 22, with timeout 10000. 
Waiting for SSH to come up. Sleeping 5. 
Connecting to 172.30.0.204 on port 22, with timeout 10000. 
Waiting for SSH to come up. Sleeping 5. 
Connecting to 172.30.0.204 on port 22, with timeout 10000 

我能够使用公共ip从本地机器连接ec2实例。我只能看到jenkins试图使用私人IP访问。自vpc以来,我已经给出了一个子网ID。 jenkins或VPC中需要更改的任何设置?

问候, 阿希什

+0

你可以手动ssh到主服务器,然后ssh到从服务器?它们是否在同一个VPC中,并且您的安全组是否设置正确? – tedder42 2015-02-23 19:26:06

+0

我在这里面临同样的问题。服务器没有任何问题,只是插件强制Jenkins连接私有IP。 我发现此票:https://issues.jenkins-ci.org/browse/JENKINS-19943状态已解决,但似乎不是。 就像参考一样,我没有使用默认的VPC。 – gjoris 2015-11-12 13:02:43

回答

0

OK,我想我想通了。

为使插件正常工作,您需要有一个默认VPC。我删除了所有默认的VPC,因为我在一开始就错误地认为需要让它们继续运行。

默认VPC的后果似乎是公共DNS附加到在该默认VPC中启动的实例。 I 可能被误认为只有默认的VPC这么做(可能有一个设置我还没有发现VPC自动分配公有DNS),但无论如何,公共DNS只能添加到我的服务器在默认VPC的设置中。而且,插件的回退似乎是尝试连接到私有IP。当您查看实例的设置时,您只能看到公共DNS和私有IP的输入字段 - 而不是公共IP。

一旦我把它弄清楚了,一切都会正确地旋转起来。

那么,在你删除你的后,你如何再次获得默认的VPC?那么,一般来说,有两种选择:

  1. 您注册一个新帐户。这是最简单的,但当然,你得到一个新的帐户。
  2. 您可以查看https://aws.amazon.com/premiumsupport/knowledge-center/deleted-default-vpc/,查看AWS为您提供默认VPC的过程。

我现在基本上是第一个选择。

希望这会有所帮助!