繁体   English   中英

如何在Kubernetes中获得服务类型为ClusterIP的客户端IP地址

[英]How to get client IP address in Kubernetes with service type ClusterIP

我在Kubernetes中使用ClusterIP提供服务,并使用nginxhttps://github.com/helm/charts/tree/master/stable/nginx-ingress )将这些服务公开给互联网。 当我尝试获取应用程序中的客户端IP地址时,我正在获取群集的节点IP。 如何获取实际的客户端IP?

我查看了服务中的"externalTrafficPolicy": "Local"设置,但对于该服务类型,必须为LoadBalancer

我还尝试了使用以下命令更新入口注释:

nginx.ingress.kubernetes.io/enable-cors: "true"
nginx.ingress.kubernetes.io/cors-allow-headers: "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,X-Forwarded-For,csrf-token"
nginx.ingress.kubernetes.io/cors-allow-origin: "https://example.com"

但是,仍然无法正常工作。 请指教!

不幸的是,今天这不可能。 请参阅https://github.com/kubernetes/kubernetes/issues/67202https://github.com/kubernetes/kubernetes/issues/69811了解有关此问题的更多讨论。

如果要获取客户端IP地址,则需要使用NodePortLoadBalancer类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM