Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ALB Invalid Listener takes down entire gateway resource #4758

Open
andreasthuen opened this issue Jan 20, 2025 · 2 comments
Open

ALB Invalid Listener takes down entire gateway resource #4758

andreasthuen opened this issue Jan 20, 2025 · 2 comments
Assignees
Labels
AGC Application Gateway for Containers bug

Comments

@andreasthuen
Copy link

andreasthuen commented Jan 20, 2025

Hi, we are using Azure Application Gateway for Containers as a load balancer for the workloads running in our AKS clusters.

We are running multiple different endpoints/domains in the ALB and they all terminate in the Gateway.
Each workload uses its own certificate and is set up as listeners in the Gateway resource:

apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: dev-alb-gateway
  namespace: alb-system
  annotations:
    alb.networking.azure.io/alb-namespace: alb-system
    alb.networking.azure.io/alb-name: dev-alb
spec:
  gatewayClassName: azure-alb-external
  listeners:
  - name: https-listener1
    port: 443
    protocol: HTTPS
    hostname: domain1.contoso.com
    allowedRoutes:
      namespaces:
        from: All
    tls:
      mode: Terminate
      certificateRefs:
      - kind: Secret
        group: ""
        name: domain1-tls-certificate
        namespace: app-1-ns
  - name: https-listener2
    port: 443
    protocol: HTTPS
    hostname: domain2.contoso.com
    allowedRoutes:
      namespaces:
        from: All
    tls:
      mode: Terminate
      certificateRefs:
      - kind: Secret
        group: ""
        name: domain2-tls-certificate
        namespace: app-2-ns

We are using a ReferenceGrant to allow the ALB to use k8s secrets from a different namespace, and this works as fine.

However, if f.ex. one of the k8s secrets does not exist in the referenced namespace, all listeners will stop working, not just the one with the invalid certificate.

We would of course expect the misconfigured listener to stop working, but we rather have it that not all other listeners also stopped working.

We are running the ALB helm chart version: 1.3.7 and our AKS clusters are version: 1.31.2

@PixelRobots PixelRobots added the AGC Application Gateway for Containers label Jan 20, 2025
@andreasthuen
Copy link
Author

We have now also tested this using ALB controller helm chart version 1.3.9 and the issue still occurs.

@JackStromberg
Copy link
Member

Acklowedging the ask and we are currently investigating.

Thank you,
Jack

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AGC Application Gateway for Containers bug
Projects
None yet
Development

No branches or pull requests

3 participants