Incident Library

IL-0465 IONOS Cloud · 2026-03-04kubernetes

IONOS Container Registry image pushes and pulls failed with 504 Gateway Timeout

The IONOS Container Registry runs on IONOS Managed Kubernetes (MK8s), and all registry traffic to the Kubernetes API goes through a proxy. During a migration, a temporary capacity constraint put two critical control plane components on the same proxy instance instead of separate ones, although anti-affinity rules were in place. That proxy reached its maximum number of concurrent connections and stopped accepting new ones, so image pushes and pulls failed with 504 errors. IONOS describes the co-location as the condition created by the migration and the connection limit as the direct trigger.

At 12:22 UTC the Kubernetes team deployed a mitigation that rolled back a component of the Kubernetes control plane to an earlier version, and the incident was marked resolved at 16:39 UTC. The root cause analysis lists additional proxy capacity and moving the affected control plane components onto separate proxy instances as the steps that restored balanced load and ended the 504 errors.

Severity
–
Scope
Image pushes and pulls on the IONOS Container Registry failed with 504 errors, blocking and delaying customer deployments
Users affected
IONOS Container Registry customers
Region
–
Time to detect
–
Time to resolve
–

Symptoms

On 4 March 2026 customers of the IONOS Container Registry got 504 Gateway Timeout errors when pushing or pulling container images, and deployments that relied on the registry were blocked. The status page first reported an increased error count on the registry at 09:23 UTC, saying customers might be unable to pull images.

At 10:23 UTC the Container Registry team traced the problem to the underlying Kubernetes cluster that serves a subset of images.

Symptom Image pull failuresHigh error rate

Root cause

Trigger
A migration combined with a temporary capacity constraint placed two critical control plane components on the same proxy instance, despite anti-affinity rules; the shared proxy then reached its concurrent connection limit.

Detection

–

Remediation

Action items

Lessons

–

Sources

Related cases

Check your cluster for this

kubegap audits a Kubernetes cluster for conditions like the ones in this case, Container registry and its credentials, Managed Kubernetes control plane and provider API, Pod scheduling and placement among them, read-only, from Claude Code or Codex. Its checks cite public reports like this one.

For AI tools and scripts

The API needs no key. The MCP server offers search_incidents, get_incident, list_incidents, get_topic and vocab; both are explained on API and MCP.