配置elk
docker network create itmentu-net
docker run -d \ --name elasticsearch \ -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \ -e "discovery.type=single-node" \ -v es-data:/usr/share/elasticsearch/data \ -v es-plugins:/usr/share/elasticsearch/plugins \ --privileged \ --network itmentu-net \ -p 9200:9200 \ -p 9300:9300 \ elasticsearch:7.12.1
docker run -d \ --name kibana \ -e ELASTICSEARCH_HOSTS=http://192.168.211.130:9200 \ --network itmentu-net \ -p 5601:5601 \ kibana:7.12.1
docker run -it -p 4560:4560 --name logstash -d logstash:7.12.1
docker exec -it logstash /bin/bash
vi /usr/share/logstash/config/logstash.yml ( 修改为es地址 xpack.monitoring.elasticsearch.hosts: [ "http://192.168.72.110:9200" ] )
vi /usr/share/logstash/pipeline/logstash.conf
input {
tcp {
mode => "server"
port => 4560
}
}
filter {
}
output {
elasticsearch {
action => "index"
hosts => "192.168.72.110:9200"
index =>"test_log"
}
}
docker restart logstash
<appender name="logstash" class="net.logstash.logback.appender.LogstashTcpSocketAppender"> <destination>192.168.72.110:4560</destination> <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder"></encoder> </appender>