3

I have installed repository-azure and configured elasticsearch with below settings:

path.data: /datadrive/elasticsearch/data
path.logs: /datadrive/elasticsearch/log
cloud:
    azure:
        storage:
            my_account:
                account: teststorage
                key: NtZQddasdasdasdsadsadfdsdsfsafsadasdyyP==

When I am trying to take a snapshot it's giving an error.

Request:

PUT _snapshot/es_snapshot
{
    "type": "azure"
}

Response:

{
  "error": {
    "root_cause": [
      {
    "type": "repository_verification_exception",
    "reason": "[es_snapshot] path  is not accessible on master node"
      }
    ],
    "type": "repository_verification_exception",
    "reason": "[es_snapshot] path  is not accessible on master node",
    "caused_by": {
      "type": "i_o_exception",
      "reason": "Can not write blob master.dat",
      "caused_by": {
    "type": "storage_exception",
    "reason": "The specified container does not exist."
      }
    }
  },
  "status": 500
}
RNK
  • 5,582
  • 11
  • 65
  • 133

2 Answers2

1

Before taking a snapshot, you need to register the Azure repository with Elasticsearch.

Create a storage account in Azure and under that, create a Container BLOB and then register it to the repository es_snapshot as below:

PUT _snapshot/es_snapshot
{
    "type": "azure",
    "settings": {
      "container": "es_snapshot",
      "compress" : true
    }
}

Once the repository es_snapshot is registered, you can then take snapshots

Sandeep Kanabar
  • 1,264
  • 17
  • 33
-2

"The specified container does not exist"

Error is clear - Create a container of name "es_snapshot" and the try