1.下载 Kibana
下载地址
选择要下载的版本 尽量和 ES 版本保持一致,版本采用 7.12.0 并选择 linux 版本
2.安装
代码语言:apl复制#安装目录
cd /usr/local
#解压
tar -zxvf kibana-7.12.0-linux-x86_64.tar.gz
#改名
mv kibana-7.12.0-linux-x86_64 kibana
3.修改配置
修改 kibana.yml
代码语言:apl复制cd /usr/local/kibana
vim config/kibana.yml
代码语言:apl复制server.port: 5601 #kibana端口
server.host: "0.0.0.0" #所有主机都能访问,或者也可以指定一个ip
elasticsearch.hosts: "http://es服务公网IP:9200" #配置es的访问地址
kibana.index: ".kibana"
i18n.locale: "zh-CN" #配置项默认是英文,配置成中文的
代码语言:apl复制#root
chown -R elasticsearch:elasticsearch /usr/local/kibana
4.启动
代码语言:apl复制#切换用户
su elasticsearch
#启动
cd /usr/local/kibana/bin
./kabana
#后台启动
nohup sh /usr/local/kibana/bin/kibana &
5.验证
代码语言:apl复制#端口号
netstat -ntlp | grep 5601
#浏览器
http://47.119.162.180:5601/
#控制台
http://47.119.162.180:5601/app/dev_tools#/console
6.测试 SQL
代码语言:apl复制GET _search
{
"query": {
"match_all": {}
}
}
GET /
GET /_cluster/health
GET /_cat/health?v
GET /_cat/indices?v
PUT /demo_index?pretty
DELETE /demo_index?pretty
PUT /book
PUT /book/_doc/1
{
"id":1,
"title":"这是一文章",
"content":"xxxxx",
"comment":"备注信息",
"mobile":"13344556677"
}
PUT /book/_doc/2
{
"id":1,
"title":"这是一11文章",
"content":"xxxxx",
"comment":"备注信息",
"mobile":"13344556677"
}
GET /book/_doc/1
POST /book/_doc/1/_update
{
"doc": {
"title": "这是一333文章"
}
}
POST /book/_update/1
{
"doc": {
"title": "这是一3333333444555文章"
}
}
DELETE /book/_doc/1
POST /book/_doc/
{
"id":1,
"title":"这是一11文章",
"content":"xxxxx",
"comment":"备注信息",
"mobile":"13344556677"
}
GET /book/_doc/1
GET /book/_doc/1?_source_includes=id,title
PUT /read_index/_doc/1/_create
{
"id":1,
"title":"这是一11文章",
"content":"xxxxx",
"comment":"备注信息",
"mobile":"13344556677"
}
#插入数据
PUT /test_index/_doc/6
{
"num": 0
}
#执行脚本
POST /test_index/_doc/6/_update
{
"script": "ctx._source.num =1"
}
#查询数据
GET /test_index/_doc/6
GET /test_index/_search
7.kibana 控制台
代码语言:apl复制http://47.119.162.180:5601/app/dev_tools#/console
8.Grok 测试
9.格式化
10.历史记录
11.仪表板
Elasticsearch是一个基于Apache Lucene的开源搜索引擎,它提供了分布式、多租户的搜索服务及数据分析功能。Elasticsearch的架构是面向文档的,它将所有数据存储为JSON文档,每个文档都有唯一的ID,而且处理结构化和非结构化数据非常容易。它使用诸如分片、副本、修订等技术来确保存储方案具备可靠性、高可用性和可伸缩性。Elasticsearch采用基于RESTful API(HTTP)的接口,提供非常完善的查询语句;同时还支持实时字段计算、聚合分析、搜索建议、中文分词以及Geo查询等复杂操作。
Elasticsearch的主要优点包括:
- 分布式设计:Elasticsearch天然支持分布式,可以很容易地横向扩容,处理PB级结构化或非结构化数据。
- 高效的搜索能力:Elasticsearch提供了全文搜索功能,支持模糊查询、前缀查询、通配符查询等,并且具有强大的聚合分析功能。
- 快速的查询速度:Elasticsearch的底层使用Lucene作为搜索引擎,并在此之上做了多重优化,保证了用户对数据查询的需求。
- 易用性:Elasticsearch提供了简单的RESTful API,天生的兼容多语言开发,上手容易,开箱即用。
- 丰富的生态圈:Elasticsearch有丰富的插件和工具,如Logstash、Kibana、Beats等,形成了强大的Elastic Stack生态。
Elasticsearch的使用场景包括:
- 应用搜索:为网站或应用程序提供搜索功能,如电商、社交媒体等。
- 日志记录和日志分析:收集、存储和分析服务器日志、应用日志等。
- 基础设施监控:监控服务器、网络设备等基础设施的性能指标。
- 安全分析:分析安全日志,进行入侵检测和威胁分析。
- 地理位置数据分析:处理地理空间数据,提供地理位置搜索服务。
- 商业智能:对商业数据进行分析,提供决策支持。
Elasticsearch的引入主要是为了应对大数据环境下的海量数据检索和实时分析需求,它通过分布式架构和高效的索引机制,提供了快速的搜索和分析能力。然而,Elasticsearch也存在一些潜在风险,如响应时间问题和任务恢复延迟等,需要通过优化配置和维护来降低这些风险的影响。