技巧干货:*敏*感*词*教你搭建 ELK 实时日志分析平台
优采云 发布时间: 2020-09-03 19:03教您如何构建ELK实时日志分析平台
全文搜索引擎Elasticsearch简介:集群构建
如果您已经了解并安装Elasticsearch,请继续执行下一步:了解并安装Kibana。
Kibana的介绍和安装
这部分主要说明如何下载和安装Kibana,以及如何安装Kibana插件,并将简要介绍Kibana界面。
首先,让我们看一下Kibana是什么?
什么是Kibana?
Kibana是专为Elasticsearch设计的开源分析和可视化平台。您可以使用Kibana搜索,查看和与Elasticsearch索引中存储的数据进行交互。您可以轻松实现高级数据分析和可视化。表格显示出来。
简要了解Kibana后,让我们开始下载当前使用Windows系统的Kibana 网站,因此,请下载Windows版本的Kibana下载软件包kibana- 7. 1. 0-windows-x86_6 4. zip。
运行Kibana
下载完成后,在本地解压缩。如果需要自定义Kibana,则可以在config目录中编辑kibana.yml文件。您需要在运行Kibana之前运行ElasticSearch(以下称为ES),因为Kibana基于ES,现在进入bin目录并打开kibana.bat以运行Kibana,我们现在打开浏览器,Kibana在5601端口上运行,如此打开:5601,打开后将显示以下页面:
导入示例数据并查看仪表板
进入主页后,将提示我们添加一些测试数据。在开箱即用的Kibana版本中,ES为我们准备了三个示例数据,电子商务网站订单和航空公司航班记录以及WEB 网站的日志,我们可以单击添加数据添加它们。添加完成后,我们可以打开“仪表板”界面,可以看到系统已为我们创建了一个收录数据的仪表板。
第一个是电子商务公司的利润报告,我们可以打开它看看:
在仪表板中,我们可以将多组视觉结果集成到单个页面中,然后提供搜索查询或单击视觉结果中的元素以指定过滤条件,从而实现结果过滤。仪表板可以帮助我们更全面地了解整体日志内容,并将每个可视结果与日志关联。以上是Kibana的仪表板功能。
开发工具
接下来,我将介绍开发工具,这是Kibana中非常有用的工具。实际上,在Kibana的ES中执行某些API很容易。例如,我们上面提到了检测正在运行的节点:GET / _cat / nodes?v,因此我们可以在Kibana中运行ES命令。
此外,Kibana的开发工具还具有许多快捷菜单操作,例如Ctrl + /来查看API帮助文档,其他所有人都可以自己进行浏览。
安装和查看插件
Kibana可以在Kibana中提供一些特定的应用程序,或者通过插件增强图表显示功能。 Kibana安装插件与ES非常相似。
输入kibana-plugin安装kibana-plugin安装以下载LogTrail插件。
在cmd中输入kibana-plugin列表以查看此计算机上安装的Kibana插件。
如果要删除该插件,可以使用kibana-plugin remove logtrail命令删除该插件。
到目前为止,我们将下载并安装Kibana,简要介绍Kibana的主要功能,并介绍开发工具。您可以自己在本地练习。
三个ELK兄弟中的最后一个:Logstash,让我们一起学习。
Logstash的介绍和安装
这部分主要是下载并安装Logstash,并通过Logstash将测试数据集导入ES。
不用多说了,让我们首先了解什么是Logstash?
什么是Logstash?
Logstash是开放源代码服务器端数据处理管道,可以同时转换来自多个源采集的数据,然后将数据发送到您喜欢的存储库。
Logstash可以动态采集,转换和传输数据,而不管格式或复杂性如何。使用Grok从非结构化数据中获取结构,从IP地址解码地理坐标,匿名或排除敏感字段,并简化整个处理过程。
数据经常以分散或集中的各种形式存在于许多系统中。 Logstash支持各种输入选项,可以同时捕获来自许多常见源的事件,并且可以以连续流方式轻松地从日志,指标,Web应用程序,数据存储和各种AWS服务中获取数据。 采集。
了解更多信息后,让我们下载并安装Logstash。
安装Logstash
访问Logstash的官方网站并进入下载页面。下载时,请注意与ES和Kibana相同的版本。此处下载的版本为7. 1. 0版本logstash- 7. 1. 0. zip。
下载后,解压缩或进入conf目录以修改logstash.conf进行配置。运行时,可以指定配置文件logstash -f logstash.conf来执行数据插入和转换。
安装完成后,让我们使用Logstash将数据导入ES。
使用Logstash导入ES
让我们导入测试数据集。首先,修改logstash.conf文件。内容是:
input {
file {
path => ["D:/SoftWare/logstash-7.1.0/csv/movies.csv"]
start_position => "beginning"
sincedb_path => "D:/SoftWare/logstash-7.1.0/csv/null"
}
}
filter {
csv {
separator => ","
columns => ["id","content","genre"]
}
mutate {
split => { "genre" => "|" }
remove_field => ["path", "host","@timestamp","message"]
}
mutate {
split => ["content", "("]
add_field => { "title" => "%{[content][0]}"}
add_field => { "year" => "%{[content][1]}"}
}
mutate {
convert => {
"year" => "integer"
}
strip => ["title"]
remove_field => ["path", "host","@timestamp","message","content"]
}
}
output {
elasticsearch {
hosts => "http://localhost:9200"
index => "movies"
document_id => "%{id}"
}
stdout {}
}
测试数据集来自Movielens:您可以下载它。配置文件中的路径将根据您下载的测试文件的路径进行修改。另外,配置文件的逻辑将在后面的文章中进行说明。
现在执行命令logstash -f logstash.conf将数据导入ES。当您看到打印到控制台的数据时,该数据也将被写入ES。
到目前为止,我们已经成功安装了Logstash,并通过Logstash将测试数据集写入ES,并且已经构建了我们的ELK实时日志分析平台。
补充
通过Logstash将测试数据集写入ES后,朋友会发现电影索引状态为*敏*感*词*,不用担心,*敏*感*词*表示存在尚未分配的副本分片。
因为这台计算机上仅启动了一个节点,并且影片索引设置有一个主分区和一个副本分区,所以不能在一个节点上分配主分区和辅助分区。
解决方案:修改索引设置,将副本设置为0,或向群集添加一个节点,状态将变为绿色。
摘要
本文主要了解什么是ELK,然后通过实际操作与您一起构建ELK日志分析平台。如果您在施工过程中有任何疑问,请留言以供讨论。
如果ELK安装包或测试数据集的下载速度很慢,则可以在[Wu Peixuan]官方帐户上回复elk信息以获取它。
参考
elastic.co/guide/zh-cn/kibana/ 7. 1 / index.html
elastic.co/guide/zh-CN/logstash/ 7. 1 / index.html
Elasticsearch核心技术与实战