I have managed to get a snapshot stored on S3, now trying to get that snapshot onto my elasticsearch deployment using an operator on GKE. Currently I have 1 master data pod elasticsearch-config-es-master-data-1 active.
When trying to set up an S3 repository, below is my PUT request followed by the error I see.
{
"error": {
"root_cause": [
{
"type": "repository_verification_exception",
"reason": "[s3_repo] path is not accessible on master node"
}
],
"type": "repository_verification_exception",
"reason": "[s3_repo] path is not accessible on master node",
"caused_by": {
"type": "i_o_exception",
"reason": "Unable to upload object [tests-FtGw-UFkSSC4NN_DcfxsgQ/master.dat] using a single upload",
"caused_by": {
"type": "sdk_client_exception",
"reason": "The requested metadata is not found at http://[IP address]/latest/meta-data/iam/security-credentials/"
}
}
},
"status": 500
}
I'm wondering what I'm missing, any help/guidance is greatly appreciated!
OpenSearch/OpenDistro are AWS run products and differ from the original Elasticsearch and Kibana products that Elastic builds and maintains. You may need to contact them directly for further assistance. See What is OpenSearch and the OpenSearch Dashboard? | Elastic for more details.
(This is an automated response from your friendly Elastic bot. Please report this post if you have any suggestions or concerns )
OpenSearch is a different product from Elasticsearch (with some shared heritage ofc) and their snapshot formats are not compatible. If these snapshots were created with OpenSearch then Elasticsearch isn't going to be able to read them.
This indicates that you haven't configured the access_key and secret_key so Elasticsearch is trying to use the EC2 IMDS to obtain the credentials it needs to access the bucket, but IMDS doesn't have any credentials to offer.
If these snapshots were created with OpenSearch then Elasticsearch isn't going to be able to read them.
I created the snapshot by running a PUT request to the OpenSearch domain https://[OpenSearch domain name].us-west-2.es.amazonaws.com/_snapshot/test-snapshot-repo/test-snapshot, is this considered as 'a snapshot created with OpenSearch'? Just wanted a clarification.
This indicates that you haven't configured the access_key and secret_key
I've tried multiple ways to configure this
Setting as environment variable in my deployment pod elasticsearch-config-es-master-data-1.
That should work, but it does require that you're using the default S3 client and that bin/elasticsearch-keystore is running in the same environment as you launched ES (in particular, it has the same value for ${ES_PATH_CONF}).
Oh no... So, for people (sadly me) who want to migrate their team away from OpenSearch to manage their own using elasticsearch operator, what are my alternatives so that data is preserved?
That should work, but it does require that you're using the default S3 client
Is this referring to the repository I've created that is on my destination cluster? How can I check this?
bin/elasticsearch-keystore is running in the same environment as you launched ES
I've been making configurations in elasticsearch-config-es-master-data-1 since the pod has elasticsearch and all its other commands in the bin/ directory. So, I'm hoping at least this part is correct.
(thanks again for answering my questions)
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.