docker快速部署
docker network create elk
docker run --name elasticsearch -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" --net=elk -d -p 10092:9200 -p 10093:9300 elasticsearch:7.12.1
sudo docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' elasticsearch
sudo docker run -d --name kibana --net elk -p 10256:5601 kibana:7.12.1
logf4j config配置
input {
tcp {
port => 3456
codec => "json"
}
}
output {
elasticsearch { hosts => ["172.18.0.2:9200"] }
stdout { codec => rubydebug }
}
启动logstash
docker run --name logstash -d \
-v /data/logstash/config:/config-dir \
-p 10345:3456 \
--net elk \
logstash:7.12.1 \
logstash -f /data/logstash/config/logstash.conf
配置数据源
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.12.1-linux-x86_64.tar.gz
tar xzvf filebeat-7.12.1-linux-x86_64.tar.gz
output.elasticsearch:
hosts: ["<es_url>"]
username: "elastic"
password: "<password>"
setup.kibana:
host: "<kibana_url>"
./filebeat modules enable kibana
./filebeat setup
./filebeat -e