David, Great that helped. At first I created the space in "node 1" config but didn't do anything. So, I commented the credentials section from "node 2" config, That worked. So, I am a bit confused about this, Do I need to maintain both configs on the two instances, so they both have credentials in them, or do I just put it in "node 1" and since the cluster is configured, there will be no need to have credentials in "node 2" ?
Thanks On Friday, July 4, 2014 11:03:45 AM UTC-4, David Pilato wrote: > > Try to add some spaces before cloud, so like this… > > > cloud: > > > aws: > > access_key: XXXXX > > secret_key: YYYYYYYYYYY > > discovery: > > type: ec2 > > -- > *David Pilato* | *Technical Advocate* | *Elasticsearch.com* > @dadoonet <https://twitter.com/dadoonet> | @elasticsearchfr > <https://twitter.com/elasticsearchfr> > > > Le 4 juillet 2014 à 16:47:03, sabdalla80 ([email protected] <javascript:>) > a écrit: > > My cluster has two instances, I have the same setup on both instances. To > answer Ross's question, I use the curl command to register the repository > from the instance(s) itself. Do I need to do anything else on the > instance(s) as far as AWS credentials? > > Here is what I have: > Enter ##################### Elasticsearch Configuration Example > ##################### > > > # This file contains an overview of various configuration settings, > > # targeted at operations staff. Application developers should > > # consult the guide at <http://elasticsearch.org/guide>. > > # > > # The installation procedure is covered at > > # < > http://elasticsearch.org/guide/en/elasticsearch/reference/current/setup.html > >. > > # > > # Elasticsearch comes with reasonable defaults for most settings, > > # so you can try it out without bothering with configuration. > > # > > # Most of the time, these defaults are just fine for running a production > > # cluster. If you're fine-tuning your cluster, or wondering about the > > # effect of certain configuration option, please _do ask_ on the > > # mailing list or IRC channel [http://elasticsearch.org/community]. > > > # Any element in the configuration can be replaced with environment > variables > > # by placing them in ${...} notation. For example: > > # > > # node.rack: ${RACK_ENV_VAR} > > > # For information on supported formats and syntax for the config file, see > > # < > http://elasticsearch.org/guide/en/elasticsearch/reference/current/setup-configuration.html > > > > > > ################################### Cluster > ################################### > > > # Cluster name identifies your cluster for auto-discovery. If you're > running > > # multiple clusters on the same network, make sure you're using unique > names. > > # > > cluster.name: rexCluster > > #################################### Node > ##################################### > > > # Node names are generated dynamically on startup, so you're relieved > > # from configuring them manually. You can tie this node to a specific name: > > # > > node.name: "node 1" > > > # Every node can be configured to allow or deny being eligible as the > master, > > # and to allow or deny to store the data. > > # > > # Allow this node to be eligible as a master node (enabled by default): > > # > > node.master: true > > # > > # Allow this node to store data (enabled by default): > > # > > # node.data: true > > > # You can exploit these settings to design advanced cluster topologies. > > # > > # 1. You want this node to never become a master node, only to hold data. > > # This will be the "workhorse" of your cluster. > > # > > # node.master: false > > # node.data: true > > # > > # 2. You want this node to only serve as a master: to not store any data > and > > # to have free resources. This will be the "coordinator" of your > cluster. > > # > > # node.master: true > > # node.data: false > > # > > # 3. You want this node to be neither master nor data node, but > > # to act as a "search load balancer" (fetching data from nodes, > > # aggregating results, etc.) > > # > > # node.master: false > > # node.data: false > > > # Use the Cluster Health API [http://localhost:9200/_cluster/health], the > > # Node Info API [http://localhost:9200/_nodes] or GUI tools > > # such as <http://www.elasticsearch.org/overview/marvel/>, > > # <http://github.com/karmi/elasticsearch-paramedic>, > > # <http://github.com/lukas-vlcek/bigdesk> and > > # <http://mobz.github.com/elasticsearch-head> to inspect the cluster > state. > > > # A node can have generic attributes associated with it, which can later > be used > > # for customized shard allocation filtering, or allocation awareness. An > attribute > > # Path to directory containing configuration (this file and logging.yml): > > # > > path.conf: /etc/elasticsearch > > > # Path to directory where to store index data allocated for this node. > > # > > # path.data: /path/to/data > > # > > # Can optionally include more than one location, causing data to be > striped across > > # the locations (a la RAID 0) on a file level, favouring locations with > most free > > # space on creation. For example: > > # > > path.data: /opt/cores/elasticsearch/data > > > # Path to temporary files: > > # > > path.work: /opt/cores/elasticsearch/work > > > # Path to log files: > > # > > path.logs: /opt/cores/elasticsearch/logs > > > # Path to where plugins are installed: > > # > > # path.plugins: /path/to/plugins > > ################################### Memory > #################################### > > > # Elasticsearch performs poorly when JVM starts swapping: you should > ensure that > > # it _never_ swaps. > > # > > # Set this property to true to lock the memory: > > # > > bootstrap.mlockall: true > > ################################## Discovery > ################################## > > > # Discovery infrastructure ensures nodes can be found within a cluster > > # and master node is elected. Multicast discovery is the default. > > > # Set to ensure a node sees N other master eligible nodes to be considered > > # operational within the cluster. Its recommended to set it to a higher > value > > # than 1 when running more than 2 nodes in the cluster. > > # > > discovery.zen.minimum_master_nodes: 2 > > > # Set the time to wait for ping responses from other nodes when > discovering. > > # Set this option to a higher value on a slow or congested network > > # to minimize discovery failures: > > # > > discovery.zen.ping.timeout: 3s > > > # For more information, see > > # < > http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-zen.html > > > > > # Unicast discovery allows to explicitly control which nodes will be used > > # to discover the cluster. It can be used when multicast is not present, > > # or to restrict the cluster communication-wise. > > # > > # 1. Disable multicast discovery (enabled by default): > > # > > discovery.zen.ping.multicast.enabled: false > > # > > # 2. Configure an initial list of master nodes in the cluster > > # to perform discovery when new nodes (master or data) are started: > > # > > discovery.zen.ping.unicast.hosts: ["IP1","IP2"] > > > # EC2 discovery allows to use AWS EC2 API in order to perform discovery. > > # > > # You have to install the cloud-aws plugin for enabling the EC2 discovery. > > # > > # For more information, see > > # < > http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-ec2.html > > > > # > > # See <http://elasticsearch.org/tutorials/elasticsearch-on-ec2/> > > # for a step-by-step tutorial. > > cloud: > > > aws: > > access_key: XXXXX > > secret_key: YYYYYYYYYYY > > discovery: > > type: ec2 > > > > On Friday, July 4, 2014 2:27:48 AM UTC-4, David Pilato wrote: >> >> Agreed. Could you share your elasticsearch.yml file without touching >> anything but only replacing Key/secret? >> >> Keep the formating. >> >> -- >> David ;-) >> Twitter : @dadoonet / @elasticsearchfr / @scrutmydocs >> >> >> Le 4 juil. 2014 à 06:51, Ross Simpson <[email protected]> a écrit : >> >> That specific exception (com.amazonaws.AmazonClientException) is thrown >> by the AWS client libraries, and it means the library couldn't find your >> AWS credentials. I'm not sure why, as the details in your original post >> look correct. >> >> FWIW, S3 snapshots are working well for me. Here's my setup: >> ES 1.1.1 >> AWS cloud plugin 2.1.0 >> >> elasticsearch.yml: >> cloud.aws.access_key: ... >> cloud.aws.secret_key: ...... >> >> Repo registration: >> $ curl -XPUT 'http://localhost:9200/_snapshot/es-backups' -d >> '{"type":"s3","settings":{"compress":"true","base_path":"prod_backups","region":"us-east","bucket":"..."}}' >> {"acknowledged":true} >> >> In your latest post, it looks like you're running the command on a >> remote ES host (10.211.154.24). Does that specific host have the AWS >> credentials in its ES config? Snapshotting will require that *all* >> nodes in the cluster have the AWS credentials, because they will each be >> writing to S3. >> >> Are there any relevant entries in the ES logs from startup? >> >> >> >> On Friday, 4 July 2014 04:25:44 UTC+10, sabdalla80 wrote: >>> >>> I installed latest ES version too "1.2.1", still getting same error >>> { >>> "error": "RemoteTransportException[[node >>> 2][inet[/10.211.154.24:9300]][cluster/repository/put]]; nested: >>> RepositoryException[[es_repository] failed to create repository]; nested: >>> CreationException[Guice creation errors:\n\n1) Error injecting constructor, >>> com.amazonaws.AmazonClientException: Unable to load AWS credentials from >>> any provider in the chain\n at >>> org.elasticsearch.repositories.s3.S3Repository.<init>()\n at >>> org.elasticsearch.repositories.s3.S3Repository\n at >>> Key[type=org.elasticsearch.repositories.Repository, annotation=[none]]\n\n1 >>> error]; nested: AmazonClientException[Unable to load AWS credentials from >>> any provider in the chain]; ", >>> "status": 500 >>> } >>> >>> Any ideas? I would appreciate some feedback on how to figure out this >>> problem because I would like to backup our index to S3. >>> >>> On Wednesday, July 2, 2014 3:36:58 PM UTC-4, sabdalla80 wrote: >>>> >>>> Unfortunately, I tried with and without the region setting, no >>>> difference. >>>> >>>> On Tuesday, July 1, 2014 7:43:21 PM UTC-4, Glen Smith wrote: >>>>> >>>>> I'm not sure it matters, but I noticed you aren't setting a region in >>>>> either your config or when registering your repo. >>>>> >>>>> On Tuesday, July 1, 2014 7:08:28 PM UTC-4, sabdalla80 wrote: >>>>>> >>>>>> I am not sure the version is the problem, I guess I can upgrade from >>>>>> V1.1 to latest. >>>>>> "Not able to load credential from supply chain", Any idea this error >>>>>> is generated, Is there any other place that my credentials need to be >>>>>> besides .yml file? >>>>>> Note, I am able to write/read to S3 remotely, so I don't have any >>>>>> priviliges problems that I can think of. >>>>>> >>>>>> On Tuesday, July 1, 2014 4:44:17 PM UTC-4, David Pilato wrote: >>>>>>> >>>>>>> I think 2.1.1 should work fine as well. >>>>>>> >>>>>>> That said, you should upgrade to latest 1.1 (or 1.2)... >>>>>>> >>>>>>> -- >>>>>>> David ;-) >>>>>>> Twitter : @dadoonet / @elasticsearchfr / @scrutmydocs >>>>>>> >>>>>>> >>>>>>> Le 1 juil. 2014 à 22:13, Glen Smith <[email protected]> a écrit : >>>>>>> >>>>>>> According to >>>>>>> https://github.com/elasticsearch/elasticsearch-cloud-aws/tree/es-1.1 >>>>>>> you should use v2.1.0 of the plugin with ES 1.1.0. >>>>>>> >>>>>>> On Tuesday, July 1, 2014 9:03:04 AM UTC-4, sabdalla80 wrote: >>>>>>>> >>>>>>>> I am having a problem setting up backup and restore part of AWS on >>>>>>>> S3. >>>>>>>> I have 2.1.1 AWS plugin & ElasticSearch V1.1.0 >>>>>>>> >>>>>>>> My yml: >>>>>>>> >>>>>>>> cloud: >>>>>>>> aws: >>>>>>>> access_key: ######### >>>>>>>> secret_key: ##################### >>>>>>>> discovery: >>>>>>>> type: ec2 >>>>>>>> >>>>>>>> When I try to register a repository: >>>>>>>> >>>>>>>> PUT /_snapshot/es_repository{ >>>>>>>> >>>>>>>> "type": "s3", >>>>>>>> >>>>>>>> "settings": { >>>>>>>> >>>>>>>> "bucket": "esbucket" >>>>>>>> >>>>>>>> }} >>>>>>>> >>>>>>>> >>>>>>>> I get this error, it complains about loading my credentials! Is >>>>>>>> this ElasticSearch problem or AWS? >>>>>>>> >>>>>>>> Note I am running as root user "ubuntu" on Ec2 and also running AWS >>>>>>>> with root privileges as opposed to IAM role, not sure if it's a >>>>>>>> problem or >>>>>>>> not. >>>>>>>> "error": "RepositoryException[[es_repository] failed to create >>>>>>>> repository]; nested: CreationException[Guice creation errors:\n\n1) >>>>>>>> Error >>>>>>>> injecting constructor, com.amazonaws.AmazonClientException: Unable to >>>>>>>> load >>>>>>>> AWS credentials from any provider in the chain\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: >>>>>>>> AmazonClientException[Unable to load AWS credentials from any provider >>>>>>>> in >>>>>>>> the chain]; ", >>>>>>>> "status": 500 >>>>>>>> }ode here... >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "elasticsearch" group. >>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>> send an email to [email protected]. >>>>>>> To view this discussion on the web visit >>>>>>> https://groups.google.com/d/msgid/elasticsearch/e7db355a-7710-4408-80de-60960fd16d1d%40googlegroups.com >>>>>>> >>>>>>> <https://groups.google.com/d/msgid/elasticsearch/e7db355a-7710-4408-80de-60960fd16d1d%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>> . >>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>> >>>>>> -- >> You received this message because you are subscribed to the Google Groups >> "elasticsearch" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/elasticsearch/a3df1eb8-b6a2-4400-ba8c-58e1b2b33385%40googlegroups.com >> >> <https://groups.google.com/d/msgid/elasticsearch/a3df1eb8-b6a2-4400-ba8c-58e1b2b33385%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> > -- > You received this message because you are subscribed to the Google Groups > "elasticsearch" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected] <javascript:>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/elasticsearch/ec5d719f-514b-4224-9138-0a61370f2870%40googlegroups.com > > <https://groups.google.com/d/msgid/elasticsearch/ec5d719f-514b-4224-9138-0a61370f2870%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > > -- You received this message because you are subscribed to the Google Groups "elasticsearch" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/db55bb02-b5a1-44c3-8692-01d2bb7efbae%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
