Kubernetes Pod卡在CrashLoopBackOff中

时间:2018-09-29 16:48:54

标签: docker kubernetes

Dockerfile

FROM ubuntu
MAINTAINER user@gmail.com
RUN apt-get update
RUN apt-get install -y openjdk-8-jdk
ADD build/libs/micro-service-gradle-0.0.1-SNAPSHOT.jar /var/local/
ENTRYPOINT exec java $JAVA_OPTS \
 -jar /var/local/micro-service-gradle-0.0.1-SNAPSHOT.jar
EXPOSE 8080

deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: micro-service-gradle
  labels:
    app: micro-service-gradle
spec:
  replicas: 1
  selector:
    matchLabels:
      app: micro-service-gradle
  template:
    metadata:
      labels:
        app: micro-service-gradle
    spec:
      containers:
      - name: micro-service-gradle
        image: micro-service-gradle:latest
        ports:
        - containerPort: 8080

在Kubernetes中部署spring boot应用程序。尚未创建Pod。当我检查kubectl得到豆荚。它说CrashLoopBackOff。

NAME                                  READY   STATUS             RESTARTS   AGE
micro-service-gradle-fc97c97b-8hwhg   0/1     CrashLoopBackOff   6          6m23s

我试图检查同一容器的日志。日志为空

kubectl logs -p micro-service-gradle-fc97c97b-8hwhg

我使用docker run手动创建了容器。图片中没有问题,容器正常工作。

如何验证日志以了解Pod为何处于崩溃状态。

6 个答案:

答案 0 :(得分:2)

您需要使用

kubectl describe pod micro-service-gradle-fc97c97b-8hwhg

获取相关日志。这应该可以指导您解决问题。

答案 1 :(得分:0)

您的部署资源看起来不错。由于您可以使用手动创建容器,因此与映像存储库的连接存在问题。设置impage pull secret,您应该能够创建pod

答案 2 :(得分:0)

我遇到了类似的问题。只需验证您的容器是否能够连续运行即可。您必须在前台运行该进程以保持容器运行。

答案 3 :(得分:0)

我遇到了同样的问题,但是使用它对我有用:

image: Image:latest

command: [ "sleep" ]

args: [ "infinity" ]

答案 4 :(得分:0)

我遇到了类似的问题。当我运行

kubectl describe pod <podname>

并读取事件,尽管图像已被拉出,但输出的消息是“重新启动失败的容器” 吊舱很激动,因为它没有执行任何任务。为了使其保持运行,我根据docs

中的类似示例添加了sleep命令
  command: ['sh', '-c', 'echo The app is running! && sleep 3600']

这个SO答案还提到运行无限也可以解决问题 https://stackoverflow.com/a/55610769/7128032

答案 5 :(得分:0)

这种错误的可能原因是:

  • 由于错误,您的pod内的应用程序无法启动;
  • 您的Pod所基于的映像在注册表中不存在,或者已计划您的Pod的节点无法从注册表中提取;
  • pod的某些参数配置不正确

您可以通过检查事件来查看正在发生的事情:

kubectl get events

或检查广告连播状态:

kubectl describe po mypod-390jo50wn3-sp40r

此处有完整说明:https://pillsfromtheweb.blogspot.com/2020/05/troubleshooting-kubernetes.html

相关问题