我需要使用elasticsearch-curator在3台服务器内保持elasticsearch-data同步。我只想在一台服务器上更新数据,而其他人则使用快照和恢复方法更新自己。 我能够在第一台服务器上使用策展人创建快照,但无法在另一台服务器上恢复。
快照 在curator.yml中获取快照主机条目就像主机:服务器1上的[" localhost"]。我可以轻松地在服务器1本身上恢复它。
但是,当我尝试在服务器2上恢复它时出现问题 curator.yml中的主机条目类似于主机:[" localhost"," Server 1 IP"] 它会生成错误消息:
2017-02-27 10:39:58,927 INFO Preparing Action ID: 1, "restore"
2017-02-27 10:39:59,145 INFO Trying Action ID: 1, "restore": Restore all indices in the most recent curator-* snapshot with state SUCCESS. Wait for the restore to complete before continuing. Do not skip the repository filesystem access check. Use the other options to define the index/shard settings for the restore.
2017-02-27 10:39:59,399 INFO Restoring indices "['test_sec']" from snapshot: curator-20170226143036
2017-02-27 10:39:59,409 ERROR Failed to complete action: restore. <class 'curator.exceptions.FailedExecution'>: Exception encountered. Rerun with loglevel DEBUG and/or check Elasticsearch logs for more information. Exception: TransportError(500, u'snapshot_restore_exception', u'[all_index:curator-20170226143036]snapshot does not exist')
答案 0 :(得分:0)
这与how to restore elasticsearch indices from S3 to blank cluster using curator?
的答案有关您是如何将存储库添加到原始(源)集群的?您需要使用完全相同的步骤将存储库添加到新(目标)群集。只有这样,新集群才能读取存储库。
如果没有更多信息,就很难确定,但snapshot does not exist
消息在这方面似乎很明显。它表示存储库与源群集不是共享文件系统。