加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – Kubernetes:如何调试CrashLoopBackOff

发布时间:2020-12-16 03:33:44 所属栏目:安全 来源:网络整理
导读:我有以下设置: 在码头工人中心的码头工作者图像omg / telperion 一个kubernetes集群(有4个节点,每个节点有~50GB RAM)和充足的资源 我按照教程将图像从dockerhub拉到kubernetes SERVICE_NAME=telperionDOCKER_SERVER="https://index.docker.io/v1/"DOCKER_US

我有以下设置:

在码头工人中心的码头工作者图像omg / telperion
一个kubernetes集群(有4个节点,每个节点有~50GB RAM)和充足的资源

我按照教程将图像从dockerhub拉到kubernetes

SERVICE_NAME=telperion
DOCKER_SERVER="https://index.docker.io/v1/"
DOCKER_USERNAME=username
DOCKER_PASSWORD=password
DOCKER_EMAIL="omg@whatever.com"

# Create secret
kubectl create secret docker-registry dockerhub --docker-server=$DOCKER_SERVER --docker-username=$DOCKER_USERNAME --docker-password=$DOCKER_PASSWORD --docker-email=$DOCKER_EMAIL

# Create service yaml
echo "apiVersion: v1 n
kind: Pod n
metadata: n
  name: ${SERVICE_NAME} n
spec: n
  containers: n
    - name: ${SERVICE_NAME} n
      image: omg/${SERVICE_NAME} n
      imagePullPolicy: Always n
      command: [ "echo","done deploying $SERVICE_NAME" ] n
  imagePullSecrets: n
    - name: dockerhub" > $SERVICE_NAME.yaml

 # Deploy to kubernetes
 kubectl create -f $SERVICE_NAME.yaml

这导致pod进入CrashLoopBackoff

docker run -it -p8080:9546 omg / telperion工作正常.

所以我的问题是
这是可调试的吗?如果是的话,我该如何调试呢?

一些日志:

kubectl get nodes                                                                                          
NAME                    STATUS                     AGE       VERSION
k8s-agent-adb12ed9-0    Ready                      22h       v1.6.6
k8s-agent-adb12ed9-1    Ready                      22h       v1.6.6
k8s-agent-adb12ed9-2    Ready                      22h       v1.6.6
k8s-master-adb12ed9-0   Ready,SchedulingDisabled   22h       v1.6.6

.

kubectl get pods                                                                                               
NAME                        READY     STATUS             RESTARTS   AGE
telperion                    0/1       CrashLoopBackOff   10         28m

.

kubectl describe pod telperion
Name:           telperion
Namespace:      default
Node:           k8s-agent-adb12ed9-2/10.240.0.4
Start Time:     Wed,21 Jun 2017 10:18:23 +0000
Labels:         

编辑1:
kubelet在master上报告的错误:

journalctl -u kubelet

.

Jun 21 10:28:49 k8s-master-ADB12ED9-0 docker[1622]: E0621 10:28:49.798140    1809 fsHandler.go:121] failed to collect filesystem stats - rootDiskErr: du command failed on /var/lib/docker/overlay/5cfff16d670f2df6520360595d7858fb5d16607b6999a88e5dcbc09e1e7ab9ce with output
Jun 21 10:28:49 k8s-master-ADB12ED9-0 docker[1622]:,stderr: du: cannot access '/var/lib/docker/overlay/5cfff16d670f2df6520360595d7858fb5d16607b6999a88e5dcbc09e1e7ab9ce/merged/proc/13122/task/13122/fd/4': No such file or directory
Jun 21 10:28:49 k8s-master-ADB12ED9-0 docker[1622]: du: cannot access '/var/lib/docker/overlay/5cfff16d670f2df6520360595d7858fb5d16607b6999a88e5dcbc09e1e7ab9ce/merged/proc/13122/task/13122/fdinfo/4': No such file or directory
Jun 21 10:28:49 k8s-master-ADB12ED9-0 docker[1622]: du: cannot access '/var/lib/docker/overlay/5cfff16d670f2df6520360595d7858fb5d16607b6999a88e5dcbc09e1e7ab9ce/merged/proc/13122/fd/3': No such file or directory
Jun 21 10:28:49 k8s-master-ADB12ED9-0 docker[1622]: du: cannot access '/var/lib/docker/overlay/5cfff16d670f2df6520360595d7858fb5d16607b6999a88e5dcbc09e1e7ab9ce/merged/proc/13122/fdinfo/3': No such file or directory
Jun 21 10:28:49 k8s-master-ADB12ED9-0 docker[1622]:  - exit status 1,rootInodeErr: 

编辑2:更多日志

kubectl logs $SERVICE_NAME -p                                                                                                    
done deploying telperion
您可以使用访问pod的日志

kubectl logs [podname] -p

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

如果崩溃来自应用程序,那么您应该有有用的日志.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读