zoukankan      html  css  js  c++  java
  • 使用kubernetes创建容器一直处于ContainerCreating状态的原因查找与解决

    运行容器的时候,发现一直处于ContainerCreating状态,悲了个催,刚入手就遇到了点麻烦,下面来讲讲如何查找问题及解决的

    运行容器命令:

    [root@master-149 ~]# kubectl run my-alpine --image=alpine --replicas=2 ping www.baidu.com
    View Code

    查看pods状态

    1 [root@master-149 ~]# kubectl get pods
    2 NAME                         READY     STATUS              RESTARTS   AGE
    3 my-alpine-2150523991-knzcx   0/1       ContainerCreating   0          6m
    4 my-alpine-2150523991-lmvv5   0/1       ContainerCreating   0          6m
    View Code

    一直处于ContainerCreating状态,开始查找原因
    执行如下命令:

     1 [root@master-149 ~]# kubectl describe pod my-alpine
     2 Name:        my-alpine-2150523991-knzcx
     3 Namespace:    default
     4 Node:        node-150/192.168.10.150
     5 Start Time:    Sat, 19 Nov 2016 18:20:52 +0800
     6 Labels:        pod-template-hash=2150523991,run=my-alpine
     7 Status:        Pending
     8 IP:        
     9 Controllers:    ReplicaSet/my-alpine-2150523991
    10 Containers:
    11   my-alpine:
    12     Container ID:    
    13     Image:        alpine
    14     Image ID:        
    15     Port:        
    16     Args:
    17       ping
    18       www.baidu.com
    19     QoS Tier:
    20       cpu:        BestEffort
    21       memory:        BestEffort
    22     State:        Waiting
    23       Reason:        ContainerCreating
    24     Ready:        False
    25     Restart Count:    0
    26     Environment Variables:
    27 Conditions:
    28   Type        Status
    29   Ready     False 
    30 No volumes.
    31 Events:
    32   FirstSeen    LastSeen    Count    From            SubobjectPath    Type        Reason        Message
    33   ---------    --------    -----    ----            -------------    --------    ------        -------
    34   7m        7m        1    {default-scheduler }            Normal        Scheduled    Successfully assigned my-alpine-2150523991-knzcx to node-150
    35   6m        6m        1    {kubelet node-150}            Warning        FailedSync    Error syncing pod, skipping: failed to "StartContainer" for "POD" with ErrImagePull: "image pull failed for gcr.io/google_containers/pause:2.0, this may be because there are no credentials on this request.  details: (unable to ping registry endpoint https://gcr.io/v0/
    v2 ping attempt failed with error: Get https://gcr.io/v2/: dial tcp 64.233.189.82:443: getsockopt: connection refused
     v1 ping attempt failed with error: Get https://gcr.io/v1/_ping: dial tcp 64.233.189.82:443: getsockopt: connection refused)"
    36 
    37   4m    47s    3    {kubelet node-150}        Warning    FailedSync    Error syncing pod, skipping: failed to "StartContainer" for "POD" with ErrImagePull: "image pull failed for gcr.io/google_containers/pause:2.0, this may be because there are no credentials on this request.  details: (unable to ping registry endpoint https://gcr.io/v0/
    v2 ping attempt failed with error: Get https://gcr.io/v2/: dial tcp 74.125.204.82:443: getsockopt: connection refused
     v1 ping attempt failed with error: Get https://gcr.io/v1/_ping: dial tcp 74.125.204.82:443: getsockopt: connection refused)"
    38 
    39   4m    8s    6    {kubelet node-150}        Warning    FailedSync    Error syncing pod, skipping: failed to "StartContainer" for "POD" with ImagePullBackOff: "Back-off pulling image "gcr.io/google_containers/pause:2.0""
    40 
    41 
    42 Name:        my-alpine-2150523991-lmvv5
    43 Namespace:    default
    44 Node:        node-150/192.168.10.150
    45 Start Time:    Sat, 19 Nov 2016 18:20:52 +0800
    46 Labels:        pod-template-hash=2150523991,run=my-alpine
    47 Status:        Pending
    48 IP:        
    49 Controllers:    ReplicaSet/my-alpine-2150523991
    50 Containers:
    51   my-alpine:
    52     Container ID:    
    53     Image:        alpine
    54     Image ID:        
    55     Port:        
    56     Args:
    57       ping
    58       www.baidu.com
    59     QoS Tier:
    60       cpu:        BestEffort
    61       memory:        BestEffort
    62     State:        Waiting
    63       Reason:        ContainerCreating
    64     Ready:        False
    65     Restart Count:    0
    66     Environment Variables:
    67 Conditions:
    68   Type        Status
    69   Ready     False 
    70 No volumes.
    71 Events:
    72   FirstSeen    LastSeen    Count    From            SubobjectPath    Type        Reason        Message
    73   ---------    --------    -----    ----            -------------    --------    ------        -------
    74   7m        7m        1    {default-scheduler }            Normal        Scheduled    Successfully assigned my-alpine-2150523991-lmvv5 to node-150
    75   5m        1m        3    {kubelet node-150}            Warning        FailedSync    Error syncing pod, skipping: failed to "StartContainer" for "POD" with ErrImagePull: "image pull failed for gcr.io/google_containers/pause:2.0, this may be because there are no credentials on this request.  details: (unable to ping registry endpoint https://gcr.io/v0/
    v2 ping attempt failed with error: Get https://gcr.io/v2/: dial tcp 74.125.204.82:443: getsockopt: connection refused
     v1 ping attempt failed with error: Get https://gcr.io/v1/_ping: dial tcp 74.125.204.82:443: getsockopt: connection refused)"
    76 
    77   3m    1m    4    {kubelet node-150}        Warning    FailedSync    Error syncing pod, skipping: failed to "StartContainer" for "POD" with ImagePullBackOff: "Back-off pulling image "gcr.io/google_containers/pause:2.0""
    78 其中:
    79 
    80 Error syncing pod, skipping: failed to "StartContainer" for "POD" with ErrImagePull: "image pull failed for gcr.io/google_containers/pause:2.0, this may be because there are no credentials on this request.  details: (unable to ping registry endpoint https://gcr.io/v0/
    v2 ping attempt failed with error: Get https://gcr.io/v2/: dial tcp 74.125.204.82:443: getsockopt: connection refused
     v1 ping attempt failed with error: Get https://gcr.io/v1/_ping: dial tcp 74.125.204.82:443: getsockopt: connection refused)
    View Code

    不难看出,无法访问到gcr.io
    有如下解决办法:

      1. 翻墙
      2. 修改hosts文件(这里我用的是“61.91.161.217  gcr.io”,但是可能会失效)
      3. 从其他源下载容器“pause:2.0”,然后打tag为“gcr.io/google_containers/pause:2.0”
  • 相关阅读:
    外观模式
    装饰器模式
    eclipse在运行main方法时在console里面报内存溢出的错误解决办法
    windows7安装node
    Eclipse-低版本离线集成svn步骤
    IDEA-JetBrains产品永久破解
    Java对字符串使用MD5进行加密(亲测有效)
    windows下的java项目打jar分别编写在windows与linux下运行的脚本( 本人亲测可用!)
    在linux中运行main方法所在的java类(亲测有效!!!)
    linux常用命令
  • 原文地址:https://www.cnblogs.com/ilinuxer/p/6367418.html
Copyright © 2011-2022 走看看