docker로 redis + ELK 스택을 설정하려고합니다. 원격 위치에서 로그를 받아 들여 logstash로 전달하려면 redis를 사용하고 싶습니다. 여기 docker-compose를 사용하여 redis + elk 스택
여기 내 고정 표시기 - compose.ymlelasticsearch:
image: elasticsearch:latest
command: elasticsearch -Des.network.host=0.0.0.0
ports:
- "9200:9200"
- "9300:9300"
volumes:
- /root/ebs:/usr/share/elasticsearch/data
logstash:
build: logstash/
command: logstash -f /etc/logstash/conf.d/logstash.conf
volumes:
- ./logstash/config:/etc/logstash/conf.d
ports:
- "5000:5000"
links:
- elasticsearch
kibana:
build: kibana/
volumes:
- ./kibana/config/:/opt/kibana/config/
ports:
- "5601:5601"
links:
- elasticsearch
redis:
image: redis:latest
ports:
- "6379:6379"
links:
- logstash
입니다 그리고 나의 logstash.conf입니다
내 logstash 컨테이너는이 오류를 던지고있다input {
tcp {
port => 5000
}
redis {
host => "redis:6379"
}
}
output {
elasticsearch {
hosts => "elasticsearch:9200"
}
}
:
logstash_1 | {:timestamp=>"2016-10-06T09:21:35.258000+0000", :message=>"An unexpected error occurred!", :error=>#<NoMethodError: undefined method `call' for nil:NilClass>, :class=>"NoMethodError",
설정이 Docker 외부에서 작동합니까? 정말 컨테이너 문제입니까 아니면 응용 프로그램의 문제입니까? 또한, 이미 시도한 것은 무엇입니까? 언제 오류가 발생합니까? 너는 무엇을하려고 했는가? 제공된 정보만으로 디버깅하기가 매우 어렵습니다. –
Docker 외부의 설정을 시도하지 않았습니다. 그것은 매우 간단합니다. 나는 바보 같은 것을 놓치고 있습니다. 로그 샷과 함께 redis를 어떻게 사용할 수 있습니까? –