簡體   English   中英

未為 ALB 創建目標組綁定

[英]Target Group Binding not getting created for an ALB

雖然這個問題乍一看似乎是重復的,但我會要求人們通過它一次到 go。 在發布之前,我已經檢查了所有類似的問題。

我有一個 ALB 入口 controller,它為我嘗試通過 ALB 訪問的應用程序注冊了目標組。 但是,沒有為應用程序創建目標組綁定,因此目標組下的“注冊目標”始終為 0。此外,LoadBalancerAssociated 也為 None。 這可以從下圖中看出。

我檢查了 ALB pod 日志,沒有錯誤 w.r.t 創建目標組綁定。

根據此處的一些文檔:

https://kube.netes-sigs.github.io/aws-load-balancer-controller/v2.1/guide/targetgroupbinding/targetgroupbinding/

我看到 ALB 應該自己創建目標組綁定:

The AWS LoadBalancer controller internally used TargetGroupBinding to support the functionality for Ingress and Service resource as well. It automatically creates TargetGroupBinding in the same namespace of the Service used.

由於 pod 日志中沒有錯誤,我想知道如何調試此問題?

在此處輸入圖像描述 任何幫助,將不勝感激。

更新 1(當前場景):ALB 應該對許多應用程序進行負載平衡。 所以ingress下面有很多服務。 已為除上述服務之外的所有服務創建目標組綁定。

我似乎已經找到了解決問題的方法。

如問題中所述,ALB 入口 controller 位於許多服務的前面。

我們將它們命名為服務 A 和服務 B,服務 B 是目標組綁定有問題的服務。

對於服務 A,ALB 日志中有以下錯誤:

{"level":"info","ts":xxx.xx,"logger":"controllers.ingress","msg":"creating targetGroup","stackID":"xxxx","resourceID":"A"}
{"level":"error","ts":xxxxxx.xxx,"logger":"controller-runtime.manager.controller.ingress","msg":"Reconciler error","name":"xxxxx","namespace":"xxxx","error":"InvalidParameter: 1 validation error(s) found.\n- minimum field value of 1, CreateTargetGroupInput.Port.\n"}

該錯誤表明 ALB controller 無法為服務 A 創建目標組。

但是我忽略了這個錯誤,因為它似乎與服務 B 無關。

但是,令我非常驚訝的是,協調器的這個錯誤似乎一直在阻礙與其他目標群體的協調。

通過從 ALB Ingress yaml 中刪除服務 A 修復上述錯誤后確認了這一點,這意味着 ALB 不會為服務 A 創建目標組。

這導致服務 B 的協調最終被觸發:

{"level":"info","ts":xxxx.xxx,"logger":"controllers.ingress","msg":"modifying targetGroupBinding","stackID":"xxx/xxxxx","resourceID":"xx/xxxx","targetGroupBinding":{"namespace":"xxxx","name":"xxxxxxx"}}
{"level":"info","ts":xxxx.xxxxxxx,"logger":"controllers.ingress","msg":"modified targetGroupBinding","stackID":"xxx/xxxxxx","resourceID":"xxx/xxxxxx","targetGroupBinding":{"namespace":"xxxx","name":"xxxxxxx"}}

然后最終我們為服務 B 的目標組標記了正確的負載均衡器和目標。

最可能的結論:

協調器錯誤會阻止所有其他協調。因此,如果您發現 ALB 的目標組綁定不存在,盡管具有正確的入口配置和 RBAC(目標組綁定 CR 上的更新權限),請檢查 ALB pod 日志中的協調器錯誤.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM