不知道什么是ELK的自行百度去哈。。。
算了我浪费点时间打字说下吧,其实就是elasticsearch、logstash、kibana三个工具的组合。
这三个工具常用来做日志实时分析,就是logstash把系统运行的日志归并到elasticsearch中,elasticsearch提供存储和检索服务,kibana则是一个可视化的日志分析web界面。
Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据等功能。它的特点有:分布式、零配置、自动发现、索引自动分片、索引副本机制、Restful风格接口、多数据源、自动搜索负载等,具体详细介绍可以百度下其他博客的专篇介绍。
Logstash主要是用来日志的搜集、分析、过滤日志的工具,支持多种多样的数据获取方式。一般工作方式为c/s架构,Client端安装在需要收集日志的服务器上,Server端负责将收到的各节点日志进行过滤、修改等操作,再一并发往Elasticsearch上去。
Kibana可以为Logstash和ElasticSearch在收集、存储的日志基础上进行分析时友好的Web界面,可以帮助汇总、分析和搜索重要数据日志。
介绍完毕,废话不多说开撸!
首先我从这个官网地址 Elastic Observability and Security — built on Elasticsearch | Elastic
下载了ELK三个工具。
注意:后续新版的下载界面可能有变化,下载后安装过程可参考本文
下载解压,统一放在了一个叫ELK的文件夹下
注意 ELK三个工具版本保持一致,博主下载的是当时最新版8.9.0
注意要求配置了JDK8的环境变量!否则会报错(补充: 后面的高级版本使用了内置的jdk,不需要专门配置jdk了)
博主因为装了IBM WebSphere MQ,jdk的环境变量搞得十分混乱,环境变量的Classpath指向的居然是 MQ的自带jdk。。。导致出现如下报错
直接懵逼,百度也没有答案,后来直接把IBM WebSphere MQ卸载删除,有关环境变量恢复干净了,才得以启动成功
注意jdk8的lib下有tools.jar,jdk11以后都没有了。。。 所以elasticsearch运行要求的jdk版本不能太高,网上说还可以使用es自带的jdk,点进去看了下
也没有tools.jar,懒得折腾了,就用自己本机配置的jdk吧
一、elasticsearch配置启动
cmd进入到elasticsearch的bin目录下,输入elasticsearch,或者直接进bin目录下双击elasticsearch.bat
启动发现报错,localhost:9200无法访问,中间的是错过程就不说了,都是泪。。。百度了很久直接上解决方法:
需要找到配置文件elasticsearch.yml
修改以下几个部分,改成如下图所示,分别是免密登录,去除ssl验证,设置访问ip为127.0.0.1
修改好后启动如下
可以看到启动日志有两个主要端口9200和9300
9200作为Http协议,主要用于外部通讯
9300作为Tcp协议,jar之间就是通过tcp协议通讯
ES集群之间是通过9300进行通讯
浏览器访问localhost:9200,返回json串,启动成功
至此elasticsearch启动成功。
二、kibana配置启动
然后是kibana,直接cmd进入bin目录下,执行kibana.bat
然后浏览器打开localhost:5601
至此kibana启动完毕。
三、logstash配置启动
最后是logstash,首先找到config文件夹下logstash-sample.conf文件
修改添加配置
cmd进入logstash下的bin目录,执行以下命令启动服务:
按照自己的配置路径来
logstash.bat -f D:\devSoftware\ELK\logstash-8.9.0\config\logstash-sample.conf
启动结果如下:
浏览器访问localhost:9600
至此logstash启动成功!
搞了个批量启动的脚本,在文章顶部,不用一个一个的启动了,下载后按照自己的安装路径修改下即可。
以上就是ELK在windows11(我是win11)环境下的下载安装启动步骤就完成了,觉得对您有帮助的话,当忙点个赞哈