Вложенный моментальный снимок Elasticsearch: расположение RepositoryException не соответствует ни одному из местоположений, указанных в path.repo, поскольку этот параметр пуст - PullRequest
0 голосов
/ 18 июня 2019

Я запускаю стек лося поверх докера, используя следующую команду:

...
elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:${ELK_VERSION}
    container_name: elasticsearch
    environment:
      - cluster.name=docker-cluster
      - node.name=elasticsearch
      - discovery.seed_hosts=elasticsearch,es02
      - discovery.zen.minimum_master_nodes=1

      - bootstrap.memory_lock=true
      - http.cors.enabled=true
      - http.cors.allow-origin=*
      - ES_JAVA_OPTS=-Xms512m -Xmx512m
      - ELASTIC_PASSWORD=changeme
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - esdata01:/usr/share/elasticsearch/data
    ports:
      - 9201:9200

    networks:
      - elk
...

В консоли разработчика kibana при отправке запроса на установку резервной копии я получаю следующие ошибки:

PUT /_snapshot/my_backup
{
"type": "fs",
"settings": {
"location": "/backup/my_backup"
}
}

Ошибка:

{
"error": "RepositoryException[[my_backup] failed to create repository]; nested: CreationException[Guice creation errors:\n\n1) Error injecting constructor, org.elasticsearch.repositories.RepositoryException: [my_backup] location [/backup/my_backup] doesn't match any of the locations specified by path.repo because this setting is empty\n at org.elasticsearch.repositories.fs.FsRepository.(Unknown Source)\n while locating org.elasticsearch.repositories.fs.FsRepository\n while locating org.elasticsearch.repositories.Repository\n\n1 error]; nested: RepositoryException[[my_backup] location [/backup/my_backup] doesn't match any of the locations specified by path.repo because this setting is empty]; ",
"status": 500
}

1 Ответ

0 голосов
/ 18 июня 2019

Вы можете добавить path.repo в вашем окружении:

elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:${ELK_VERSION}
    container_name: elasticsearch
    environment:
      - cluster.name=docker-cluster
      - node.name=elasticsearch
      - discovery.seed_hosts=elasticsearch,es02
      - discovery.zen.minimum_master_nodes=1
      # - node.master=true
      # - node.data=true
      # - network.host=0.0.0.0
      # # - http.port=9201

      - bootstrap.memory_lock=true
      - http.cors.enabled=true
      - http.cors.allow-origin=*
      - ES_JAVA_OPTS=-Xms512m -Xmx512m
      - ELASTIC_PASSWORD=changeme
      - path.repo=/backup/my_backup
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - esdata01:/usr/share/elasticsearch/data
    ports:
      - 9201:9200

    networks:
      - elk
...