You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by "Stuart Hendren (JIRA)" <ji...@apache.org> on 2015/05/06 19:19:01 UTC

[jira] [Commented] (JCLOUDS-861) node creation fails due to ssh failure

    [ https://issues.apache.org/jira/browse/JCLOUDS-861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14530965#comment-14530965 ] 

Stuart Hendren commented on JCLOUDS-861:
----------------------------------------

I think I have the same issue. (On 1.9.0)

I have the default template options (to auto generate a key pair, which on generation calls authorizePublicKey).
However, this then fails to ssh to the box.

I think this might be because it prioritizes this generated key before it has authorized it and it should be using the key in the metadata first, but this is just a guess.

Is there a workaround/fix for this as I can no longer use google compute?

> node creation fails due to ssh failure
> --------------------------------------
>
>                 Key: JCLOUDS-861
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-861
>             Project: jclouds
>          Issue Type: Bug
>          Components: jclouds-labs-google
>            Reporter: Yaron Rosenbaum
>            Priority: Blocker
>
> I am creating CoreOS nodes, and using cloud-init with them. The cloud-init takes a while to process.
> 11:42:32.780 [user thread 3] ERROR jclouds.ssh - << (core:rsa[ssh-agent]@1….2) error acquiring {hostAndPort=1…2:22, loginUser=core, ssh=null, connectTimeout=60000, sessionTimeout=60000} (not retryable): Exhausted available authentication methods
> net.schmizz.sshj.userauth.UserAuthException: Exhausted available authentication methods
> I’ve set the following overrides:
> 		overrides.setProperty(ComputeServiceProperties.POLL_INITIAL_PERIOD, TWENTY_SECONDS);
> 		overrides.setProperty(ComputeServiceProperties.POLL_MAX_PERIOD, TWENTY_SECONDS);
> 		// 18 retries of 15 seconds --> 4.5 min
> 		overrides.setProperty(Constants.PROPERTY_MAX_RETRIES, "6"); 
> 	overrides.setProperty(Constants.PROPERTY_RETRY_DELAY_START, "15");
> These overrides had no effect.
> 		overrides.setProperty("jclouds.ssh.max-retries", "100");
> 		overrides.setProperty("jclouds.ssh.retry-auth", "true");
> These overrides worked - ssh retries for 100 times, but: the sleep time between retries is 2s (which should be exponential backoff, and configurable) and - eventually locks down the ssh agent for "too many retries"
> (the ssh agent is up, it's only that the ssh key was not installed yet...)
> My workaround is to install ssh keys as part of cloud-init, and then everything works ok, but this is a serious bug, and this workaround will not work in all cases.
> This MAY be related to: https://github.com/jclouds/jclouds-labs-google/pull/118
> PS.
> I setup cloud-init by setting user metadata “user-data”=<the content of the cloud-init.yaml file>.
> cloud-init works, node IS accessible via ssh, and my unit files are up and running.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)