查找以前pod的日志



我们的系统中断了,服务没有响应,我用kubectl rollout restart sts myservice重新启动了服务,它工作了。但是,我想查看日志以查看问题的原因。当我尝试kubect logs --previous myservice-0时,它显示"先前终止的容器"我的容器"在pod "myservice-0"没有找到的。有没有办法在重启前找到日志?我试图查看死docker容器(docker ps -a),有6个月前退出的容器,但没有最近退出的我的服务容器,为什么会这样?

我建议阅读以下内容:the Complete Guide to Kubernetes Logging:

在Kubernetes中,当pod被驱逐、崩溃、删除或调度时在另一个节点上,来自容器的日志消失了. 该系统自己清理。因此你失去了任何关于原因的信息异常发生。

同样,按照日志架构:

如果你想在容器崩溃时访问应用程序的日志;一个波德被驱逐;或者一个节点死亡,[…]你需要一个独立的后端来存储、分析和查询日志。Kubernetes不提供本机日志数据存储解决方案。相反,有很多日志记录与Kubernetes集成的解决方案

这些日志聚合解决方案的一些示例如下:

  • ELK Stack (Elasticsearch, Logstash, Kibana)
  • EFK Stack (Elasticsearch, Fluentd, Kibana)

相关内容

  • 没有找到相关文章

最新更新