You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The primary maintenance mode implementation will move to the Kubernetes Gateway API (#632). However, not all clusters run Gateway API-capable controllers or have the Gateway API CRDs installed. To provide reasonable coverage for the most common ingress controllers, we will add best-effort annotation-based support for the top 5 controllers by market share.
Important: This is provided with limited guarantees. No regression tests are maintained, and implementations will NOT be updated when ingress controllers release new versions. Users relying on these should migrate to Gateway API (#632) for long-term support.
Top 5 Ingress Controllers (by market share)
Based on CNCF survey data, Datadog container reports, and industry analysis:
Context
The primary maintenance mode implementation will move to the Kubernetes Gateway API (#632). However, not all clusters run Gateway API-capable controllers or have the Gateway API CRDs installed. To provide reasonable coverage for the most common ingress controllers, we will add best-effort annotation-based support for the top 5 controllers by market share.
Important: This is provided with limited guarantees. No regression tests are maintained, and implementations will NOT be updated when ingress controllers release new versions. Users relying on these should migrate to Gateway API (#632) for long-term support.
Top 5 Ingress Controllers (by market share)
Based on CNCF survey data, Datadog container reports, and industry analysis:
server-snippetannotationIngressRoutemiddleware or annotationshaproxy-ingress.github.io/server-snippetor backend rulesVirtualServicefault injection orEnvoyFilterDesign
Controller Detection Strategy
The operator should detect which ingress controller is in use via:
spec.ingress.classNameon the Keycloak CR (explicit)ingressClassNameon existing Ingress resourcesPer-Controller Implementation
Each controller gets a maintenance mode annotation builder function:
Support Guarantees
Acceptance Criteria
References