安装
官网下载rpm安装包,直接安装即可,ES 7.x 不需要本地 JDK 环境支持,其中elasticsearch直接启动,kibana稍微配置一下
vim /etc/kibana/kibana.yml
server.port: 5601
server.host: "192.168.196.133"
elasticsearch.hosts: ["http://localhost:9200"]
然后启动即可, 使用http://192.168.196.133:5601/status
可以看kibana状态
概念入门与使用
Node 与 Cluster
Elastic 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例。
单个 Elastic 实例称为一个节点(node)。一组节点构成一个集群(cluster)。
文档(Document)
Elasticsearch 是面向文档,文档是所有搜索数据的最小单元。
- 案例一:每个公司都有业务日志平台,比如交易业务日志。
文档:每一条日志文件中的日志项,就是文档 - 案例二:可以搜索并播放电影的在线视频网站
文档:每一个电影的具体信息,就是文档 - 案例三:可以搜索并下载文件的云存储网站,类似百度云
文档:每一个文件具体内容信息,就是文档
等等案例很多,那么文档就是类似数据库里面的一条长长的存储记录。文档(Document)是索引信息的基本单位。
文档被序列化成为 JSON 格式,物理保存在一个索引中。
所以, Index 里面单条的记录称为 Document(文档)。许多条 Document 构成了一个 Index。
同一个 Index 里面的 Document,不要求有相同的结构(scheme),但是最好保持相同,这样有利于提高搜索效率。
索引(Index)
索引,就是相似类型文档的集合, 就是文档的容器,是一类文档的集合
Elastic 会索引所有字段,经过处理后写入一个反向索引(Inverted Index)。查找数据的时候,直接查找该索引。
所以,Elastic 数据管理的顶层单位就叫做 Index(索引)。它是单个数据库的同义词。每个 Index (即数据库)的名字必须是小写。
分片(Shards)
分片就是咱们在ES中所有数据的文件块,也是数据的最小单元块,整个ES集群的核心就是对所有分片的分布、索引、负载、路由等达到惊人的速度
实列场景:
假设 IndexA 有2个分片,我们向 IndexA 中插入10条数据 (10个文档),那么这10条数据会尽可能平均的分为5条存储在第一个分片,剩下的5条会存储在另一个分片中。
和主流关系型数据库的表分区的概念有点类似,如果你比较熟悉关系型数据库的话。
索引建立后,分片个数是不可以更改的
基本操作
可以直接通过restful接口或者kibana界面来图形化操作elasticsearch
图形化操作
进入kibana, 进入控制台

然后可以执行对应命令

查看节点信息
[root@localhost czs]# curl -X GET 'http://localhost:9200/_cat/nodes?v'
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
127.0.0.1 10 82 2 0.00 0.04 0.08 dilm * localhost.localdomain
查看当前节点Index
[root@localhost czs]# curl -X GET 'http://localhost:9200/_cat/indices?v'
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
green open .kibana_task_manager_1 FPkvGxEbSPm3_-lPI9Lehw 1 0 2 0 43.4kb 43.4kb
green open .apm-agent-configuration hGI4ihJjRFuI1JMvY9LkPw 1 0 0 0 283b 283b
green open .kibana_1 kQQwN0E1TYWW0-M4uSXGOw 1 0 6 0 31.1kb 31.1kb
Restful API
# 查看索引相关信息
GET kibana_sample_data_ecommerce
# 查看索引的文档总数
GET kibana_sample_data_ecommerce/_count
# 查看前10条文档,了解文档格式
POST kibana_sample_data_ecommerce/_search
{
}
# _cat indices API
# 查看indices
GET /_cat/indices/kibana*?v&s=index
# 查看状态为绿的索引
GET /_cat/indices?v&health=green
# 按照文档个数排序
GET /_cat/indices?v&s=docs.count:desc
# 查看具体的字段
GET /_cat/indices/kibana*?pri&v&h=health,index,pri,rep,docs.count,mt
# How much memory is used per index?
GET /_cat/indices?v&h=i,tm&s=tm:desc
网友评论