阅读完需:约 3 分钟
新建索引
通过 head 插件新建索引
在 head 插件中,选择 索引选项卡,然后点击新建索引。新建索引时,需要填入索引名称、分片数以及副本数。
索引创建成功后,如下图:
0、1、2、3、4 分别表示索引的分片,粗框表示主分片,细框表示副本(点一下框,通过 primary 属性可以查看是主分片还是副本)。.kibana 索引只有一个分片和一个副本,所以只有 0。
通过请求创建
可以通过 postman 发送请求,也可以通过 kibana 发送请求,由于 kibana 有提示,所以这里采用 kibana。
创建索引请求:
索引创建成功后,如下图:
PUT test
创建成功后,可以查看索引信息:
需要注意两点:
- 索引名称不能有大写字母
- 索引名是唯一的,不能重复,重复创建会出错
更新索引
索引创建好之后,可以修改其属性。
例如修改索引的副本数:
PUT test/_settings
{
"number_of_replicas": 2
}
修改成功后,如下:
修改索引的读写权限
索引创建成功后,可以向索引中写入文档:
PUT test/_doc/1
{
"title":"三国演义"
}
写入成功后,可以在 head 插件中查看:
默认情况下,索引是具备读写权限的,当然这个读写权限可以关闭。
例如,关闭索引的写权限:
PUT test/_settings
{
"blocks.write": true
}
关闭之后,就无法添加文档了。关闭了写权限之后,如果想要再次打开,方式如下:
PUT test/_settings
{
"blocks.write": false
}
其他类似的权限有:
- blocks.write
- blocks.read
- blocks.read_only
查看索引
head 插件查看方式如下:
请求查看方式如下:
GET test/_settings
也可以同时查看多个索引信息:
GET book,test/_settings
也可以查看所有索引信息:
GET _all/_settings
删除索引
head 插件可以删除索引:
请求删除如下:
DELETE test
删除一个不存在的索引会报错。
索引打开/关闭
关闭索引:
POST book/_close
打开索引:
POST book/_open
当然,可以同时关闭/打开多个索引,多个索引用 , 隔开,或者直接使用 _all 代表所有索引。
复制索引
索引复制,只会复制数据,不会复制索引配置。
POST _reindex
{
"source": {"index":"test"},
"dest": {"index":"test_new"}
}
复制的时候,可以添加查询条件。
索引别名
可以为索引创建别名,如果这个别名是唯一的,该别名可以代替索引名称。
POST /_aliases
{
"actions": [
{
"add": {
"index": "test",
"alias": "test_xjh"
}
}
]
}
将 add 改为 remove 就表示移除别名:
POST /_aliases
{
"actions": [
{
"remove": {
"index": "test",
"alias": "test_xjh"
}
}
]
}
查看某一个索引的别名:
GET /book/_alias
查看某一个别名对应的索引(book_alias 表示一个别名):
GET /book_alias/_alias
可以查看集群上所有可用别名:
GET /_alias