Skip to content

[Architecture] Migrate ingress-nginx to supported alternative (EOL March 2026) #130

@TineoC

Description

@TineoC

Purpose: TLDR of why we need this?

'ingress-nginx' reaches End of Life (EOL) at the end of March 2026. Continued use after this date poses security risks and lack of support for newer Kubernetes versions.

Functionality: TLDR of what will this change?

Replace the current 'ingress-nginx' controller with a supported alternative (e.g., a Gateway API-based controller like Envoy Gateway, or Traefik). This will involve updating ingress annotations and class names across all cluster manifests.

Affects: Where will this change?

The following files specifically use the nginx ingress class or related annotations:

  • choose-native-plants/release-values.yaml
  • echo-http.yaml
  • cert-manager.issuers.yaml
  • balancer/kustomization.yaml (Patch)
  • sealed-secrets/release-values.yaml
  • metabase/release-values.yaml
  • paws-data-pipeline/release-values.yaml
  • prevention-point/release-values.yaml
  • Also potentially app/deploy/manifests/balancer/base/ingress.yaml (referenced by balancer/ lens).

Pros/Cons

Pros: Security compliance, modern ingress features.
Cons: Potential downtime during migration, need to update multiple manifests.

Additional context

The following files specifically use the nginx ingress class or specific annotations (like nginx.ingress.kubernetes.io/proxy-body-size) that will need to be translated to the new ingress controller's format:

  • choose-native-plants/release-values.yaml
  • paws-data-pipeline/release-values.yaml
  • metabase/release-values.yaml
  • prevention-point/release-values.yaml
  • sealed-secrets/release-values.yaml
  • balancer/kustomization.yaml (Patch)
  • echo-http.yaml
  • cert-manager.issuers.yaml (ACME challenge solvers)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions