Back-off restarting failed container 问题解决

简介: Back-off restarting failed container 问题解决

问题:

通过yaml文件创建pod时,执行完yaml文件,过一会就开始报错说Back-off restarting failed container

查看pod状态一致处于CrashLoopBackOff

cefe51c9094044cfb26d4dc6915f3986.png

原理:

Back-off restarting failed container的Warning事件,一般是由于通过指定的镜像启动容器后,容器内部没有常驻进程,导致容器启动成功后即退出,从而进行了持续的重启。


解决办法:

如果是通过yaml文件创建的pod,找到对应的deployment,增加命令command: ["/bin/bash", "-ce", "tail -f /dev/null"]

apiVersion: apps/v1
kind: Deployment
metadata:
  namespace: test
  name: pipeline
  labels:
    app: pipeline
spec:
  replicas: 2
  selector:
    matchLabels:
      app: pipeline
  template:
    metadata:
      labels:
        app: pipeline
    spec:
      containers:
      - name: pipeline
        image: 192.168.2.211:80/repo/pipeline:v3.0.0   # 在harbor仓库中复制一个镜像取得
        command: ["/bin/bash", "-ce", "tail -f /dev/null"]
        imagePullPolicy: Always
        ports:
        - containerPort: 8080


修改完yaml文件再次执行,就好了。

c9170da3f2ce452ab45480c737bef1f0.png

相关文章
|
Kubernetes 容器 Perl
【kubernetes】解决: kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = faile...
【kubernetes】解决: kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = faile...
17835 0
|
运维 Kubernetes 监控
揭秘高效运维:如何用kubectl top命令实时监控K8s资源使用情况?
揭秘高效运维:如何用kubectl top命令实时监控K8s资源使用情况?
4699 0
|
Kubernetes 网络协议 容器
kubernates(K8s) 踩坑日记(一)init初始化报错 dial tcp [::1]:10248: connect: connection refused
kubernates(K8s) 踩坑日记(一)init初始化报错 dial tcp [::1]:10248: connect: connection refused
2992 0
kubernates(K8s) 踩坑日记(一)init初始化报错 dial tcp [::1]:10248: connect: connection refused
|
10月前
|
运维 Kubernetes Ubuntu
Kubernetes一键安装部署K8S,附带Kubernetes Dashboard的使用
至此,你已经成功安装并配置了Kubernetes和Dashboard。你现在可以开始使用Kubernetes来部署和管理你的容器化应用程序了。
1525 24
|
应用服务中间件 nginx Docker
配置Containerd运行时镜像加速器
containerd配置国内容器镜像加速器
4671 1
|
Kubernetes 应用服务中间件 nginx
搭建Kubernetes v1.31.1服务器集群,采用Calico网络技术
在阿里云服务器上部署k8s集群,一、3台k8s服务器,1个Master节点,2个工作节点,采用Calico网络技术。二、部署nginx服务到k8s集群,并验证nginx服务运行状态。
4152 2
|
Kubernetes 应用服务中间件 nginx
k8s学习--k8s集群使用容器镜像仓库Harbor
本文介绍了在CentOS 7.9环境下部署Harbor容器镜像仓库,并将其集成到Kubernetes集群的过程。环境中包含一台Master节点和两台Node节点,均已部署好K8s集群。首先详细讲述了在Harbor节点上安装Docker和docker-compose,接着通过下载Harbor离线安装包并配置相关参数完成Harbor的部署。随后介绍了如何通过secret和serviceaccount两种方式让Kubernetes集群使用Harbor作为镜像仓库,包括创建secret、配置节点、上传镜像以及创建Pod等步骤。最后验证了Pod能否成功从Harbor拉取镜像运行。
2201 0
|
Kubernetes 容器 Perl
【kubernetes】解决 k8s “BGP not established with” 错误
【kubernetes】解决 k8s “BGP not established with” 错误
1805 2
【kubernetes】解决 k8s “BGP not established with” 错误
|
存储 Kubernetes 开发工具
k8s练习--StorageClass详细解释与应用
本文介绍了Kubernetes中的`StorageClass`,这是一种用于定义不同存储提供者配置的抽象机制,能够动态生成PersistentVolume(PV),简化存储管理。文中详细描述了如何在K8s集群中配置和使用`StorageClass`,包括搭建NFS服务器、配置RBAC权限、创建StorageClass及关联PVC和Pod的过程,并通过实验验证了动态PV的创建和删除功能。实验环境包含一个Master节点和两个Node节点,以及一台NFS服务器。
689 0
|
Kubernetes API 数据库
容器服务 Pod 处于 CrashLoopBackOff的原因及解决方法
"CrashLoopBackOff" 是 Kubernetes 中 Pod 进入的一种错误状态,通常是由于容器不断崩溃(失败)而触发的重启策略所导致的。以下是 Pod 处于 CrashLoopBackOff 状态的原因及相应的解决方法: ### 原因: 1. **应用错误:** - 容器内部的应用程序崩溃,导致容器退出。 - 应用程序可能因为异常、未捕获的错误、配置问题、依赖缺失等原因导致崩溃。 2. **错误的启动命令:** - Pod 的启动命令或入口点设置错误,导致容器无法正确启动。 3. **资源限制:** - Pod 可能受到内存或 CPU 资源限制,
4468 0