ALB targets not registered

0

I'm trying to use annotations on an Ingress to create an Application Load Balancer for a service in a private EKS cluster.

Here is a list of things that are true or I have tried

  • Everything runs on Fargate, I've registered a few different profiles for coredns, kube-system, cert-manager and default
  • I have the VPC-CNI, kube-proxy and coredns addons installed
  • I installed the cert-manager and ALB controller version 2.7.0 using kubectl apply. There are a couple of things that needed changing including running the cert-manager-webhook on port 10260, and adding region, vpc, cluster name and disabling shield and waf on the alb-controller manifest.
  • The service works, I can curl to the specific pod ip address and I get a successful response. I have tried multiple replicas and they all work.
  • The application load balancer is registered, listener rules created, and a target group is defined, but no targets are registered
  • I have also tried using annotations on the service as a loadbalancer instead of defining an ingress. A very similar thing happens, I get a load balancer, listener rules and a target group with no targets registered.
  • There are no errors, the targets are just not registered. The ingress reconciles fine and the logs on the alb controller show now errors.
  • If i manually register the targets, i can access the service just fine.

I am not sure what to try next.

1개 답변
0

Are you using the ALB in ip mode? Use the Pod readiness gate. AWS Load Balancer controller supports Pod readiness gates to indicate that pod is registered to the ALB/NLB and healthy to receive traffic If a readiness gate doesn't get ready, you can check the reason via: kubectl get pod nginx-test-545d8f4d89-l7rcl -o yaml | grep -B7 'type: target-health'

see https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.1/deploy/pod_readiness_gate/

AWS
dov
답변함 3달 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