I'm running a Amazon Elasticsearch Service 5.1 (last version available there).
I'd like to reindex my documents from a remote server, but I can't do this on AWS because I can't modify the elasticsearch.yml file.
AWS Elastic Service doesn't provide a way to put reindex.remote.whitelist flag in his config.
Unfortunately, I'm afraid that's a rather strict requirement of the _reindex API. You will not be able to use _reindex to accomplish this task.
You can, however, create your own script to pull from one source using the scroll API, and then send all the documents found to the target cluster. It would be a rather manual process, I'm afraid.
Remote hosts have to be explicitly whitelisted in elasticsearch.yaml using the reindex.remote.whitelist property. It can be set to a comma delimited list of allowed remote host and port combinations (e.g. otherhost:9200, another:9200, 127.0.10.*:9200, localhost:*). Scheme is ignored by the whitelist - only host and port are used.
I think that's by design, that it must be hard-coded before startup.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.