我正在使用这个 Ingress,它类似于 Nginx:https://cloud.ibm.com/docs/containers?topic=containers-ingress_annotation#general
当我这样做时:
request -> LoadBalancer Service -> client source public IP returned
request -> Ingress -> LoadBalancer Service -> some private IP returned
我想保留客户端源公共(public) IP。在我的服务中,我正在设置 ExternalTrafficPolicy: Local
,它在直接点击 LoadBalancer 时有效,但我不知道在通过 Ingress 时我需要什么设置。
最佳答案
要保留 Ingress 源 IP,请参阅以下步骤:https://cloud.ibm.com/docs/containers?topic=containers-comm-ingress-annotations#preserve_source_ip_classic
本质上,您所做的事情与您所描述的相同,只是您编辑了现有的 alb 服务。
步骤:
- kubectl edit svc
-n kube-system - 根据规范,将 externalTrafficPolicy 的值从 Cluster 更改为 Local。
关于nginx - 为 Kubernetes 入口保留客户端源 IP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56656103/