云計算
K8S中訪問pod如何獲取客戶端真實IP,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
創(chuàng)新互聯(lián)專注于芒康網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供芒康營銷型網(wǎng)站建設(shè),芒康網(wǎng)站制作、芒康網(wǎng)頁設(shè)計、芒康網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)公司服務(wù),打造芒康網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供芒康網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。保留客戶端源 IP
因為對于這個特性的代碼實現(xiàn)的關(guān)系,目標(biāo)容器看到的源 IP不是客戶端的源 IP。如需要保留客戶端源 IP, 可以配置一下這些服務(wù)的 spec 字段(GCE/GKE 環(huán)境中可支持):
service.spec.externalTrafficPolicy- 如果這個服務(wù)需要將外部流量路由到 本地節(jié)點或者集群級別的端點,那么需要指明該參數(shù)。存在兩種選項:”Cluster”(默認(rèn))和 “Local”。 “Cluster” 隱藏源 IP 地址,可能會導(dǎo)致第二跳(second hop)到其他節(jié)點,但是全局負(fù)載效果較好?!盠ocal” 保留客戶端源 IP 地址,避免 LoadBalancer 和 NodePort 類型服務(wù)的第二跳,但是可能會導(dǎo)致負(fù)載不平衡。
service.spec.healthCheckNodePort- 定義服務(wù)的 healthCheckNodePort (數(shù)字端口號)。 如果沒有聲明,服務(wù) API 后端會用分配的 nodePort 創(chuàng)建 healthCheckNodePort。如果客戶端 指定了 nodePort,則會使用用戶自定義值。這只有當(dāng)類型被設(shè)置成 “LoadBalancer” 并且 externalTrafficPolicy 被設(shè)置成 “Local” 時,才會生效。
http://docs.kubernetes.org.cn/759.html
注意如果Serivce 是ClusterIP 類型,那么需要對Ingress-controller-slb 的service 增加:
externalTrafficPolicy:Local
關(guān)于K8S中訪問pod如何獲取客戶端真實IP問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注箭頭云行業(yè)資訊頻道了解更多相關(guān)知識。