应用容器化后,建议日志是落盘后再采集还是直接通过网络发到外部呢?
1.对于集群级别的日志采集方案还是选择不落盘采集,避免因为I/O影响性能。2.应用级别的日志采集,分情况,能标准输出的也不落盘;只能打日志文件的那就先落盘后再sidecar标准输出或者直接转发到后端
先说结论,建议直接容器标准输出送到ES。1、为什么容器化环境需要统一日志?是因为应用容器化后,容器扩缩容非常方便,应用实例数量有可能很多,在故障排错过程中,相对传统直接登录主机看日志方式,容器化环境错误日志查看更难,所以需要统一日志存储。
建议采用先落盘再转发的方式来处理日志。目前,我看到的主流做法都是通过EFK/ELK进行日志处理。如果有其他专业日志平台,可以通过kafka进行转发,以实现对接现有日志平台。filebeat部署在node节点上,负责日志采集kafka实现日志转发Elasticsearch日志存放Kibana进行日志展示和分析
通过网络外发,从技术上是完全可行的。但是,网络的不确定性,会造成传输过程的日志丢失风险,并且由于缺少本地日志,会出现不可逆的风险。因此,从稳妥上来说,建议先本地落盘,在转发出来。
关于TWT 使用指南社区专家合作 厂商入驻社区 企业招聘投诉建议版权与免责声明联系我们 © 2024 talkwithtrend — talk with trend,talk with technologist京ICP备09031017号-30