【问题标题】:Kubernetes' pods' status is CrashLoopBackOff but no logs are showing upKubernetes 的 pod 状态为 CrashLoopBackOff 但没有显示日志
【发布时间】:2023-03-11 06:30:02
【问题描述】:

我是学习 Kubernetes 的初学者。我尝试从我的 yaml 文件中的 zookeeper 私有注册表中提取非官方图像进行测试,但 pod 状态为 ImagePullBackOff。不知何故,我纠正了该错误并成功提取了图像,但反映 pod 状态的新错误是 CrashLoopBackOff。在腻子终端中以任何方式或形式使用命令“kubectl logs -f -p zookeeper-n1-pod-0 -c zookeeper-n1 -n test-1”或使用“kubectl logs podname”命令时,没有任何输出,光标只会移动到下一行。我试过“退出$?”命令查看我上一个命令的退出状态并将输出为 0,这意味着最后一个命令已成功执行,但我看到 pod 状态为 CrashLoopBackOff。由于没有日志,我无法解决此问题。造成这种情况的可能原因和解决方案是什么?

提前致谢!!

【问题讨论】:

标签: kubernetes containers


【解决方案1】:

CrashLoopBackOff 告诉 Pod 在启动后立即崩溃。 Kubernetes 尝试再次启动 pod,但又一次 pod 崩溃并进入循环。

kubectl logs [podname] -p

-p 选项将读取前一个(崩溃的)实例的日志。

接下来,您可以通过描述 pod 来查看“状态原因”、“最后状态原因”和“事件”部分。

kubectl describe pod -n

我建议您查看此博客Debugging CrashLoopBackOff

【讨论】:

  • 我已经尝试了所有上述方法,但没有任何效果。使用以下对我有用: command: [ "/bin/bash", "-c", "--" ] args: [ "while true; do sleep 30; done;" ] 从这里得到参考:- stackoverflow.com/questions/31870222/…
【解决方案2】:

我错过了在我的 Dockerfile 命令中将 zoo_sample.cfg 配置文件的名称更改为 zoo.cfg,这导致 Zookeeper 服务器启动失败并导致 ImagePullBackOff 错误、CrashLoopBackOff 错误,并且没有显示日志。这是必须遵循的强制性步骤,因为 zkServer.sh 在启动时会查找 zoo.cfg。

【讨论】:

    猜你喜欢
    • 2022-07-08
    • 2023-03-26
    • 2021-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-28
    • 2021-08-09
    • 1970-01-01
    相关资源
    最近更新 更多