Kibana可以方便的操作Elasticsearch,事实上Elasticsearch、Logstash、Kibana三者是被合称为ELK的一套数据分布式存储、分析、可视化的工具。只是随着Elasticsearch地位愈加突出以至于快被人们使用成了一套单独的数据库,本文目前只简单的看下Kibana操作ES的简单功能。
鉴于官网的几乎所有示例都是使用Kibana进行的操作,因此强烈推荐使用Elasticsearch过程中使用Kibana进行学习和操作。
一、Kibana的安装
https://www.elastic.co/downloads/kibana
这里下载Kibana6.5.4 Windows版本,下载完毕后只要解压就算安装完成了,本例中我把解压目录kibana-6.5.4-windows-x86_64放在了E盘下:
二、Kibana的配置和启动
Kibana是连接Elasticsearch的,我们可以通过修改config目录下的kibana.yml来讲kibana指向特定的ES server,默认的指向为elasticsearch.url: "http://localhost:9200",我们把这一项修改为:
elasticsearch.url: "http://10.0.1.49:9200" --10.0.1.49:9200为本例的ES server,且network.host设置为了0.0.0.0可接受任意IP的连接请求
然后就可以到bin目录下执行kibana.bat启动Kibana了:
...... log [02:20:14.576] [info][listening] Server running at http://localhost:5601 log [02:20:14.611] [info][status][plugin:spaces@6.5.4] Status changed from yellow to green - Ready
屏幕输出至此表示正常启动了,status的三种状态与交通信号灯的三种颜色一样,green表示集群状态良好。
比较不舒服的一点是这个kibana.bat启动后就杵在那,查看了kibana.bat的help并未发现制作windows服务的option,鉴于自定义windows服务比较麻烦这里不做了。
那么接下来就可以通过浏览器进行操作了,访问的默认端口是kibana的5601端口。
三、Kibana的使用
直接在浏览器中输入:
http://localhost:5601
为了简便起见直接选择explore on my own,然后点击左侧的Dev Tools就可以进入到Elasticsearch的console界面了:
四、语法问题
上图中的初始示例是用于查看ES中所有的数据,明显的RESTFUL风格,其语法结构大致为:
http方法(PUT/DELETE/GET/POST等) ES内置API JSON格式的body 另一种语法结构是: http方法(PUT/DELETE/GET/POST等) index/doc_type/id?<过滤条件>
以上只是归纳了比较常见的Kibana操作方法,ES并未提供一种统一的格式,因此需要从官方示例中不断的归纳总结,这里请不要强套以上的结构。
全部的内置API数量众多,如果有兴趣可以通过官方网站 来学习:https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html
此外通过ES提供的Python接口的method也可以逐渐熟悉这些内置API,内置API与这些method的命名区别大多数时候只是多了一个‘_’前缀,当然例如PUT、GET、DELETE等http方法在很多时候不需要与内置API配合也可以完成工作。