我们正在使用 Elasticsearch 和 Kibana 来存储和可视化一些应用程序信息。我创建了启动 Kibana 和 Elasticsearch 的 docker-compose。此组合应该仅用于在开发人员的本地计算机上部署。但当然,每次当一些开发人员启动这个堆栈时,他都会看到空的 kibana 仪表板。我想外部化 kibana 数据。最好的情况是,如果我们有一些 kibana-data.json 文件,并且当它正在创建和容器启动时,有关 kibana 对象的数据会出现在其中,它将通过该文件中包含的数据初始化 kibana。
我知道:
- Kibana 将它的数据存储在 .kibana 索引中的 elasticsearch 中。但我不明白如何外部化这个索引数据。
- 有https://github.com/elastic/kibana/pull/11632可以帮助我。但在这种情况下,我将不得不定期 ping kibana 并将新数据存储在文件中。当容器启动时,我将不得不在 kibana 中加载这些对象。听起来我将不得不为此编写一个新的应用程序。
你有什么建议?你如何解决类似的问题?