如何将kubectl日志保存到主机上的文件中?

时间:2016-12-09 21:46:11

标签: docker kubernetes kubectl minikube

我可以通过运行' kubectl logs podName'来查看特定pod的日志。我还看到日志包含一个选项--log-dir标志,但它似乎没有工作。我可以更改某种配置,日志会保存到主机上的特定文件中吗?

3 个答案:

答案 0 :(得分:3)

  

注意:这可能不是如何使日志进入主机的直接答案,但它确实提供了将日志记录到计算机上的方法。这可能不是最好的答案,但这是我所知道的,所以我在分享。如果您有更直接的解决方案,请回答。

您可以使用fluentd执行此操作。 Here是一个关于如何设置它的教程。您可以将其配置为写入已装载的hostdir中的文件或将其写入S3。它还允许您聚合来自所有容器的所有日志,这些日志可能有用,也可能没用。结合ElasticSearch and Kibana,您可以组合一个非常强大的日志堆栈。当然,这取决于你的用例。

答案 1 :(得分:3)

kubectl日志 pod_name > app.log

例如,如果您有一个名为 app-6b8bdd458b-kskjh 的kube pod,并且打算将日志从该pod中保存到文件名*** app .log,***那么命令应该是

kubectl日志 app-6b8bdd458b-kskjh> app.log

答案 2 :(得分:0)

Grafana Loki 允许以开发人员友好的方式收集、存储和访问 Pod 日志。