Kibana詳細入門教程
阿新 • • 發佈:2020-03-16
[toc]
# 一、Kibana是什麼
Kibana 是為 Elasticsearch設計的開源分析和視覺化平臺。你可以使用 Kibana 來搜尋,檢視儲存在 Elasticsearch 索引中的資料並與之互動。你可以很容易實現高階的資料分析和視覺化,以圖示的形式展現出來。
使用前我們肯定需要先有Elasticsearch啦,安裝使用Elasticsearch可以參考[Elasticsearch構建全文搜尋系統](https://www.cnblogs.com/chenqionghe/p/12496827.html)
下面分別演示一下Kibana的安裝、自定義索引,搜尋,控制檯呼叫es的api和視覺化等操作,特別需要注意的是,控制檯可以非常方便的來呼叫es的api,強烈推薦使用
# 二、如何安裝
直接下載對應平臺的版本就可以,參考地址[Installing Kibana](https://www.elastic.co/guide/en/kibana/current/install.html)
我裡我直接下載了mac平臺的[kibana-7.6.1-darwin-x86_64.tar.gz](https://artifacts.elastic.co/downloads/kibana/kibana-7.6.1-darwin-x86_64.tar.gz)
解壓完畫風如下
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316124923813-499003277.png)
配置
具體參考[Configring Kibana](https://www.elastic.co/guide/cn/kibana/current/settings.html)
設定監聽埠號、es地址、索引名
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316124933015-381228497.png)
預設情況下,kibana啟動時將生成隨機金鑰,這可能導致重新啟動後失敗,需要配置多個例項中有相同的金鑰
設定
```
xpack.reporting.encryptionKey: "chenqionghe"
xpack.security.encryptionKey: "122333444455555666666777777788888888"
xpack.encryptedSavedObjects.encryptionKey: "122333444455555666666777777788888888"
```
啟動
```
./bin/kibana
```
開啟http://localhost:5601,畫風如下
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316124941303-817937361.png)
提示我們可以使用示例資料,也可以使用自己已有的資料,我把示例資料都下載了,單擊側面導航中的 Discover 進入 Kibana 的資料探索功能:
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316124947014-1689568981.png)
可以看到資料已經匯入了,我們可以直接使用查詢欄編寫語句查詢
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316124952198-613982968.png)
# 三、如何載入自定義索引
接下來演示載入已經建立book索引
單擊 Management 選項
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125002324-1761768512.png)
然後單擊 Index Patterns 選項。
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125008549-1126155590.png)
點選Create index pattern定義一個新的索引模式。
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125012923-171985027.png)
點選Next step
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125016914-557679240.png)
點選Create index pattern
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125023366-1540814218.png)
出來如下介面,列出了所有index中的欄位
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125029588-742105904.png)
接下來,我們再來使用一下kibana檢視已經匯入的索引資料
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125035741-317517608.png)
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125040327-1265830382.png)
可以看到,已經能展示和檢索出我們之前匯入的資料,奧利給!
# 四、如何搜尋資料
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125057330-1304119143.png)
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316130346946-609181862.png)
可以看到,我們能很方便地搜尋欄使用Llucene查詢,查詢語法可以參考[Lucene查詢語法彙總](https://www.cnblogs.com/chenqionghe/p/12501218.html)
# 五、如何切換中文
在`config/kibana.yml`新增
```
i18n.locale: "zh-CN"
```
重新啟動,即可生效
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125109335-1109503028.png)
# 六、如何使用控制檯
控制檯外掛提供一個使用者介面來和 Elasticsearch 的 REST API 互動。控制檯有兩個主要部分: editor ,用來編寫提交給 Elasticsearch 的請求; response 面板,用來展示請求結果的響應。在頁面頂部的文字框中輸入 Elasticsearch 伺服器的地址。預設地址是:“localhost:9200”。
點選左側欄的[Dev Tools],可以看到如下介面,可以很方便地執行命令
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125117540-1728278009.png)
示例操作
```
# 檢視所有節點
GET _cat/nodes
# 檢視book索引資料
GET book/_search
{
"query": {
"match": {
"content": "chenqionghe"
}
}
}
# 新增一條資料
POST book/_doc
{
"page":8,
"content": "chenqionghe喜歡運動,繩命是如此的精彩,繩命是多麼的輝煌"
}
# 更新資料
PUT book/_doc/iSAz4XABrERdg9Ao0QZI
{
"page":8,
"content":"chenqionghe喜歡運動,繩命是剁麼的回晃;繩命是入刺的井猜"
}
# 刪除資料
POST book/_delete_by_query
{
"query": {
"match": {
"page": 8
}
}
}
# 批量插入資料
POST book/_bulk
{ "index":{} }
{ "page":22 , "content": "Adversity, steeling will strengthen body.逆境磨練意志,鍛鍊增強體魄。"}
{ "index":{} }
{ "page":23 , "content": "Reading is to the mind, such as exercise is to the body.讀書之於頭腦,好比運動之於身體。"}
{ "index":{} }
{ "page":24 , "content": "Years make you old, anti-aging.歲月催人老,運動抗衰老。"}
{ "index":{} }
```
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125129865-1244626749.png)
# 七、如何使用視覺化
Kibana視覺化控制元件基於 Elasticsearch 的查詢。利用一系列的 Elasticsearch 查詢聚合功能來提取和處理資料,再通過建立圖表來呈現資料分佈和趨勢
點選Visualize選單,進入視覺化圖表建立介面,Kibana自帶有上10種圖表,我們來建立一個自己的圖表
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125145083-1814220051.png)
我們來新增一個直方圖
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125152438-1029425675.png)
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125156751-1132660304.png)
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125201527-125419832.png)
可以看到,預設已經有一個Y軸了,統計的是數量,我們新增一個X軸,點選Buckets下的Add
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125207450-1245127647.png)
如下,我選擇了customer_id欄位作為x軸
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125211675-1397580860.png)
執行後如下
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125215674-905614276.png)
儲存一下
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125218783-708512294.png)
# 八、如何使用儀表盤
Kibana 儀表板(Dashboard) 展示儲存的視覺化結果集合。
就是可以把上面定義好的圖表展示
建立一個Dashboard
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125226243-447072527.png)
新增已經存在的圖表
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125228657-170981334.png)
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125232234-303602763.png)
新增完後儲存即可,我們可以定製出非常豐富的面板,如下
![](https://img2020.cnblogs.com/blog/662544/202003/662544-20200316125310123-346878926.png)
Kibana的使用就是這麼簡單,是不是覺得超簡單,建議自己去安裝使用一下,加深印象,light weight