首页 > 解决方案 > 无法确保 pod 容器存在:创建容器失败

问题描述

我最近创建了一个 Azure Kubernetes 服务 (AKS)。我按照本教程在 AKS 上创建和使用 NGINX,并创建卷和部署。此文件已在另一个集群上运行。但是对于这个,我的 pod 保持在 ContainerCreating 状态

   名称:sw-bo-9f7cc5d7d-tms2p
    命名空间:默认
    节点:aks-agentpool-34372919-2/172.16.35.194
    开始时间:2018 年 8 月 23 日星期四 16:38:44 +0200
    标签:app=sw-bo
                    吊舱模板哈希=593771838
    注释:    
    状态:待定
    知识产权:
    控制者:ReplicaSet/sw-bo-9f7cc5d7d
    容器:
      sw-bo:
        容器编号:
        图片:captaincontainerregdev.azurecr.io/sw-bo:latest
        图片编号:
        端口:8080/TCP
        主机端口:0/TCP
        状态:等待
          原因:ContainerCreating
        准备好:错误
        重启次数:0
        限制:
          内存:2Gi
        要求:
          内存:1Gi
        环境:
          APP_SLEEP:10
          SPRING_DATASOURCE_URL:jdbc:postgresql://*************.postgres.database.azure.com:5432/swbo
          SPRING_PROFILES_ACTIVE:刺激,招摇
          SPRING_DATASOURCE_USERNAME:可选:false
          SPRING_DATASOURCE_PASSWORD:可选:false
          APPLICATION_PROXY_BASE_URL:https://*************.westeurope.cloudapp.azure.com/api
          APPLICATION_GEOSERVER_URL:https://*************.westeurope.cloudapp.azure.com/geoserver
          APPLICATION_GEOSERVER_WORKSPACE: *************
          APPLICATION_NODERED_URL:https://*************.westeurope.cloudapp.azure.com/nodered
        坐骑:
          /var/run/secrets/kubernetes.io/serviceaccount 来自 default-token-hwhhj (ro)
    条件:
      类型状态
      初始化为真
      准备好假
      PodScheduled True
    卷:
      默认令牌-hwhhj:
        类型:Secret(由 Secret 填充的卷)
        SecretName:默认令牌-hwhhj
        可选:假
    QoS 等级:突发
    节点选择器:  
    容忍度:node.kubernetes.io/not-ready:NoExecute for 300s
                     node.kubernetes.io/unreachable:NoExecute for 300s
    活动:
      类型原因年龄来自消息
      ---- ------ ---- ---- --------
      正常计划 2m 默认调度程序已成功分配 sw-bo-9f7cc5d7d-tms2p 到 aks-agentpool-34372919-2
      正常 SuccessMountVolume 1m kubelet, aks-agentpool-34372919-2 MountVolume.SetUp 为卷“default-token-hwhhj”成功
      警告 FailedCreatePodContainer 7s (x10 over 2m) kubelet, aks-agentpool-34372919-2 无法确保 pod 容器存在:无法为 /kubepods/burstable/pod3ae78151-a6e2-11e8-a1e7-5a18d5725d34 创建容器:未找到设备的挂载点

我开始认为这是我的文件有问题,但是 kube-system 中的所有 pod 都没有出现同样的错误。

    root@frparcaptainpil:~/azure# kubectl -n kube-system 获取 pod
    名称 就绪 状态 重新开始 年龄
    插件-http-application-routing-default-http-backend-556559l4h52 0/1 错误 3 1d
    addon-http-application-routing-external-dns-59db8c7666-txlf2 0/1 错误 3 1d
    addon-http-application-routing-nginx-ingress-controller-86v4rfn 0/1 完成 8 1d
    azure-cni-networkmonitor-65xxm 0/1 错误 5 1d
    azure-cni-networkmonitor-dwcl5 0/1 错误 7 1d
    azure-cni-networkmonitor-m7sqc 0/1 错误 10 1d
    azureproxy-7bb5c9d7fb-bk5wh 0/1 已完成 7 1d
    heapster-7b6867b589-x7k97 0/2 错误 6 1d
    kube-dns-v20-55645bfd65-96gb8 0/3 错误 3 10h
    kube-dns-v20-55645bfd65-qwj29 0/3 错误 12 1d
    kube-proxy-m5bqh 0/1 错误 10 1d
    kube-proxy-q5hch 0/1 错误 7 1d
    kube-proxy-rd8qg 0/1 错误 5 1d
    kube-svc-redirect-4kjlp 0/1 CrashLoopBackOff 8 1d
    kube-svc-redirect-52vmh 0/1 错误 4 1d
    kube-svc-redirect-psc95 0/1 错误 8 1d
    kubernetes-dashboard-844cf88ddc-f6s8j 0/1 错误 6 10h
    指标-服务器-64f6d6b47-4jm24 0/1 ContainerCreating 0 10h
    omsagent-8zptm 0/1 错误 3 1d
    omsagent-rs-675945f67d-ghdps 0/1 RunContainerError 5 1d
    omsagent-z9m55 0/1 错误 5 1d
    omsagent-ztzll 0/1 错误 5 1d
    分蘖部署-f9b8476d-tsh88 0/1 错误 2 1d
    tunnelfront-78d4bcd765-psq4j 0/1 错误 3 1d
    zooming-owl-nginx-ingress-controller-58b9fc4854-bffs2 0/1 错误 0 10h
    zooming-owl-nginx-ingress-default-backend-585b4794db-2ltrj 0/1 ContainerCreating 0 9m

