解决重复的快照策略失败
编辑解决重复的快照策略失败编辑
重复的快照失败通常表明部署存在问题。如果自动快照持续失败,在数据丢失或中断的情况下,部署可能会失去恢复选项。
Elasticsearch 会跟踪执行自动快照时重复失败的次数。如果自动快照在没有成功执行的情况下失败次数过多,则运行状况 API 将报告警告。报告警告之前的重复失败次数由 slm.health.failed_snapshot_warn_threshold
设置控制。
如果自动快照生命周期管理策略执行遇到重复失败,请按照以下步骤获取有关该问题的更多信息
为了检查失败的快照生命周期管理策略的状态,我们需要转到 Kibana 并检索 快照生命周期策略信息。
使用 Kibana
- 登录到 Elastic Cloud 控制台。
-
在 Elasticsearch Service 面板上,单击您的部署名称。
如果您的部署名称被禁用,则您的 Kibana 实例可能不正常,在这种情况下,请联系 Elastic 支持。如果您的部署不包含 Kibana,您只需 先启用它。
-
打开部署的侧边导航菜单(位于左上角 Elastic 徽标下方),然后转到 开发工具 > 控制台。
-
检索 快照生命周期管理策略
GET _slm/policy/<affected-policy-name>
响应将如下所示
{ "affected-policy-name": { "version": 1, "modified_date": "2099-05-06T01:30:00.000Z", "modified_date_millis": 4081757400000, "policy" : { "schedule": "0 30 1 * * ?", "name": "<daily-snap-{now/d}>", "repository": "my_repository", "config": { "indices": ["data-*", "important"], "ignore_unavailable": false, "include_global_state": false }, "retention": { "expire_after": "30d", "min_count": 5, "max_count": 50 } }, "last_success" : { "snapshot_name" : "daily-snap-2099.05.30-tme_ivjqswgkpryvnao2lg", "start_time" : 4083782400000, "time" : 4083782400000 }, "last_failure" : { "snapshot_name" : "daily-snap-2099.06.16-ywe-kgh5rfqfrpnchvsujq", "time" : 4085251200000, "details" : """{"type":"snapshot_exception","reason":"[daily-snap-2099.06.16-ywe-kgh5rfqfrpnchvsujq] failed to create snapshot successfully, 5 out of 149 total shards failed"}""" }, "stats": { "policy": "daily-snapshots", "snapshots_taken": 0, "snapshots_failed": 0, "snapshots_deleted": 0, "snapshot_deletion_failures": 0 }, "next_execution": "2099-06-17T01:30:00.000Z", "next_execution_millis": 4085343000000 } }
快照可能由于多种原因而失败。如果失败是由于配置错误造成的,请查阅自动快照正在使用的存储库的文档。如果您正在使用此类部署,请参阅 有关在 ECE 中管理存储库的指南。
一种常见的故障情况是存储库损坏。当 Elasticsearch 的多个实例写入同一个存储库位置时,最常发生这种情况。有一个 单独的故障排除指南 来解决此问题。
如果快照由于其他原因而失败,请检查快照执行期间选定的主节点上的日志以获取更多信息。
检索 快照生命周期管理策略
GET _slm/policy/<affected-policy-name>
响应将如下所示
{ "affected-policy-name": { "version": 1, "modified_date": "2099-05-06T01:30:00.000Z", "modified_date_millis": 4081757400000, "policy" : { "schedule": "0 30 1 * * ?", "name": "<daily-snap-{now/d}>", "repository": "my_repository", "config": { "indices": ["data-*", "important"], "ignore_unavailable": false, "include_global_state": false }, "retention": { "expire_after": "30d", "min_count": 5, "max_count": 50 } }, "last_success" : { "snapshot_name" : "daily-snap-2099.05.30-tme_ivjqswgkpryvnao2lg", "start_time" : 4083782400000, "time" : 4083782400000 }, "last_failure" : { "snapshot_name" : "daily-snap-2099.06.16-ywe-kgh5rfqfrpnchvsujq", "time" : 4085251200000, "details" : """{"type":"snapshot_exception","reason":"[daily-snap-2099.06.16-ywe-kgh5rfqfrpnchvsujq] failed to create snapshot successfully, 5 out of 149 total shards failed"}""" }, "stats": { "policy": "daily-snapshots", "snapshots_taken": 0, "snapshots_failed": 0, "snapshots_deleted": 0, "snapshot_deletion_failures": 0 }, "next_execution": "2099-06-17T01:30:00.000Z", "next_execution_millis": 4085343000000 } }
快照可能由于多种原因而失败。如果失败是由于配置错误造成的,请查阅自动快照正在使用的存储库的文档。
一种常见的故障情况是存储库损坏。当 Elasticsearch 的多个实例写入同一个存储库位置时,最常发生这种情况。有一个 单独的故障排除指南 来解决此问题。
如果快照由于其他原因而失败,请检查快照执行期间选定的主节点上的日志以获取更多信息。