Error map
is waiting to start Error from server (BadRequest): container "x" in pod "y" is waiting to start: ContainerCreating
Kubernetes · layer 6, Platform & cloud
Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.
Directly related (12)
HTTP 500 Internal Server Error
The server hit an unexpected condition — usually an unhandled exception or misconfiguration in the application.
error: You must be logged in to the server (Unauthorized)
The cluster rejected kubectl’s credentials — expired token, wrong kubeconfig user, or cloud IAM identity not allowed.
Unable to connect to the server: dial tcp <ip>:443: i/o timeout
kubectl can’t reach the API server at all — network path, VPN, firewall or a private endpoint you’re outside of.
Pod status InvalidImageName: couldn't parse image reference
The image field in the pod spec isn’t a valid image reference, so the kubelet can’t even try to pull it.
Liveness probe failed ... Container will be restarted (also Startup probe failed)
The kubelet’s liveness (or startup) check failed enough times that it killed and restarted the container.
Error: INSTALLATION FAILED: cannot re-use a name that is still in use
helm install was run with a release name that already exists in the namespace (even a failed one).
error: Metrics API not available / HPA: unable to get metrics for resource cpu
metrics-server isn’t installed or isn’t working, so kubectl top and CPU/memory HorizontalPodAutoscalers have no data.
Readiness probe failed: HTTP probe failed with statuscode: 503 / connect: connection refused
The container is running, but its readiness check fails, so the pod is marked not ready and removed from Service endpoints.
error: the server doesn't have a resource type "x"
kubectl doesn’t know the resource name you typed — a typo, a CRD that isn’t installed, or a stale discovery cache.
Job has reached the specified backoff limit (BackoffLimitExceeded)
The Job’s pods failed more times than backoffLimit (default 6), so Kubernetes marked the Job failed and stopped retrying.
Error from server: admission webhook "validate.nginx.ingress.kubernetes.io" denied the request
A validating admission webhook (ingress-nginx, Gatekeeper/OPA, Kyverno) inspected your object and rejected it; the reason follows…
Internal error occurred: failed calling webhook "x": ... connection refused / context deadline exceeded
The API server couldn’t reach an admission webhook’s service, so it rejected the request (failurePolicy: Fail).
Two steps away (31)
HTTP 404 Not Found
The server can’t find anything at the requested URL.
HTTP 502 Bad Gateway
A proxy or gateway (Nginx, load balancer, CDN) got an invalid response — or no response — from the upstream server behind it.
HTTP 503 Service Unavailable
The server is temporarily unable to handle the request — overloaded, in maintenance, or has no healthy backends.
AWS: ExpiredToken — The security token included in the request is expired
Temporary AWS credentials (STS/SSO/assumed role) have expired.
kubectl: The connection to the server localhost:8080 was refused — did you specify the right host or port?
kubectl has no usable kubeconfig, so it falls back to localhost:8080 — or the cluster API server is unreachable.
Error from server (Forbidden): pods is forbidden: User "x" cannot list resource "pods" in API group "" in the namespace
You’re authenticated to the cluster, but RBAC doesn’t give your user or service account that verb on that resource.
API Request Timed Out (ETIMEDOUT / ReadTimeout / timeout of 30000ms exceeded)
The client gave up waiting — either for the connection to open or for the response to arrive.
Unable to connect to the server: x509: certificate has expired or is not yet valid / certificate signed by unknown authority
kubectl doesn’t trust the API server’s certificate — it expired (kubeadm clusters after 1 year), the CA in kubeconfig is wrong, o…
Error from server (NotFound): deployments.apps "x" not found
The named object doesn’t exist in the namespace/cluster kubectl is pointing at.
Kubernetes: CrashLoopBackOff
The container starts, crashes (or exits), and Kubernetes keeps restarting it with increasing back-off delays.
Kubernetes: ImagePullBackOff / ErrImagePull
The node can’t pull the container image — wrong name/tag, missing registry credentials, or registry unreachable.
docker: invalid reference format (repository name must be lowercase)
Docker couldn’t parse the image name — uppercase letters, spaces, an empty variable, or a misplaced option.
Kubernetes: OOMKilled (exit code 137)
The container used more memory than its limit, and the kernel killed it.
ALB target unhealthy: Health checks failed with these codes: [404] / Request timed out
The load balancer’s health checks to your targets fail, so it stops sending traffic (and returns 502/503 if no targets are health…
Docker container is unhealthy (health check failing)
The container is running, but its HEALTHCHECK command keeps failing, so Docker (and dependent services) consider it unhealthy.
Kubernetes: CreateContainerConfigError — secret / configmap not found
Kubernetes can’t build the container’s configuration — usually a referenced Secret, ConfigMap or key doesn’t exist in that namesp…
Pod status CreateContainerError
The image was pulled, but the container runtime failed to create the container — bad command, missing mount target, or a name/vol…
Error: UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress
A previous Helm operation on this release was interrupted and left it in a pending-install/pending-upgrade state, so Helm refuses…
Namespace stuck in Terminating
A deleted namespace never disappears because some resource inside it, or the namespace’s own finalizer, can’t be cleaned up.
pods is forbidden: failed quota: must specify limits.cpu,limits.memory,requests.cpu,requests.memory
A ResourceQuota on the namespace covers CPU/memory, so every pod must declare those requests/limits — and this one doesn’t.
Service has no endpoints (no endpoints available for service / Endpoints: <none>)
The Service’s selector matches no ready pods, so traffic to it is refused or returns 503.
deployment "x" exceeded its progress deadline (ProgressDeadlineExceeded)
A rollout didn’t make progress within progressDeadlineSeconds (default 600) — new pods never became ready.
Error from server (AlreadyExists): ... already exists
kubectl create tried to make an object whose name is already taken in that namespace.
no matches for kind "Ingress" in version "extensions/v1beta1" (resource mapping not found)
The manifest uses an apiVersion/kind the cluster doesn’t serve — a removed beta API, or a CRD that isn’t installed.
The Deployment is invalid: spec.selector: Invalid value: field is immutable
You tried to change a field Kubernetes doesn’t allow to change after creation — Deployment selectors, Job templates, Service clus…
Kubernetes node NotReady (Kubelet stopped posting node status)
The control plane hasn’t heard from a node’s kubelet, or the kubelet reports a problem — pods there stop being scheduled and are…
Ingress returns "404 Not Found" / "default backend - 404" (ingress-nginx)
The ingress controller received the request but no Ingress rule matched the host/path, so it answered with its default backend.
rendered manifests contain a resource that already exists. Unable to continue with install: ... invalid ownership metadata
Helm wants to create an object that already exists but isn’t labelled as belonging to this release.
Webhook signature verification failed (Stripe, Razorpay, GitHub…)
Your endpoint computed a different HMAC signature than the one the provider sent, so the webhook is rejected.
Webhook delivery failed (endpoint returned non-2xx / timed out)
The provider tried to send a webhook to your endpoint but didn’t get a timely 2xx response, so it marks the delivery failed and r…
Error creating: pods is forbidden: violates PodSecurity "restricted:latest": allowPrivilegeEscalation != false ...
The namespace enforces a Pod Security Standard (baseline/restricted) and the pod spec breaks one of its rules.
Map another error
Popular: 4035004000xC000007BTypeErrorCritical error404NullPointerException