Elk搭建
说明:
1.本次搭建版本为 7.6.2,将所有tar文件放置到 /usr/local/elk 目录下
2.linux环境下启动需要新建用户
新建一个用户elk,命令:
adduser elk
passwd elk//修改es用户密码
将elk文件夹下赋予权限命令:
chown -R elk /usr/local/elk
切换用户
su elk
后续操作都是通过elk用户
3.注意开启端口访问(9200,5601,4569)
一、配置启动elastcsearch:
1.elasticsearch下载解压
2.修改配置文件
我们进入elasticsearch 下的config 文件夹,编辑 elasticsearch.yml 文件:
vim elasticsearch.yml
node.name: node-1
cluster.initial_master_nodes: ["node-1"]
network.host: 0.0.0.0 #对外开放访问
http.port: 9200 #默认9200
跨域问题添加如下几行
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
3.启动elasticsearch
cd到bin目录下,然后用 ./elasticsearch & 命令启动 。
启动失败,提示
bound or publishing to a non-loopback address, enforcing bootstrap checks
切换到root用户执行
sed -i ‘$avm.max_map_count=262144’ /etc/sysctl.conf
sysctl -p
启动成功访问 htttp://ip:9200 代表成功
二、配置启动kibana
1.kibana下载解压
2.修改配置文件
我们进入kibana下的config 文件夹,编辑 kibana.yml 文件:
vim elasticsearch.yml
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://localhost:9200"]
i18n.locale: "zh-CN"
3.启动kibana
在bin目录下用 ./kibana &命令启动
启动成功访问 htttp://ip:5601代表成功
三、配置logstash日志收集(重点)
1.logstash下载解压
2.创建新的配置文件
在config目录新建logstash.conf文件 ,文件内容:
input
beats {
port => 5044
}
#tcp端口
tcp {
port => 4569
codec => "json"
}
}
#过滤
filter {
grok {
match => {
"message" => "(?<date>\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2},\d{3})\]\[(?<level>[A-Z]{4,5})\]\[(?<thread>[A-Za-z0-9/-]{4,40})\]\[(?<class>[A-Za-z0-9/.]{4,40})\]\[(?<msg>.*)"
}
remove_field => ["message"]
}
#过滤日志
if [level] !~ "(ERROR|WARN|INFO)" {
drop {}
}
}
output {
if[appname] != "" {
elasticsearch {
# 链接es地址
hosts => ["http://127.0.0.1:9200"]
index => "%{[appname]}-%{+YYYY.MM.dd}" #索引名称
}
} else {
elasticsearch {
hosts => ["http://127.0.0.1:9200"]
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
}
}
}
3.启动logstash
用 .bin/logstash -f ./config/logstash.conf命令启动
四、至此elk文件已配置完成,接下来在项目里面配置
1.引入lagstash maven依赖
<!--集成logstash-->
<dependency>
<groupId>net.logstash.logback</groupId>
<artifactId>logstash-logback-encoder</artifactId>
<version>5.3</version>
</dependency>
2.在resources下新建logback.xml 文件, 具体内容参考:
https://blog.youkuaiyun.com/weixin_43601821/article/details/122217118