Skip to content

[BUG] mcr.microsoft.com/application-lb/charts/alb-controller helm chart doesn't support tolerations for the pre-delete cleanup job #5729

@sdurrheimer

Description

@sdurrheimer

Describe the bug
Hi there,

We are using the Application Gateway ALB Controller helm chart in our clusters:
oci://mcr.microsoft.com/application-lb/charts/alb-controller

But there is an issue with the alb-controller-cleanup Job pre-delete hook that is unable to get executed because all nodes in our cluster nodes have taints.
This is preventing the helm chart to get properly uninstalled and blocks our automated destroying cluster workflow.

The helm chart doesn't allow to configure proper tolerations for this cleanup job, while we can for the controller deployment itself (ref. #4370).
Nor does it put a good enough default toleration to make sure it can be executed, for e.g:

spec:
  tolerations:
  - key: CriticalAddonsOnly
     operator: Exists

To Reproduce
Steps to reproduce the behavior:

  1. Create a cluster with custom taints setup on all running nodes
  2. Install the ALB controller helm chart version 1.9.16 with the following values:
helm install -n default alb-controller oci://mcr.microsoft.com/application-lb/charts/alb-controller --version 1.9.16 -f values.yaml 
# values.yaml
albController:
  installGatewayApiCRDs: true
  namespace: azure-alb-system
  podIdentity:
    clientID: <custom-workload-identity-client-id>
  controller:
    tolerations:
      - key: CriticalAddonsOnly
        operator: Exists
  1. Uninstall the helm chart and observe the alb-controller-cleanup-<hash> pod unable to get scheduled on any nodes.

Expected behavior

The cleanup job of the helm chart should either:

  • have good-enough default tolerations to ensure the cleanup will always be capable of executing itself
  • use the same albController.controller.tolerations value for the job as well
  • introduce a new tolerations option for the cleanup job

Screenshots
If applicable, add screenshots to help explain your problem. Make sure not to include sensitive or personal information.

Environment (please complete the following information):

  • ALB Controller Chart Version: 1.9.16
  • Kubernetes version: 1.34.4

Additional context
Add any other context about the problem here.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions