我们正在运行基于java的微服务,我们有以下场景
问题是如何在集中和分析大量日志时解决这个问题。我们正在运行此应用程序的20个实例。我们有平板文件150GB的日志。以下是问题,
我们正在尝试评估以下内容,
欢迎任何建议。
答案 0 :(得分:1)
您可以使用运行类似fluentd或logstash的单边车。 两者都是日志提取工具,可以使用多个插件进行自定义,这些插件允许您一次路由到所有目的地。 在logstash的情况下,您甚至可能想要使用filebeat。
此外,流利的人似乎有official plugin from Google that does most of what you want。
这是in this k8s blog post about cluster-level logging和this blog post in the fluentd blog所述的程序。
我们的想法是运行一个DaemonSet(一组在集群中的每个节点上运行的pod),用于安装容器日志文件所在的主机路径。
但是,这只会收集应用程序生成的日志到stdout。 要收集其他文件,您可以使用here描述的技术:运行非常轻量级的边车,只需添加日志文件。