Trying to create the S3 repo...
curl -X POST ' http://localhost:9200/_snapshot/backups?pretty=1&error_trace=true' -d '
{"settings":{"storage_class":"standard","region":"us-east-1","canned_acl":"private","protocol":"https","access_key":"XXXXXXXXX","bucket":"AAAAAAA","server_side_encryption":1,"secret_key":"YYYYYYY"},"type":"s3"}'
{
" error" : {
" root_cause" : [ {
" type" : " no_class_def_found_error" ,
" reason" : " no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler" ,
"stack_trace" : "NotSerializableExceptionWrapper[no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler]\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:207)\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:368)\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:350)\n\tat org.elasticsearch.cloud.aws.InternalAwsS3Service.getClient(InternalAwsS3Service.java:146)\n\tat org.elasticsearch.cloud.aws.InternalAwsS3Service.client(InternalAwsS3Service.java:70)\n\tat org.elasticsearch.repositories.s3.S3Repository.<init>(S3Repository.java:135)\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:525)\n\tat org.elasticsearch.common.inject.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:50)\n\tat org.elasticsearch.common.inject.ConstructorInjector.construct(ConstructorInjector.java:86)\n\tat org.elasticsearch.common.inject.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:104)\n\tat org.elasticsearch.common.inject.FactoryProxy.get(FactoryProxy.java:54)\n\tat org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:47)\n\tat org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:886)\n\tat org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:43)\n\tat org.elasticsearch.common.inject.Scopes$1$1.get(Scopes.java:59)\n\tat org.elasticsearch.common.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:46)\n\tat org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:201)\n\tat org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:193)\n\tat org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:879)\n\tat org.elasticsearch.common.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:193)\n\tat org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:175)\n\tat org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:110)\n\tat org.elasticsearch.common.inject.InjectorImpl.createChildInjector(InjectorImpl.java:154)\n\tat org.elasticsearch.common.inject.ModulesBuilder.createChildInjector(ModulesBuilder.java:55)\n\tat org.elasticsearch.repositories.RepositoriesService.createRepositoryHolder(RepositoriesService.java:404)\n\tat org.elasticsearch.repositories.RepositoriesService.registerRepository(RepositoriesService.java:368)\n\tat org.elasticsearch.repositories.RepositoriesService.access$100(RepositoriesService.java:55)\n\tat org.elasticsearch.repositories.RepositoriesService$1.execute(RepositoriesService.java:110)\n\tat org.elasticsearch.cluster.ClusterStateUpdateTask.execute(ClusterStateUpdateTask.java:45)\n\tat org.elasticsearch.cluster.service.InternalClusterService.runTasksForExecutor(InternalClusterService.java:480)\n\tat org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:784)\n\tat org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:231)\n\tat org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:194)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)\n\tat java.lang.Thread.run(Thread.java:722)\n"
} ],
" type" : " repository_exception" ,
" reason" : " [backups] failed to create repository" ,
" caused_by" : {
" type" : " creation_exception" ,
" reason" : " creation_exception: Guice creation errors:\n\n1) Error injecting constructor, java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler\n at org.elasticsearch.repositories.s3.S3Repository.<init>(Unknown Source)\n while locating org.elasticsearch.repositories.s3.S3Repository\n while locating org.elasticsearch.repositories.Repository\n\n1 error" ,
" caused_by" : {
" type" : " no_class_def_found_error" ,
" reason" : " no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler" ,
"stack_trace" : "NotSerializableExceptionWrapper[no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler]\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:207)\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:368)\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:350)\n\tat org.elasticsearch.cloud.aws.InternalAwsS3Service.getClient(InternalAwsS3Service.java:146)\n\tat org.elasticsearch.cloud.aws.InternalAwsS3Service.client(InternalAwsS3Service.java:70)\n\tat org.elasticsearch.repositories.s3.S3Repository.<init>(S3Repository.java:135)\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:525)\n\tat org.elasticsearch.common.inject.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:50)\n\tat org.elasticsearch.common.inject.ConstructorInjector.construct(ConstructorInjector.java:86)\n\tat org.elasticsearch.common.inject.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:104)\n\tat org.elasticsearch.common.inject.FactoryProxy.get(FactoryProxy.java:54)\n\tat org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:47)\n\tat org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:886)\n\tat org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:43)\n\tat org.elasticsearch.common.inject.Scopes$1$1.get(Scopes.java:59)\n\tat org.elasticsearch.common.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:46)\n\tat org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:201)\n\tat org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:193)\n\tat org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:879)\n\tat org.elasticsearch.common.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:193)\n\tat org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:175)\n\tat org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:110)\n\tat org.elasticsearch.common.inject.InjectorImpl.createChildInjector(InjectorImpl.java:154)\n\tat org.elasticsearch.common.inject.ModulesBuilder.createChildInjector(ModulesBuilder.java:55)\n\tat org.elasticsearch.repositories.RepositoriesService.createRepositoryHolder(RepositoriesService.java:404)\n\tat org.elasticsearch.repositories.RepositoriesService.registerRepository(RepositoriesService.java:368)\n\tat org.elasticsearch.repositories.RepositoriesService.access$100(RepositoriesService.java:55)\n\tat org.elasticsearch.repositories.RepositoriesService$1.execute(RepositoriesService.java:110)\n\tat org.elasticsearch.cluster.ClusterStateUpdateTask.execute(ClusterStateUpdateTask.java:45)\n\tat org.elasticsearch.cluster.service.InternalClusterService.runTasksForExecutor(InternalClusterService.java:480)\n\tat org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:784)\n\tat org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:231)\n\tat org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:194)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)\n\tat java.lang.Thread.run(Thread.java:722)\n"
},
"stack_trace" : "NotSerializableExceptionWrapper[creation_exception: Guice creation errors:\n\n1) Error injecting constructor, java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler\n at org.elasticsearch.repositories.s3.S3Repository.<init>(Unknown Source)\n while locating org.elasticsearch.repositories.s3.S3Repository\n while locating org.elasticsearch.repositories.Repository\n\n1 error]; nested: NotSerializableExceptionWrapper[no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler];\n\tat org.elasticsearch.common.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:360)\n\tat org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:178)\n\tat org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:110)\n\tat org.elasticsearch.common.inject.InjectorImpl.createChildInjector(InjectorImpl.java:154)\n\tat org.elasticsearch.common.inject.ModulesBuilder.createChildInjector(ModulesBuilder.java:55)\n\tat org.elasticsearch.repositories.RepositoriesService.createRepositoryHolder(RepositoriesService.java:404)\n\tat org.elasticsearch.repositories.RepositoriesService.registerRepository(RepositoriesService.java:368)\n\tat org.elasticsearch.repositories.RepositoriesService.access$100(RepositoriesService.java:55)\n\tat org.elasticsearch.repositories.RepositoriesService$1.execute(RepositoriesService.java:110)\n\tat org.elasticsearch.cluster.ClusterStateUpdateTask.execute(ClusterStateUpdateTask.java:45)\n\tat org.elasticsearch.cluster.service.InternalClusterService.runTasksForExecutor(InternalClusterService.java:480)\n\tat org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:784)\n\tat org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:231)\n\tat org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:194)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)\n\tat java.lang.Thread.run(Thread.java:722)\nCaused by: NotSerializableExceptionWrapper[no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler]\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:207)\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:368)\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:350)\n\tat org.elasticsearch.cloud.aws.InternalAwsS3Service.getClient(InternalAwsS3Service.java:146)\n\tat org.elasticsearch.cloud.aws.InternalAwsS3Service.client(InternalAwsS3Service.java:70)\n\tat org.elasticsearch.repositories.s3.S3Repository.<init>(S3Repository.java:135)\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:525)\n\tat org.elasticsearch.common.inject.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:50)\n\tat org.elasticsearch.common.inject.ConstructorInjector.construct(ConstructorInjector.java:86)\n\tat org.elasticsearch.common.inject.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:104)\n\tat org.elasticsearch.common.inject.FactoryProxy.get(FactoryProxy.java:54)\n\tat org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:47)\n\tat org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:886)\n\tat org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:43)\n\tat org.elasticsearch.common.inject.Scopes$1$1.get(Scopes.java:59)\n\tat org.elasticsearch.common.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:46)\n\tat org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:201)\n\tat org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:193)\n\tat org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:879)\n\tat org.elasticsearch.common.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:193)\n\tat org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:175)\n\t... 15 more\n"
},
"stack_trace" : "RepositoryException[[backups] failed to create repository]; nested: NotSerializableExceptionWrapper[creation_exception: Guice creation errors:\n\n1) Error injecting constructor, java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler\n at org.elasticsearch.repositories.s3.S3Repository.<init>(Unknown Source)\n while locating org.elasticsearch.repositories.s3.S3Repository\n while locating org.elasticsearch.repositories.Repository\n\n1 error]; nested: NotSerializableExceptionWrapper[no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler];\n\tat org.elasticsearch.repositories.RepositoriesService.createRepositoryHolder(RepositoriesService.java:411)\n\tat org.elasticsearch.repositories.RepositoriesService.registerRepository(RepositoriesService.java:368)\n\tat org.elasticsearch.repositories.RepositoriesService.access$100(RepositoriesService.java:55)\n\tat org.elasticsearch.repositories.RepositoriesService$1.execute(RepositoriesService.java:110)\n\tat org.elasticsearch.cluster.ClusterStateUpdateTask.execute(ClusterStateUpdateTask.java:45)\n\tat org.elasticsearch.cluster.service.InternalClusterService.runTasksForExecutor(InternalClusterService.java:480)\n\tat org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:784)\n\tat org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:231)\n\tat org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:194)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)\n\tat java.lang.Thread.run(Thread.java:722)\nCaused by: NotSerializableExceptionWrapper[creation_exception: Guice creation errors:\n\n1) Error injecting constructor, java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler\n at org.elasticsearch.repositories.s3.S3Repository.<init>(Unknown Source)\n while locating org.elasticsearch.repositories.s3.S3Repository\n while locating org.elasticsearch.repositories.Repository\n\n1 error]; nested: NotSerializableExceptionWrapper[no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler];\n\tat org.elasticsearch.common.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:360)\n\tat org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:178)\n\tat org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:110)\n\tat org.elasticsearch.common.inject.InjectorImpl.createChildInjector(InjectorImpl.java:154)\n\tat org.elasticsearch.common.inject.ModulesBuilder.createChildInjector(ModulesBuilder.java:55)\n\tat org.elasticsearch.repositories.RepositoriesService.createRepositoryHolder(RepositoriesService.java:404)\n\t... 11 more\nCaused by: NotSerializableExceptionWrapper[no_class_def_found_error: Could not initialize class com.amazonaws.services.s3.internal.S3ErrorResponseHandler]\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:207)\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:368)\n\tat com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:350)\n\tat org.elasticsearch.cloud.aws.InternalAwsS3Service.getClient(InternalAwsS3Service.java:146)\n\tat org.elasticsearch.cloud.aws.InternalAwsS3Service.client(InternalAwsS3Service.java:70)\n\tat org.elasticsearch.repositories.s3.S3Repository.<init>(S3Repository.java:135)\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:525)\n\tat org.elasticsearch.common.inject.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:50)\n\tat org.elasticsearch.common.inject.ConstructorInjector.construct(ConstructorInjector.java:86)\n\tat org.elasticsearch.common.inject.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:104)\n\tat org.elasticsearch.common.inject.FactoryProxy.get(FactoryProxy.java:54)\n\tat org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:47)\n\tat org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:886)\n\tat org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:43)\n\tat org.elasticsearch.common.inject.Scopes$1$1.get(Scopes.java:59)\n\tat org.elasticsearch.common.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:46)\n\tat org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:201)\n\tat org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:193)\n\tat org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:879)\n\tat org.elasticsearch.common.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:193)\n\tat org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:175)\n\t... 15 more\n"
},
" status" : 500
}
"plugins" : [ {
"name" : "cloud-aws",
"version" : "2.4.3",
"description" : "The Amazon Web Service (AWS) Cloud plugin allows to use AWS API for the unicast discovery mechanism and add S3 repositories.",
"jvm" : true,
"classname" : "org.elasticsearch.plugin.cloud.aws.CloudAwsPlugin",
"isolated" : true,
"site" : false
}, {
.jar files match to my single node test VM that works:
> ls elasticsearch/plugins/cloud-aws/
aws-java-sdk-core-1.10.69.jar
aws-java-sdk-ec2-1.10.69.jar
aws-java-sdk-kms-1.10.69.jar
aws-java-sdk-s3-1.10.69.jar
cloud-aws-2.4.3.jar
commons-codec-1.6.jar
commons-logging-1.1.3.jar
httpclient-4.3.6.jar
httpcore-4.3.3.jar
jackson-annotations-2.5.0.jar
jackson-databind-2.5.3.jar
plugin-descriptor.properties
plugin-security.policy