2013-12-21 1 views
4

를 초과했습니다. 문제는 가끔 기계가 오류를 "초과 요청 제한"으로 인해 시작에 실패합니다. 내가 5 번 실패하는 작업을 생각 아래 스택 추적에서 EC2 요청 제한이 나는 많은 AWS EC2 기계 (JClouds으로) 시작 매일 자동화 된 테스트를 실행하고있어 문제

, 5는 실패가 제한됩니다. 아마도이 작업은 jclouds의 메서드 인 describeInstancesInRegion입니까? 왜 실패 했나요?

은 가끔 빈/널 이름을 가진 기계를 시작하는 jclouds 버그가 알고있다. describeInstancesInRegion 호출 다음에 망가질 수 있습니까?

스택 추적 : 당신은이 인스턴스 상태 업데이트에 대한 폴링이 때 너무 자주 요청을하지 jclouds 말할 필요

12/20/13 2:00:26 PM - Cannot retry after server error, **command has exceeded retry limit 5**: [method=public abstract com.google.common.util.concurrent.ListenableFuture org.jclouds.aws.ec2.services.AWSInstanceAsyncClient.**describeInstancesInRegion**(java.lang.String,java.lang.String[])[eu-west-1, [Ljava.lang.String;@5987955b], request=POST https://ec2.eu-west-1.amazonaws.com/ HTTP/1.1] 
12/20/13 2:00:26 PM - << problem customizing node(eu-west-1/i-38cb4677): : Operation failed. org.jclouds.aws.AWSResponseException: request POST https://ec2.eu-west-1.amazonaws.com/ HTTP/1.1 failed with code 503, error: AWSError{requestId='8937a5d2-f17f-4a42-af32-ed02125a73a4', requestToken='null', code='**RequestLimitExceeded**', message='Request limit exceeded.', context='{Response=, Errors=}'} 
12/20/13 2:00:26 PM - at org.jclouds.aws.handlers.ParseAWSErrorFromXmlContent.handleError(ParseAWSErrorFromXmlContent.java:76) 
12/20/13 2:00:26 PM - at org.jclouds.http.handlers.DelegatingErrorHandler.handleError(DelegatingErrorHandler.java:69) 
12/20/13 2:00:26 PM - at org.jclouds.http.internal.BaseHttpCommandExecutorService.shouldContinue(BaseHttpCommandExecutorService.java:180) 
12/20/13 2:00:26 PM - at org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:150) 
12/20/13 2:00:26 PM - at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.invoke(InvokeSyncToAsyncHttpMethod.java:131) 
12/20/13 2:00:26 PM - at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.apply(InvokeSyncToAsyncHttpMethod.java:97) 
12/20/13 2:00:26 PM - at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.apply(InvokeSyncToAsyncHttpMethod.java:58) 
12/20/13 2:00:26 PM - at org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117) 
12/20/13 2:00:26 PM - at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:70) 
12/20/13 2:00:26 PM - at $Proxy67.describeInstancesInRegion(Unknown Source) 
12/20/13 2:00:26 PM - at org.jclouds.ec2.compute.strategy.EC2GetNodeMetadataStrategy.getRunningInstanceInRegion(EC2GetNodeMetadataStrategy.java:68) 
12/20/13 2:00:26 PM - at org.jclouds.aws.ec2.compute.strategy.AWSEC2GetNodeMetadataStrategy.getRunningInstanceInRegion(AWSEC2GetNodeMetadataStrategy.java:56) 
12/20/13 2:00:26 PM - at org.jclouds.ec2.compute.strategy.EC2GetNodeMetadataStrategy.getNode(EC2GetNodeMetadataStrategy.java:60) 
12/20/13 2:00:26 PM - at org.jclouds.compute.predicates.internal.RefreshNodeAndDoubleCheckOnFailUnlessStatusInvalid.refreshOrNull(RefreshNodeAndDoubleCheckOnFailUnlessStatusInvalid.java:60) 
12/20/13 2:00:26 PM - at org.jclouds.compute.predicates.internal.RefreshNodeAndDoubleCheckOnFailUnlessStatusInvalid.refreshOrNull(RefreshNodeAndDoubleCheckOnFailUnlessStatusInvalid.java:40) 
12/20/13 2:00:26 PM - at org.jclouds.compute.predicates.internal.RefreshAndDoubleCheckOnFailUnlessStatusInvalid.apply(RefreshAndDoubleCheckOnFailUnlessStatusInvalid.java:59) 
12/20/13 2:00:26 PM - at org.jclouds.compute.predicates.internal.RefreshAndDoubleCheckOnFailUnlessStatusInvalid.apply(RefreshAndDoubleCheckOnFailUnlessStatusInvalid.java:42) 
12/20/13 2:00:26 PM - at org.jclouds.compute.config.ComputeServiceTimeoutsModule$RetryablePredicateGuardingNull$1.apply(ComputeServiceTimeoutsModule.java:148) 
12/20/13 2:00:26 PM - at org.jclouds.compute.config.ComputeServiceTimeoutsModule$RetryablePredicateGuardingNull$1.apply(ComputeServiceTimeoutsModule.java:143) 
12/20/13 2:00:26 PM - at org.jclouds.compute.config.ComputeServiceTimeoutsModule$RetryablePredicateGuardingNull.apply(ComputeServiceTimeoutsModule.java:160) 
12/20/13 2:00:26 PM - at org.jclouds.util.Predicates2$RetryablePredicate.apply(Predicates2.java:111) 
12/20/13 2:00:26 PM - at org.jclouds.compute.config.ComputeServiceTimeoutsModule$RetryablePredicateGuardingNull.apply(ComputeServiceTimeoutsModule.java:124) 
12/20/13 2:00:26 PM - at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:65) 
12/20/13 2:00:26 PM - at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:121) 
12/20/13 2:00:26 PM - at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:44) 
12/20/13 2:00:26 PM - at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
12/20/13 2:00:26 PM - at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:53) 
12/20/13 2:00:26 PM - at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
12/20/13 2:00:26 PM - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
12/20/13 2:00:26 PM - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
12/20/13 2:00:26 PM - at java.lang.Thread.run(Thread.java:662) 
12/20/13 2:00:26 PM - 
12/20/13 2:01:02 PM - Failed to create Cloudify Management VM: Error org.cloudifysource.esc.driver.provisioning.CloudProvisioningException: Failed to start machine. 
12/20/13 2:00:26 PM - JClouds Deployer is shutting down a server that failed to start properly: eu-west-1/i-38cb4677 
12/20/13 2:01:02 PM - Failed to start a management machine: Operation failed. java.util.concurrent.ExecutionException: org.cloudifysource.esc.driver.provisioning.CloudProvisioningException: Failed to start machine 
12/20/13 2:01:02 PM - at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:232) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.driver.provisioning.BaseProvisioningDriver.doStartManagementMachines(BaseProvisioningDriver.java:327) 
12/20/13 2:01:02 PM - at java.util.concurrent.FutureTask.get(FutureTask.java:91) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.driver.provisioning.jclouds.DefaultProvisioningDriver.startManagementMachines(DefaultProvisioningDriver.java:427) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.shell.installer.CloudGridAgentBootstrapper.createManagementServers(CloudGridAgentBootstrapper.java:331) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.shell.installer.CloudGridAgentBootstrapper.getOrCreateManagementServers(CloudGridAgentBootstrapper.java:278) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.shell.commands.BootstrapCloud.doExecute(BootstrapCloud.java:224) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.shell.installer.CloudGridAgentBootstrapper.bootstrapCloudAndWait(CloudGridAgentBootstrapper.java:203) 
12/20/13 2:01:02 PM - at org.cloudifysource.shell.commands.AbstractGSCommand.execute(AbstractGSCommand.java:103) 
12/20/13 2:01:02 PM - at org.apache.felix.gogo.commands.basic.AbstractCommand.execute(AbstractCommand.java:35) 
12/20/13 2:01:02 PM - at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:474) 
12/20/13 2:01:02 PM - at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:400) 
12/20/13 2:01:02 PM - at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108) 
12/20/13 2:01:02 PM - at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:183) 
12/20/13 2:01:02 PM - at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:120) 
12/20/13 2:01:02 PM - at org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:89) 
12/20/13 2:01:02 PM - at org.apache.karaf.shell.console.jline.Console.run(Console.java:172) 
12/20/13 2:01:02 PM - at org.apache.karaf.shell.console.Main.run(Main.java:191) 
12/20/13 2:01:02 PM - at org.apache.karaf.shell.console.Main.run(Main.java:89) 
12/20/13 2:01:02 PM - at org.cloudifysource.shell.GigaShellMain.main(GigaShellMain.java:126) 
12/20/13 2:01:02 PM - Caused by: org.cloudifysource.esc.driver.provisioning.CloudProvisioningException: Failed to start machine 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.jclouds.JCloudsDeployer.createServer(JCloudsDeployer.java:178) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.driver.provisioning.jclouds.DefaultProvisioningDriver.createServer(DefaultProvisioningDriver.java:260) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.driver.provisioning.jclouds.DefaultProvisioningDriver.createServer(DefaultProvisioningDriver.java:236) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.driver.provisioning.BaseProvisioningDriver$1.call(BaseProvisioningDriver.java:315) 
12/20/13 2:01:02 PM - at org.cloudifysource.esc.driver.provisioning.BaseProvisioningDriver$1.call(BaseProvisioningDriver.java:310) 
12/20/13 2:01:02 PM - at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
12/20/13 2:01:02 PM - at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
12/20/13 2:01:02 PM - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
12/20/13 2:01:02 PM - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
12/20/13 2:01:02 PM - at java.lang.Thread.run(Thread.java:662) 
12/20/13 2:01:02 PM - Caused by: org.jclouds.compute.RunNodesException: error running 1 node group(ec2-user-master-ec2gitservicestest-cloudify-manager1) location(eu-west-1) image(ami-c37474b7) size(m1.small) options({groupNames=[default], keyPair=ec2-sgtest-eu, userDataCksum=2f4a740b}) 

