ELK最新版本-7.5.0环境搭建

ELK最新版本-7.5.0环境搭建

生产环境ELK使用场景如下:

  • dubbox分布式服务日志通过日志收集存储在elasticsearch上面
  • 通过kibana展示elasticsearch上面的数据
  • 日志同步到es上面的方式为flume、kafka、logstash等

解决了什么问题:

  • 方便开发人员进行线上日志查看、分析、定位问题
  • 避免开发人员直接操作线上服务器,提高线上服务器安全系数
  • 日志收集到kafka中,方便后续的数据采集以进行后续的大数据分析
  • elasticsearch的引入,提供了全站搜索的能力,方便后续业务接入以及架构优化

ELK下载(本文以window系统为例,Linux系统大同小异)

  • elasticsearch下载:elasticsearch-7.5.0-windows-x86_64.zip
  • kibana下载:kibana-7.5.0-windows-x86_64.zip
  • logstash下载:logstash-7.5.0.zip

我这里把下载下来的三个包放在了G:\elk-7.5.0\目录下
ELK最新版本-7.5.0环境搭建_第1张图片

  • elasticsearch启动:双击G:\elk-7.5.0\elasticsearch-7.5.0\bin\elasticsearch.bat
    ELK最新版本-7.5.0环境搭建_第2张图片
    在浏览器打开http://localhost:9200,如图所示代表安装成功
    ELK最新版本-7.5.0环境搭建_第3张图片
  • kibana启动:双击G:\elk-7.5.0\kibana-7.5.0\bin\kibana.bat
    ELK最新版本-7.5.0环境搭建_第4张图片
    在浏览器打开http://localhost:5601,如图所示代表安装成功
    ELK最新版本-7.5.0环境搭建_第5张图片
  • 上述两步执行完成之后elasticsearch里面还没有数据,下面通过logstash采集springboot+logback的日志
    进入*G:\elk-7.5.0\logstash-7.5.0\bin*文件夹,新建文件logstash.conf,内容如下:
input {
	tcp {
		mode => "server"
        host => "0.0.0.0"
        port => 4567
        codec => json_lines
	}
}
output {
	elasticsearch {
		hosts => ["localhost:9200"]
		index => "logs-%{+YYYY.MM.dd}"
	}
}

执行命令:logstash.bat -f logstash.conf
ELK最新版本-7.5.0环境搭建_第6张图片
ELK最新版本-7.5.0环境搭建_第7张图片
此时logstash开启了一个tcp监听端口4567
在我们的springboog + logback项目中新增logstash的依赖,并在logback配置文件中新增:

	<appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
		<destination>localhost:4567</destination>
		<!-- 日志输出编码 -->
		<!--<encoder charset="UTF-8" class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">-->
	   <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
	           <providers>
	               <timestamp>
	                   <timeZone>UTC</timeZone>
	               </timestamp>
	          </providers>
	       </encoder>
	</appender>

此时在kibana里面就可以搜索到日志。

备注:elasticsearch7.5.0依赖JDK1.8以上的版本。

总结

ELK环境到此已经基本完成,不过还留下了几个细节需要完善,这个我将在下一篇博文中配合项目,具体介绍一下ELK结合CRUD的实际应用。

你可能感兴趣的:(ElasticSearch)