Yaron Rosenbaum created JCLOUDS-861:
---------------------------------------

             Summary: 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)

Reply via email to