Możesz użyć składni „ opisz pod ”
Do użytku z OpenShift:
oc describe pod <pod-id>
W przypadku waniliowego Kubernetes:
kubectl describe pod <pod-id>
Sprawdź zdarzenia w wyniku. W moim przypadku pokazuje Back-off pulling image coredns / coredns: najnowsze
W tym przypadku obrazu coredns / coredns: latest nie można pobrać z Internetu.
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\""
Dodatkowe kroki debugowania
- spróbuj ręcznie pobrać obraz dockera i otagować go na swoim komputerze
- Zidentyfikuj węzeł, wykonując polecenie „kubectl / oc get pods -o wide”
- ssh do węzła (jeśli możesz), który nie może pobrać obrazu dockera
- sprawdź, czy węzeł może rozwiązać DNS rejestru Dockera, wykonując polecenie ping.
- spróbuj ręcznie wyciągnąć obraz dockera w węźle
- Jeśli korzystasz z prywatnego rejestru, sprawdź, czy Twój sekret istnieje i czy jest poprawny. Twój sekret również powinien znajdować się w tej samej przestrzeni nazw. Dzięki swenzel
- Niektóre rejestry mają zapory, które ograniczają dostęp do adresu IP. Zapora może blokować ściąganie
- Niektóre CI tworzą wdrożenia z tymczasowymi sekretami Dockera. Tak więc sekret wygasa po kilku dniach (prosisz o awarie produkcyjne ...)