簡體   English   中英

Kubernetes本地Ingress流量策略本地

[英]Kubernetes on-premise Ingress traffic policy local

安裝在本地的Kubernetes,nginx入口

在多個節點上具有多個pod的服務所有這些節點都作為nginx入口工作。

問題是,當來自負載均衡器的請求可以跳到另一個具有pod的工作程序時,這會導致在工作程序網絡內部產生不必要的流量,我想強制當請求來自外部到入口時,入口始終選擇Pod同一節點,以防沒有Pod可以轉發到其他節點。

這個圖像或多或少代表了我的情況。

我在藍色情況下有問題,我期望是紅色情況。

我看到存在“ externalTrafficPolicy:本地”,但這僅適用於serviceType nodePort / loadBalancer,nginx入口嘗試使用“ clusterIP”進行連接,因此跳過了此功能。 有一種方法可以使此功能適用於clusterIP或類似的東西? 我開始閱讀有關istio和linkerd的文章,它們看起來是如此強大,但是我看不到任何參數可以配置此工作流程。

您必須使用NodeSelector部署Ingress Controller才能將其部署到名為ingress或所需的特定節點的特定節點:因此,您可以使用端口80和443上的簡單運行狀況檢查在這些節點IP上繼續創建LB(僅用於更新)區域,以防出現節點故障),或者更好的是使用自定義的運行狀況檢查端點。

如您所說, externalTrafficPolicy=Local僅適用於負載均衡服務:處理externalTrafficPolicy=Local群集很困難:)

暫無
暫無

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

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