迁移Elasticsearch的Kibana可视化图表
应用场景
迁移Elasticsearch集群间的Kibana可视化图表的应用场景主要包括以下几个方面:
- 当需要将数据从一个Elasticsearch集群迁移到另一个新集群时,Kibana可视化图表的迁移是确保业务连续性的关键步骤。通过导出源集群的Kibana可视化配置(如仪表板、图表等),并在目标集群中导入,可以确保用户界面和监控仪表板的一致性。
- 在开发、测试和生产环境之间复制Elasticsearch环境时,Kibana可视化图表的迁移可以确保不同环境之间的一致性,提升开发和测试效率。
- 在业务发生故障或数据丢失的情况下,通过迁移Kibana图表到备份集群,可以快速恢复数据监控和分析能力。
- 在多集群环境中,可能需要将不同Elasticsearch集群的数据和可视化图表整合到一个统一的集群,以便于实现跨集群的数据分析和管理。
这些场景展示了Kibana可视化图表迁移在实际应用中的重要性,它不仅涉及到数据的移动,还包括了确保业务连续性、提高效率和满足合规性要求等多个方面。
方案架构
迁移Elasticsearch的Kibana可视化图表的方案流程如图1所示。
- 通过Kibana的图表导出功能,在源Elasticsearch集群的Kibana实例中导出所需的可视化对象。
- 通过Kibana的图表导入功能,在目标Elasticsearch集群的Kibana实例中导入这些对象。
方案优势
- 业务连续性:通过迁移Kibana可视化图表,可以确保在集群升级或迁移过程中,集群的监控和分析工作不会中断,从而保障业务的连续性。
- 环境一致性:在多环境(开发、测试、生产)之间复制Kibana配置,可以确保不同环境的一致性,这有助于减少环境差异导致的问题,提高开发和测试的效率。
- 快速恢复:在故障恢复场景中,Kibana图表的迁移能力可以快速恢复关键的监控和分析功能,减少系统故障对业务的影响。
- 数据整合能力:在多集群环境中,迁移Kibana图表有助于实现数据的集中管理和分析,提高数据整合的效率和效果。
约束限制
源Elasticsearch集群和目标Elasticsearch集群的版本要相近,否则可能迁移异常。如果迁移过程中出现图表不兼容的报错,可以参考常见问题:迁移过程中,发现图表不兼容怎么办?处理。
前提条件
源Elasticsearch集群和目标Elasticsearch集群处于可用状态。
操作步骤
不同版本的Kibana操作界面会有差异,请以实际界面为准。本文仅以7.10.2版本为例。
- 通过Kibana的图表导出功能将源Elasticsearch集群的可视化对象导出到本地。以源集群是华为云Elasticsearch为例,介绍操作步骤。
- 登录云搜索服务管理控制台。
- 在左侧菜单栏选择 。
- 在Elasticsearch集群列表,单击集群操作列的“Kibana”,登录Kibana。
- 在左侧导航栏选择“Stack Management > Saved Objects”。
- 在Saved Objects页面,单击“Export xx objects”,在弹窗中选择对应的可视化图表,单击“Export all”,将可视化对象文件“export.ndjson”下载到本地。
图2 导出可视化对象
- 通过Kibana的图表导入功能将源集群的可视化对象导入目标Elasticsearch集群。
- 在云搜索服务管理控制台,选择 。
- 在Elasticsearch集群列表,单击集群操作列的“Kibana”,登录Kibana。
- 在左侧导航栏选择“Stack Management > Saved Objects”。
- 在Saved Objects页面,单击“Import”,在弹窗中选择保存在本地的源集群的可视化对象文件“export.ndjson”,“Import options”选择“Automatically overwrite conflicts”,单击“Import”。
图3 导入可视化对象
- 确认导入完成后,单击Done,关闭弹窗。
常见问题:迁移过程中,发现图表不兼容怎么办?
在导入可视化对象时,出现如下报错信息,则表示源集群和目标集群的图表版本不兼容。
The file could not be processed due to error: "Unprocessable Entity: Document "7.1.1" has property "config" which belongs to a more recent version of Kibana [7.13.0]. The last known version is [7.9.0]"
此时,可以在本地修改可视化对象文件“export.ndjson”,将版本号信息修改一致,本例中需要将代码中的[7.13.0]修改为[7.9.0]。保存后,重新导入文件即可。如果修改兼容字段后依然导入失败,则需要手动在目标集群重建图表。