12/20/13 2:01:02 PM - Execution failures: 
12/20/13 2:01:02 PM - 
12/20/13 2:01:02 PM - 0 error[s] 
12/20/13 2:01:02 PM - Node failures: 
12/20/13 2:01:02 PM - 
12/20/13 2:01:02 PM - 1) AWSResponseException on node eu-west-1/i-38cb4677: 
12/20/13 2:01:02 PM - org.jclouds.aws.AWSResponseException: request POST https://ec2.eu-west-1.amazonaws.com/ HTTP/1.1 failed with code 503, error: AWSError{requestId='8937a5d2-f17f-4a42-af32-ed02125a73a4', requestToken='null', code='RequestLimitExceeded', message='Request limit exceeded.', context='{Response=, Errors=}'} 

jclouds version is: 1.6.2-incubating 

답변

3

. 당신은 다음과 같은 재정의 할 수 있습니다.

Properties overrides = new Properties(); 
overrides.setProperty(POLL_INITIAL_PERIOD, POLL_PERIOD_TWENTY_SECONDS); 
overrides.setProperty(POLL_MAX_PERIOD, POLL_PERIOD_TWENTY_SECONDS); 

ComputeServiceContext context = ContextBuilder.newBuilder(PROVIDER) 
     .credentials(username, apiKey) 
     .overrides(overrides) 
     .buildView(ComputeServiceContext.class); 
computeService = context.getComputeService(); 

전체 예제는 CloudServersPublish입니다. Rackspace Cloud의 사례이지만 코드는 거의 동일합니다. 재생을위한

+0

감사합니다. 나는 그것이 도움이되었다고 생각하지만, 부분적으로 만 -이 오류는 여전히 빈번합니다. 더 이상의 제안? – Biranir

+0

투표 기간을 늘리려고 했습니까? 문제가 될 수있는 많은 인스턴스를 만드는 경우. [로깅] (http://jclouds.apache.org/documentation/userguide/bug-report/#logs)을 활성화하는 것도 좋습니다. jcloud가 전선을 통해 무엇을하는지에 대한 많은 통찰력을 줄 것입니다. –