windows下ELK(ElasticSearch、Logstash、Kibana)环境的搭建

一:前言

ELK是ElasticSearch、Logstash、Kibana三个应用的缩写。 ElasticSearch简称ES,主要用来存储和检索数据。Logstash主要用来往ES中写入数据。Kibana主要用来展示数据。

三个软件都是开源的,可以从https://www.elastic.co/cn/products这里下载

二:安装

下载完之后直接解压到相应目录,比如像我这这样


这样就完成了安装

三:配置与启动

1.配置elastisearch

其实没什么好配置的,我只是修改了下data的存放目录

打开:E:\software\elasticsearch-6.1.0\config\elasticsearch.yml,修改如下


我的其他配置都是默认的,当然你也可以修改一些其他的配置

2.启动elasticsearch

点击:E:\software\elasticsearch-6.1.0\bin\elasticsearch.bat,就算是启动了,访问http://localhost:9200/可以看到如下说明成功


3.配置和启动logstash

logstash主要作用是插入数据,当然也可以直接使用elasticsearch来进行数据插入,参考:https://elasticsearch.cn/book/elasticsearch_definitive_guide_2.x/

logstash快速入门请参考:http://blog.csdn.net/wp500/article/details/41040213

我这边直接使用配置文件来进行数据的录入

在E:\software\logstash-6.1.0\bin中新建文本insert_2000w.conf,内容如下

input {
	file{
		path => "E:/temp/*.csv"
		start_position => beginning
	}
 }  
  
filter {
	grok {
		patterns_dir => "patterns.txt"
		match =>{ "message" => "%{DATA:name},%{DATA:person_id},%{DATA:email},%{DATA:tel},%{DATA:adress},%{DATA:from}%{S}" }
		}
	mutate{
		remove_field => ["host","path","message","@timestamp","@version"]
}
}
  
output {  
	elasticsearch { hosts => localhost 
					index => "sgdb"
					document_type =>"sgdb"}
	
	stdout { codec => rubydebug } 
}  

其中patterns.txt中记录的是模式,内容如下



E:/temp/*.csv中存储的是需要录入的数据,本文格式如下

Name,person_id,EMail,tell,Address,from


在E:\software\logstash-6.1.0\bin目录下命令行运行一下命令来进行数据录入

logstash.bat -f insert_2000w.conf
效果如下:




注意:logstash默认不会对1天前的数据进行处理

logstash每次对某一文件处理完之后便不会再次对它进行处理,如果想多次尝试对同一文件进行输入,需要删除E:\software\logstash-6.1.0\data\plugins\inputs\file下的文件

4.启动kibana

启动E:\software\kibana-6.1.0-windows-x86_64\bin\kibana.bat

访问http://localhost:5601 如下


然后在index Patterns中创建index Patterns

再往Discover中就可以对刚刚录入的数据进行搜索


猜你喜欢

转载自blog.csdn.net/luchengtao11/article/details/78841370