Kubernetes的工作播客变成了;“未知”;陈述
我正在使用Kubernetes的K3s发行版,它部署在 AWS中的Spot EC2实例 我已安排某个处理作业,有时此作业正在终止,并处于“未知”状态(作业代码异常终止) AWS日志显示,崩溃前CPU消耗量为99%。 从大量的数据源(,)中,我发现这可能是节点崩溃的原因,但我没有发现这一点, 原因可能是什么Kubernetes的工作播客变成了;“未知”;陈述,kubernetes,k3s,kubernetes-jobs,Kubernetes,K3s,Kubernetes Jobs,我正在使用Kubernetes的K3s发行版,它部署在 AWS中的Spot EC2实例 我已安排某个处理作业,有时此作业正在终止,并处于“未知”状态(作业代码异常终止) AWS日志显示,崩溃前CPU消耗量为99%。 从大量的数据源(,)中,我发现这可能是节点崩溃的原因,但我没有发现这一点, 原因可能是什么 谢谢 作业的实际状态为终止,原因为未知。为了调试这种情况,您需要从作业创建的pod中获取相关日志 ,不再创建播客,但播客已创建 也没有删除。保持它们在附近可以让您仍然查看 用于检查错误、警告或
谢谢 作业的实际状态为
终止
,原因为未知
。为了调试这种情况,您需要从作业创建的pod中获取相关日志
,不再创建播客,但播客已创建
也没有删除。保持它们在附近可以让您仍然查看
用于检查错误、警告或其他信息的已完成POD日志
诊断输出
为此,执行kubectl descripe job$job
查看事件部分下的POD名称,然后执行kubectl logs$POD
如果这还不够,您可以尝试不同的方法,例如:
- 使用容器exec进行调试
- 使用临时调试容器进行调试,或
- 通过节点上的shell进行调试
上述方法将为您提供更多信息,说明作业终止背后的实际原因。我在pod上调用了logs命令(我有pod),但没有生成相关日志,只是应用程序中的常规打印,它们就被切断了——就像有人被杀来吊舱一样——在作业失败的时刻,节点的行为如何?有足够的资源来完成它的工作吗?您是集群的唯一负责人吗?可能还有其他用户会把作业或它的吊舱搞得一团糟?这是一个运行在VM中的单个节点,没有用户-查看此时节点发生了什么的最佳方式是什么?需要对kubernetes的哪个组件进行日志检查以查看问题所在?谢谢这在本文中得到了很好的解释。您将在那里找到相关日志文件的位置。
kubectl describe pod <pod_name>
State: Terminated
Reason: Unknown
Exit Code: 255
Started: Wed, 06 Jan 2021 21:13:29 +0000
Finished: Wed, 06 Jan 2021 23:33:46 +0000