关闭.kibana_security_session后Kibana无法访问报迁移失败如何解决
问题根因
Kibana启动时会自动对所有依赖的内置系统索引执行保存对象迁移校验流程,只要任意一个关联的系统索引处于closed状态,迁移流程就会直接中断抛出致命错误。你在做快照操作时误关闭了Kibana依赖的系统索引(不止你手动关闭的.kibana_security_session,从报错信息看.kibana_task_manager也处于关闭状态),是故障的直接原因。
排查步骤
- 登录Elasticsearch查询所有Kibana关联索引的运行状态,执行如下命令:
GET /_cat/indices/.kibana*?v&h=index,status
在返回结果中筛选所有.kibana前缀的索引,记录下status列值为close的索引,这些就是需要恢复的目标索引。
- 额外检查集群健康状态,执行命令:
GET /_cluster/health
确认集群状态不为red,排除分片未分配、节点离线等其他会阻塞Kibana连接的问题。
修复操作
- 对所有排查到的处于关闭状态的Kibana系统索引,逐个执行打开操作,命令格式如下:
POST /<替换为要打开的索引名>/_open
针对本次报错涉及的两个索引,对应执行的命令为:
POST /.kibana_security_session/_open POST /.kibana_task_manager/_open
如果排查时发现其他.kibana前缀的关闭索引,一并执行打开操作。
- 索引打开操作完成后,再次执行索引状态查询命令,确认所有
.kibana前缀索引的状态均为open。 - 重启Kibana服务,观察启动日志,保存对象迁移流程会自动重试,正常情况下服务可恢复访问。
后续运维注意
- 所有
.kibana、.security等带点开头的Elasticsearch内置索引,不要在无官方操作指引的情况下手动执行关闭、删除、修改mapping等操作,这类操作极容易导致关联组件不可用。 - 如果打开所有索引后重启Kibana仍报迁移错误,可先清空Kibana安装目录下的
data缓存目录再重启,该操作不会丢失存储在Elasticsearch中的Kibana配置、仪表盘等业务数据。
内容的提问来源于stack exchange,提问作者anonymous
相关产品推荐
相关产品推荐

