Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
None
-
None
Description
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.
Attachments
Issue Links
- relates to
-
JCLOUDS-911 Jclouds cannot create CentOS in Google Compute Engine
- Resolved