什么是ELK?
ELK由ElasticSearch、Logstash、Kibana三个根据组成。
ES是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
Logstash是一个完全开源的工具,可以对日志进行收集、分析、并将其存储供以后使用。
kibana也是一个开源和免费的工具,他Kibana可以为Logstash和ES提供的日志分析友好的Web界面,可以帮助您汇总、分析和搜索重要数据日志。
安装ELK
ELK官网:Elasticsearch Platform — Find real-time answers at scale | Elastic
下载:Download Elastic Products | Elastic
往下滑找到es、logstash、kibana
进入下载页面
解压缩如下图:
配置环境变量
es:
ES_JAVA_HOME = "es自带jdk路径"
启动ELK
1,启动es
双击elasticsearch.bat 启动服务
记下elastic用户的密码和token令牌
ps:如果忘记了密码可以通过下面这个命令
elasticsearch-reset-password.bat -u elastic
提示不安全点击高级,出现弹框输入用户名和密码
用户名为elastic、密码为刚刚记下的 密码
2,启动kibana
双击kibana.bat 启动服务
方法1:Configure manually
输入密码
如果密码忘记了,就通过重置命令重新获取
elasticsearch-reset-password.bat -u kibana_system
方法2:输入token令牌
校验 验证码
ps:token失效的话 重新生成
elasticsearch-create-enrollment-token --scope kibana
配置elastic
实质就是配置文件中添加以下配置
# This section was automatically generated during setup.
elasticsearch.hosts: ['https://172.24.0.1:9200']
elasticsearch.serviceAccountToken: AAEAAWVsYXN0aWMva2liYW5hL2Vucm9sbC1wcm9jZXNzLXRva2VuLTE2OTE2NzE2Mzg2ODA6aVRpQWp4YTZSbXU0dUZsa2FrTkY5UQ
elasticsearch.ssl.certificateAuthorities: ['E:\Middleware\elk\kibana-8.9.0\data\ca_1691671639451.crt']
xpack.fleet.outputs: [{id: fleet-default-output, name: default, is_default: true, is_default_monitoring: true, type: elasticsearch, hosts: ['https://172.24.0.1:9200'], ca_trusted_fingerprint: 31ee80fe1e5bc4836f7a134dfec69229ec6b606b38bf1ff3ea7158426e29ec05}]
进入kibana登录页面
找到dev-tools
3,启动logstash
logstash.bat -f .\config\logstash.conf
logstash.conf
# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.
input {
beats {
port => 5044
}
}
output {
elasticsearch {
hosts => ["https://localhost:9200"]
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
user => "elastic"
password => "w5IBc3X-M5wJ9Z7B6il0"
}
}
访问 http://localhost:9600