您可以在下面找到 kube-system pod 描述的示例:

    root@frparcaptainpil:~/azure# kubectl -n kube-system 描述 pod kube-proxy-q5hch                                                                                                                    
    名称:kube-proxy-q5hch                                                                                                                                                                      
    命名空间:kube-system                                                                                                                                                                           
    节点:aks-agentpool-34372919-2/172.16.35.194                                                                                                                                                
    开始时间:2018 年 8 月 22 日星期三 12:16:59 +0200                                                                                                                                                       
    标签:组件=kube-proxy                                                                                                                                                                  
                    控制器修订哈希=1770405012                                                                                                                                                   
                    吊舱模板生成=1                                                                                                                                                             
                    层=节点                                                                                                                                                                             
    注释:                                                                                                                                                                                    
    状态:正在运行                                                                                                                                                                               
    IP:172.16.35.194                                                                                                                                                                         
    控制者:DaemonSet/kube-proxy                                                                                                                                                                  
    容器:                                                                                                                                                                                           
      kube-代理:                                                                                                                                                                                         
        容器 ID:docker://c6f836dc1f6ae22396aaa8e9bb76de12d368915ab5f2fa748128c3c3902adf57                                                                                                          
        图片:k8s.gcr.io/hyperkube-amd64:v1.10.6                                                                                                                                                 
        图片 ID:docker-pullable://k8s.gcr.io/hyperkube-amd64@sha256:0eb0eed93c81feb6b5694385537a249fd8e271123ba344e853c1eb8b60cd7c85                                                               
        港口:                                                                                                                                                                                       
        主机端口:                                                                                                                                                                                  
        命令:                                                                                                                                                                                          
          /hyperkube                                                                                                                                                                                      
          代理人                                                                                                                                                                                           
          --kubeconfig=/var/lib/kubelet/kubeconfig                                                                                                                                                        
          --cluster-cidr=172.16.35.128/25                                                                                                                                                                 
          --feature-gates=ExperimentalCriticalPodAnnotation=true                                                                                                                                          
        状态:终止                                                                                                                                                                        
          原因:错误                                                                                                                                                                             
          退出代码:2                                                                                                                                                                                 
          开始时间:2018 年 8 月 23 日星期四 14:20:56 +0200                                                                                                                                                   
          完成时间:2018 年 8 月 23 日星期四 14:23:41 +0200                                                                                                                                                   
        准备好:错误                                                                                                                                                                             
        重启次数:7                                                                                                                                                                                 
        要求:                                                                                                                                                                                         
          中央处理器:100m                                                                                                                                                                                
        环境:                                                                                                                                                                                
        坐骑:                                                                                                                                                                                           
          /etc/kubernetes/certs 来自证书 (ro)                                                                                                                                                    
          /var/lib/kubelet 来自 kubeconfig (ro)                                                                                                                                                           
          /var/run/secrets/kubernetes.io/serviceaccount 来自 default-token-dsz28 (ro)                                                                                                                     
    条件:                                                                                                                                                                                           
      类型状态                                                                                                                                                                               
      初始化为真                                                                                                                                                                                 
      准备好假                                                                                                                                                                                
      PodScheduled True                                                                                                                                                                                 
    卷:                                                                                                                                                                                              
      库贝配置:                                                                                                                                                                                         
        类型:HostPath(裸主机目录卷)                                                                                                                                              
        路径:/var/lib/kubelet                                                                                                                                                                   
        主机路径类型:                                                                                                                                                                                     
      证书:                                                                                                                                                                                       
        类型:HostPath(裸主机目录卷)                                                                                                                                              
        路径:/etc/kubernetes/certs                                                                                                                                                              
        主机路径类型:                                                                                                                                                                                     
      默认令牌-dsz28:                                                                                                                                                                                
        类型:Secret(由 Secret 填充的卷)                                                                                                                                              
        SecretName:默认令牌-dsz28                                                                                                                                                                  
        可选:假                                                                                                                                                                                
    QoS 等级:突发                                                                                                                                                                            
    节点选择器:beta.kubernetes.io/os=linux                                                                                                                                                          
    容忍度:node-role.kubernetes.io/master=true:NoSchedule                                                                                                                                       
                     node.kubernetes.io/disk-pressure:NoSchedule                                                                                                                                          
                     node.kubernetes.io/memory-pressure:NoSchedule                                                                                                                                        
                     node.kubernetes.io/not-ready:NoExecute                                                                                                                                               
                     node.kubernetes.io/unreachable:NoExecute                                                                                                                                             
    活动:                                                                                                                                                                                               
      类型原因年龄来自消息                                                                                                    
      ---- ------ ---- ---- --------                                                                                                    
      警告 FailedCreatePodContainer 2m (x671 over 2h) kubelet, aks-agentpool-34372919-2 无法确保 pod 容器存在:未能为 /kubepods/burstable/pod811f3110-a5f4- 创建容器
    11e8-9151-5a18d5725d34:未找到设备的挂载点                                                                                                                                             

当我重新启动节点时,kube 系统 pod 暂时准备就绪并在之后失败。我刚从 Kubernetes 开始,我没有找到任何解决这个问题的方法。
我指定我们的虚拟网络上有安全规则,但节点可以访问 Internet(它们提取图像)

问候

标签: azurekubernetesazure-aks

解决方案


问题解决了,问题在别处。夜间工作的批处理使 VM 和 kubernetes 无法找到他的挂载点 (/var/run/secrets/kubernetes.io/serviceaccount)


推荐阅读