डीबग कैसे करें "ImagePullBackOff"?


122

अचानक, मैं कुछ छवियों को तैनात नहीं कर सकता, जिन्हें पहले तैनात किया जा सकता था। मुझे निम्नलिखित पॉड का दर्जा मिला:

[root@webdev2 origin]# oc get pods 
NAME                      READY     STATUS             RESTARTS   AGE 
arix-3-yjq9w              0/1       ImagePullBackOff   0          10m 
docker-registry-2-vqstm   1/1       Running            0          2d 
router-1-kvjxq            1/1       Running            0          2d 

आवेदन अभी शुरू नहीं होगा। फली कंटेनर को चलाने की कोशिश नहीं कर रहा है। इवेंट पेज से, मुझे मिल गया है Back-off pulling image "172.30.84.25:5000/default/arix@sha256:d326। मैंने सत्यापित किया है कि मैं टैग के साथ छवि को खींच सकता हूं docker pull

मैंने आखिरी कंटेनर के लॉग की भी जांच की है। इसे किसी कारण से बंद कर दिया गया था। मुझे लगता है कि फली को कम से कम इसे फिर से शुरू करने की कोशिश करनी चाहिए।

मैंने मुद्दों पर बहस करने के लिए विचारों का इस्तेमाल किया है। मैं और क्या जाँच कर सकता हूँ?


क्या यह मल्टी मशीन सेटअप है? यदि ऐसा है तो सत्यापित करें कि आप सभी नोड्स से खींच सकते हैं। यदि नहीं, तो नोड और रीस्टार्ट पर लॉगिंग को --loglevel = 5 पर बारी करें - आपको छवि को खींचने के प्रयास का वर्णन करते हुए मुद्रित जानकारी देखनी चाहिए और इसमें कोई त्रुटि भी शामिल है।
क्लेटन

Loglevel = 5 के साथ पुनः आरंभ करने के बाद क्या निकला?
लविथिलो

