我正在尝试将ELK堆栈配置为项目的主要日志记录结构部分。目前,我有多个微服务通过docker-compose在共享网络中的各自容器中运行。
root
|
+--microservice_1
|
+--Dockerfile
+--microservice_2
|
+--Dockerfile
+--microservice_3
|
+--Dockerfile
+--elasticsearch
|
+--Dockerfile
+--config
|
elasticsearch.yml
+--kibana
|
+--Dockerfile
+--config
|
kibana.yml
+--logstash
|
+--Dockerfile
+--config
|
logstash.yml
+--docker-compose.yml
+--docker-compose-logging.yml
如上所述,我有两个docker-compose文件;一个是我实际的微服务应用程序,其中包含3个可以一起工作的独立容器化应用程序。我还有另一个正在运行ELK实例的撰写网络。
我在这里的最终目标是能够从compose-network-A的每个微服务中获取日志,并将它们导出到logstash-> elasticsearch-> kipana从compose-network-b。我知道我必须在某些设置中使用filebeat才能实现此目标,但我不清楚,在dockerized环境中使用带ELK的filebeat的弹性文档非常差。
我将不胜感激任何建议或指示。预先感谢!