2015-12-17 2 views
9

Я только что установил kubernetes локального кластера, но когда я попробовал командуkubernetes локального кластера создают стручки получил ошибки как «ErrImagePull» и «ImagePullBackOff»

cluster/kubectl.sh run my-nginx --image=nginx --replicas=2 --port=80 

для создания и запуска стручки, вот что я получил :

NAME    READY  STATUS    RESTARTS AGE 
my-nginx-00t7f 0/1  ContainerCreating 0   23m 
my-nginx-spy2b 0/1  ContainerCreating 0   23m 

и я использовал kubectl logs, я получил

Pod "my-nginx-00t7f" in namespace "default" : pod is not in 'Running', 'Succeeded' or 'Failed' state - State: "Pending" 

Кажется, он застрял в статусе «ожидающий». Тогда я использовал «kubectl описать» и получил

Name:       my-nginx-00t7f 
Namespace:      default 
Image(s):      nginx 
Node:       127.0.0.1/127.0.0.1 
Start Time:      Thu, 17 Dec 2015 22:27:18 +0800 
Labels:       run=my-nginx 
Status:       Pending 
Reason: 
Message: 
IP: 
Replication Controllers:  my-nginx (2/2 replicas created) 
Containers: 
    my-nginx: 
    Container ID: 
    Image:    nginx 
    Image ID: 
    QoS Tier: 
     cpu:    BestEffort 
     memory:   BestEffort 
    State:    Waiting 
     Reason:   ContainerCreating 
    Ready:    False 
    Restart Count:  0 
    Environment Variables: 
Conditions: 
    Type   Status 
    Ready   False 
Volumes: 
    default-token-p09p6: 
    Type:  Secret (a secret that should populate this volume) 
    SecretName: default-token-p09p6 
Events: 
    FirstSeen  LastSeen  Count From     SubobjectPath Type   Reason   Message 
    ---------  --------  ----- ----     ------------- --------  ------   ------- 
    26m   26m    1  {scheduler }       Normal   Scheduled  Successfully assigned my-nginx-00t7f to 127.0.0.1 
    22m   1m    79  {kubelet 127.0.0.1}      Warning   FailedSync  Error syncing pod, skipping: ImagePullBackOff 
    24m   5s    8  {kubelet 127.0.0.1}      Warning   FailedSync  Error syncing pod, skipping: ErrImagePull 

Кажется, мой докер не может тянуть изображения, но на самом деле он может, нет никаких проблем, когда я docker pull nginx.

+0

Мне было бы интересно увидеть журналы kubelet для узла, на который был запланирован этот модуль. Не могли бы вы разместить с ними gist или pastebin? Это поможет диагностировать. –

+0

Большое спасибо. У меня есть проблема. Я заблокирован GFW, так что я не могу вытащить изображение gcr.io/google_containers/pause:2.0, хотя я могу вытащить изображение из dockerhub. Но я не понимаю, какова функция изображения «пауза: 2.0» в кубернете? Почему я не могу создать стручок без него? –

ответ

2

Я предполагаю, что вы поняли, что это контейнер с паузой, который нельзя вытащить из журналов Kubelet.

Kubernetes необходимо создать контейнер для контейнера для хранения общих ресурсов, таких как пространство имен в сети. Для этого используется контейнер паузы, который представляет собой очень маленький контейнер, который просто спит навсегда.

0

Если ваш контейнер остается в состоянии ожидания, проверьте, пожалуйста, службы kube-schedular. Если его состояние остановлено, включите его и проверьте.