1、安装
我们已经配置过Elasticsearch的yum源,这里可以直接使用。
# dnf list --enablerepo=elasticsearch kibana
# dnf -y install --enablerepo=elasticsearch kibana
安装完成后查看
# rpm -ql kibana|grep 'kibana/bin'
2、配置
# mv /etc/kibana/kibana.yml /etc/kibana/kibana.yml.demo
# vi /etc/kibana/kibana.yml
内容如下:
server.host: "192.168.1.248"
elasticsearch.hosts: ["http://192.168.1.241:9200", "http://192.168.1.243:9200", "http://192.168.1.243:9200"]
kibana.index: ".kibana"
i18n.locale: "zh-CN"
xpack.security.encryptionKey: "c758d288d68090517d788f027e906b6e"
xpack.encryptedSavedObjects.encryptionKey: "cde758d288d68090517d788f027e906b6e"
path.data: "/data/kibana"
注:elasticsearch.hosts只能是必须是主节点的url
Kibana跟Elasticsearch如果安装在同一台虚拟机上,可能会导致kibana无法启动,具体原因是什么,我还在探索中。
目录相关配置:
# mkdir -p /data/kibana
# chown -R kibana:kibana /data/kibana
配置文件官方参考:https://www.elastic.co/guide/en/kibana/current/settings.html
# systemctl start kibana
# systemctl restart kibana
# systemctl status kibana
查看是否启动
# ps -aux| grep -v grep | grep kibana
#
# tail -f /var/log/messages #查看启动日志
# journalctl -u kibana #只查看kibana启动日志 (会显示很多条最新的在下面)
# journalctl -xe ##查看最新的启动日志
Web访问管理:http://192.168.1.240:5601/
命令参考
利用该工具可以复习下基本的ES操作API,常见查询方法如下
#显示集群所有的节点
GET /_cat/nodes?v
#查询所有索引
GET /_cat/indices?v
GET /_cat/indices?v&h=health,status,index
#创建索引
PUT /bamboo
#删除索引
DELETE /bamboo
#创建索引对应的mapping和setting
PUT /bamboo
{
“mappings”: {
“properties”: {
“title”: { “type”: “text” },
“name”: { “type”: “text” },
“age”: { “type”: “integer” },
“created”: {
“type”: “date”,
“format”: “strict_date_optional_time||epoch_millis”
}
}
},
“settings”:{
“index”:{
“number_of_shards”: 5,
“number_of_replicas”: 2
}
}
}
#获取当前索引的setting信息
GET /bamboo/_settings
GET /bamboo/_mapping
#获取所有的索引mapping信息
GET _all/_mapping
#添加一条数据
PUT /bamboo/_doc/1
{
“name”:“zs”,
“title”:“张三”,
“age”:18,
“created”:“2018-12-25”
}
#修改一条数据的某个属性值
PUT /bamboo/_doc/1
{
“name”:“lxs”,
“title”:“李小四”
}
GET /bamboo/_doc/100
DELETE /bamboo/_doc/1
#批量插入多个document,_id不指定则系统生成字符串
POST /bamboo/_doc/_bulk
{“index”:{"_id":2}}
{“name”:“ww”,“title”:“王五”,“age”:18,“created”:“2018-12-27”}
{“index”:{}}
{“name”:“zl”,“title”:“赵六”,“age”:25,“created”:“2018-12-27”}
#批量操作(包含修改和删除)
POST /bamboo/_doc/_bulk
{“update”:{"_id":“1”}}
{“doc”:{“title”:“王小五”}}
{“delete”:{"_id":“2”}}
#只获取字段name,age
GET /bamboo/_doc/1?_source=name,age
#聚集查询 id为1,2的数据
GET /bamboo/_doc/_mget
{
“docs”:[
{
“_id”: 2
},
{
“_id”: 1
}
]
}
GET /bamboo/_doc/_search
{“query”:{“bool”:{“must”:[{“match_all”:{}}],“must_not”:[],“should”:[]}},“from”:0,“size”:10,“sort”:[],“aggs”:{}}
会提示:#! Deprecation: [types removal] Specifying types in search requests is deprecated.
未来会删除type类型,所以在搜索的时候不建议使用,正确的方法是:
GET /bamboo/_search
{“query”:{“bool”:{“must”:[{“match_all”:{}}],“must_not”:[],“should”:[]}},“from”:0,“size”:10,“sort”:[],“aggs”:{}}