欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Kibana的安装及基本操作

程序员文章站 2024-01-22 23:00:28
...

1. Kibana的安装

Kibana是一个针对Elasticsearch的开源分析及可视化平台,使用Kibana可以查询、查看并与存储在ES索引的数据进行交互操作,使用Kibana能执行高级的数据分析,并能以图表、表格和地图的形式查看数据。

# 1.下载Kibana
https://www.elastic.co/downloads/kibana
https://www.elastic.co/cn/downloads/past-releases/kibana-6-8-0
注意:Kibana要和安装的ElasticSearch对应版本

# 2. 到kibana目录下解压kibana
- tar -xzf kibana-6.8.0-linux-x86_64.tar.gz

# 3. 到kibana的config目录
- cd ../kibana-6.8.0-linux-x86_64/config
    
# 4. 编辑kibana配置文件
- vim kibana.yml

# 5. 修改如下配置(192.168.202.200为虚拟机的IP,根据自己实际IP修改)
- server.port: 5601  #去掉'#'符号,开启端口
- server.host: "192.168.202.200"                				 #ES服务器主机地址
- elasticsearch.hosts: ["http://192.168.202.200:9200"]   #ES服务器地址

Kibana的安装及基本操作

# 6. 启动kibana
- cd ../kibana-6.8.0-linux-x86_64/bin
- ./kibana

# 7. 访问kibana的web界面  
- http://192.168.202.200:5601/   #kibana默认端口为5601 使用主机:端口直接访问即可    

Kibana的安装及基本操作

如果遇到这个报错:

Another Kibana instance appears to be migrating the index. Waiting for that migration to complete. If no other Kibana instance is attempting migrations, you can get past this message by deleting index .kibana_1 and restarting Kibana.

且访问时:

Kibana的安装及基本操作

解决办法:

- curl -XDELETE http://localhost:9200/.kibana_1

Kibana的安装及基本操作


2. Kibana的基本操作

Kibana的安装及基本操作

2.1 索引(Index)的基本操作

PUT /dangdang/       	  	创建索引
DELETE /dangdang					删除索引
DELETE /*									删除所有索引
GET /_cat/indices?v 			查看索引信息

2.2 类型(type)的基本操作

创建类型

1.创建/dangdang索引并创建(product)类型
PUT /dangdang             
{
  "mappings": {
    "product": {
      "properties": {
        	"title":    { "type": "text"  },
        	"name":     { "type": "text"  },
       		"age":      { "type": "integer" },
        	"created":  {
         		 "type":   "date"
        		}
      		}
    	}
  	}
}
注意: 这种方式创建类型要求索引不能存在

Mapping Type: : text , keyword , date ,integer, long , double , boolean or ip

查看类型

GET /dangdang/_mapping/product # 语法:GET /索引名/_mapping/类型名

2.3 文档(document)的基本操作

添加文档

PUT /ems/emp/1   #/索引/类型/id
{
  "name":"赵小六",
  "age":23,
  "bir":"2012-12-12",
  "content":"这是一个好一点的员工"
}

查询文档

GET /ems/emp/1  
返回结果:
{
  "_index": "ems",
  "_type": "emp",
  "_id": "1",
  "_version": 1,
  "found": true,
  "_source": {
    "name": "赵小六",
    "age": 23,
    "bir": "2012-12-12",
    "content": "这是一个好一点的员工"
  }
}

删除文档

DELETE /ems/emp/1
{
  "_index": "ems",
  "_type": "emp",
  "_id": "1",
  "_version": 2,
  "result": "deleted", #删除成功
  "_shards": {
    "total": 2,
    "successful": 1,
    "failed": 0
  },
  "_seq_no": 1,
  "_primary_term": 1
}

更新文档

1.第一种方式  更新原有的数据
    POST /dangdang/emp/1/_update
    {
      "doc":{
        "name":"xiaohei"
      }
    }
2.第二种方式  添加新的数据
    POST /ems/emp/1/_update
    {
      "doc":{
        "name":"xiaohei",
        "age":11,
        "dpet":"你好部门"
      }
    }
3.第三种方式 在原来数据基础上更新
	POST /ems/emp/1/_update
    {
      "script": "ctx._source.age += 5"
    }
ES的使用语法风格为:
<REST Verb> /<Index>/<Type>/<ID>
REST操作    /索引/类型/文档id

批量操作

1. 批量索引两个文档
    PUT /dangdang/emp/_bulk
 	{"index":{"_id":"1"}} 
  		{"name": "John Doe","age":23,"bir":"2012-12-12"}
	{"index":{"_id":"2"}}  
  		{"name": "Jane Doe","age":23,"bir":"2012-12-12"}
    
2. 更新文档同时删除文档
    POST /dangdang/emp/_bulk
		{"update":{"_id":"1"}}
			{"doc":{"name":"lisi"}}
		{"delete":{"_id":2}}
		{"index":{}}
			{"name":"xxx","age":23}
 
注意:批量时不会因为一个失败而全部失败,二十继续执行后续操作,批量在返回时按照执行的状态开始返回