kubernetes-sigs/aws-load-balancer-controller

Dangling AWS Shield Protections after Ingress are deleted

开放

#4,042 创建于 2025年2月5日

 (5 条评论) (0 个反应) (1 位负责人)Go (1,644 个派生)auto 404
good first issueneeds-triage

仓库指标

星标
 (4,317 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

Bug Description We use AWS Load balancer controller to manage ingress. We are using alb.ingress.kubernetes.io/shield-advanced-protection ingress annotation to protect the ingress using AWS Shield. This part works perfectly fine. However, when we delete our ingresses, we see that the Protection resource is not deleted. Protection resources have below attributes. "Name" = "managed by aws-load-balancer-controller" "AWS Resource" = "" "Resource type" = "Application Load Balancer" "Status" = "Resource Deleted" "AWS WAF web ACL" = "Error"

Image

Steps to Reproduce

  • Provision an ingress with Annotation alb.ingress.kubernetes.io/shield-advanced-protection = true
  • Verify Shield Protection resource is created
  • Delete the ingress

Expected Behavior

Since the protection resource is managed by load balancer controller, it should be deleted by the controller.

Actual Behavior

Protection resource still exists in a dangling state.

Regression Was the functionality working correctly in a previous version ? [Yes / No] If yes, specify the last version where it worked as expected Unsure about this.

Current Workarounds

NA

Environment

  • AWS Load Balancer controller version: v2.4.6
  • Kubernetes version: EKS 1.29
  • Using EKS (yes/no), if so version?: 1.29
  • Using Service or Ingress: Ingress
  • AWS region: All regions
  • How was the aws-load-balancer-controller installed:
    • If helm was used then please show output of helm ls -A | grep -i aws-load-balancer-controller
    • If helm was used then please show output of helm -n <controllernamespace> get values <helmreleasename>
    • If helm was not used, then copy/paste the exact command used to install the controller, including flags and options.
  • Current state of the Controller configuration:
    • kubectl -n <controllernamespace> describe deployment aws-load-balancer-controller
  • Current state of the Ingress/Service configuration:
    • kubectl describe ingressclasses
    • kubectl -n <appnamespace> describe ingress <ingressname>
    • kubectl -n <appnamespace> describe svc <servicename>

Possible Solution (Optional)

NA

Contribution Intention (Optional)

  • Yes, I'm willing to submit a PR to fix this issue
  • No, I cannot work on a PR at this time

Additional Context

贡献者指南