2
क्या आपने समस्या का समाधान किया? कोई 'ImagePullBackOff' के इस मुद्दे को समझा सकता है? (छवियां मेरे '
docker

मैंने अपने रेपो के लिए गलत क्षेत्र का उपयोग करके इसे प्राप्त किया। मैं यूरो जोड़ना भूल गया से --image = eu.gcr.io / $ PROJECT_ID / ...
क्लेमेंस टोलबॉम

मेरे मामले में यह इमेज के गलत टैग का नाम था। मैंने TAG नाम बदल दिया जिससे समस्या हल हो गई।
तारा प्रसाद गुरुंग

जवाबों:


120

आप ' वर्णन फली ' वाक्य रचना का उपयोग कर सकते हैं

OpenShift उपयोग के लिए:

oc describe pod <pod-id>  

वेनिला कुबेरनेट्स के लिए:

kubectl describe pod <pod-id>  

आउटपुट की घटनाओं की जांच करें। मेरे मामले में यह दिखाता है कि बैक-ऑफ पुलिंग इमेज कॉर्डन्स / कोरडन: नवीनतम

इस मामले में छवि coredns / coredns: नवीनतम इंटरनेट से नहीं खींची जा सकती।

Events:
  FirstSeen LastSeen    Count   From                SubObjectPath           Type        Reason      Message
  --------- --------    -----   ----                -------------           --------    ------      -------
  5m        5m      1   {default-scheduler }                        Normal      Scheduled   Successfully assigned coredns-4224169331-9nhxj to 192.168.122.190
  5m        1m      4   {kubelet 192.168.122.190}   spec.containers{coredns}    Normal      Pulling     pulling image "coredns/coredns:latest"
  4m        26s     4   {kubelet 192.168.122.190}   spec.containers{coredns}    Warning     Failed      Failed to pull image "coredns/coredns:latest": Network timed out while trying to connect to https://index.docker.io/v1/repositories/coredns/coredns/images. You may want to check your internet connection or if you are behind a proxy.
  4m        26s     4   {kubelet 192.168.122.190}                   Warning     FailedSync  Error syncing pod, skipping: failed to "StartContainer" for "coredns" with ErrImagePull: "Network timed out while trying to connect to https://index.docker.io/v1/repositories/coredns/coredns/images. You may want to check your Internet connection or if you are behind a proxy."

  4m    2s  7   {kubelet 192.168.122.190}   spec.containers{coredns}    Normal  BackOff     Back-off pulling image "coredns/coredns:latest"
  4m    2s  7   {kubelet 192.168.122.190}                   Warning FailedSync  Error syncing pod, skipping: failed to "StartContainer" for "coredns" with ImagePullBackOff: "Back-off pulling image \"coredns/coredns:latest\""

अतिरिक्त डिबगिंग चरण

  1. अपने कंप्यूटर पर मैन्युअल रूप से डॉक चित्र और टैग को खींचने का प्रयास करें
  2. 'Kubectl / oc get pods -o wide' करके नोड की पहचान करें
  3. नोड में ssh (यदि आप कर सकते हैं) जो docker की छवि को खींच नहीं सकता है
  4. जाँच करें कि नोड एक पिंग प्रदर्शन करके docker रजिस्ट्री के DNS को हल कर सकता है।
  5. नोड पर मैन्युअल रूप से डॉक छवि खींचने की कोशिश करें
  6. यदि आप एक निजी रजिस्ट्री का उपयोग कर रहे हैं, तो जांचें कि आपका रहस्य मौजूद है और रहस्य सही है। आपका रहस्य भी उसी नामस्थान में होना चाहिए। धन्यवाद स्वेंजेल
  7. कुछ रजिस्ट्रियों में फ़ायरवॉल हैं जो आईपी एड्रेस एक्सेस को सीमित करते हैं। फ़ायरवॉल पुल को अवरुद्ध कर सकता है
  8. कुछ सीआई अस्थायी डॉकटर रहस्यों के साथ तैनाती बनाते हैं। तो कुछ दिनों के बाद रहस्य समाप्त हो जाता है (आप उत्पादन विफलताओं के लिए पूछ रहे हैं ...)

3
इसके अलावा, यदि आप एक निजी छवि भंडार का उपयोग करते हैं, तो सुनिश्चित करें कि आपकी छवि पुल रहस्य मौजूद है, कोई टाइपो नहीं है और वे सही नामस्थान में हैं।
swenzel

निजी छवि भंडार के मामले में यह भी सुनिश्चित करें कि आप "imagePullSecrets" प्रविष्टि का उपयोग करके अपने पॉड में छवि पुल के रहस्यों को देखें।
डोनटो स्ज़िलाजी

1
: वहाँ भी एक लंबी ब्लॉग पोस्ट कैसे गहराई यहाँ में इस डिबग करने का वर्णन है managedkube.com/kubernetes/k8sbot/troubleshooting/...
gar

1

क्या आपने यह देखने की कोशिश की है कि क्या गलत है (मेरे पास गलत छवि स्थान था)

kubectl edit pods arix-3-yjq9w

या यहां तक ​​कि अपनी फली को हटा दें?

kubectl delete arix-3-yjq9w

0

मैं ECR (AWS इमेज हब) में 1.0.8 टैग की गई छवि को पुश करना भूल गया ... यदि आप Helm का उपयोग कर रहे हैं और:

helm minta-user को अपग्रेड करें ।/src/services/user/helm-chart

यह सुनिश्चित करें कि मानों के अंदर छवि टैग .yaml को धकेल दिया गया है (उदाहरण के लिए ECR या डॉकटर हब, आदि): (यह मेरा पतवार-चार्ट / मान है। श्याम)

replicaCount: 1

image:
   repository:dkr.ecr.us-east-1.amazonaws.com/minta-user
   tag: 1.0.8

आपको यह सुनिश्चित करने की आवश्यकता है कि छवि: 1.0.8 धकेल दी गई है!


0

मैं भी इसी तरह की समस्या का सामना कर रहा था, लेकिन मेरी जगह एक फली तैयार नहीं थी और रेडी स्टेटस 0/1 दिखा रही थी यहां छवि विवरण दर्ज करें

मैंने बहुत सी चीजों की कोशिश की लेकिन अंत में मैंने पाया कि संदर्भ सही ढंग से सेट नहीं किया गया था। कृपया निम्न आदेश का उपयोग करें और सुनिश्चित करें कि आप सही संदर्भ में हैं

kubectl config मिलता है-संदर्भ


0

जीके पर, यदि फली मर गई है, तो घटनाओं की जांच करना सबसे अच्छा है। यह अधिक विस्तार से दिखाएगा कि त्रुटि क्या है।

मेरे मामले में, मेरे पास था:

Failed to pull image "gcr.io/project/imagename@sha256:c8e91af54fc17faa1c49e2a05def5cbabf8f0a67fc558eb6cbca138061a8400a":
 rpc error: code = Unknown desc = error pulling image configuration: unknown blob

यह पता चला कि छवि किसी तरह क्षतिग्रस्त हो गई थी। इसे फिर से शुरू करने और नए हैश के साथ तैनात करने के बाद, इसने फिर से काम किया।


-10

डॉकटर लॉगिन चलाएं

डॉकटर हब में छवि को पुश करें

फिर से फली बनाएँ

इससे मेरे लिए समस्या हल हो गई। आशा करता हूँ की ये काम करेगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.