-1

在我们的 Kubernetes 中,有一个不断重启的 POD。

如果我使用kubectl logs -p POD_NAME -n NAMESPACE命令,我会得到详细的日志。然而,当我们使用 Kubernetes 的 go 客户端并尝试检索日志时,我们什么也得不到。

我们正在使用 PodExpansion 接口的 GetLogs(name string, opts *v1.PodLogOptions) 方法。

我还尝试在 PodLogOptions 中使用各种选项,例如。sinceSeconds=BeginningOfTheYear但没有运气。

任何帮助都深表感谢。

4

2 回答 2

0

这个问题太笼统了,没有太多信息,所以我想这就是答案。Pod 的反复重启是由于 Pod 故障造成的。Kubernetes 会在失败时重新启动 pod,直到它让 pod 正常工作,不幸的是,在这种情况下它不会正常工作。

这可能由于各种原因而发生。有些可能是由于资源问题,环境变量连接松散等。我总是将鼠标悬停在此类问题的日志上,并检查kubectl describe pods <pod_name>命令,并注意最后几行。它们显示了当前正在执行的操作以及失败的原因。这可能会有所帮助。

于 2017-08-17T14:34:56.453 回答
0

我们找到了一个原因。我们这边的源代码有一些错误。我们正在检查 POD 是否没有运行,只是返回。但在这种情况下,POD 处于等待状态,因为它无法启动。

我们不得不添加这部分代码来避免从 POD 收集日志的阻塞。

于 2017-08-17T10:01:44.297 回答