从Google容器引擎转发HTTPS客户端IP

时间:2016-10-28 18:20:00

标签: nginx http-headers kubernetes google-cloud-platform google-kubernetes-engine

我在使用Google容器引擎的docker容器中运行nginx服务,该容器将特定的域名转发给其他服务,如API,前端等。我有配置服务的简单集群。 Nginx服务是负载平衡。

REMOTE_ADDR环境变量始终包含Kubernetes群集中的内部地址。我查找的是HTTP_X_FORWARDED_FOR,但请求标头中缺少它。是否可以配置服务以在请求中保存外部客户端IP?

1 个答案:

答案 0 :(得分:3)

使用L3平衡的当前实现(从Kubernetes 1.4开始),无法获得与服务连接的源IP地址。

听起来好像使用Ingress对象(或手动创建HTTP/S load balancer)可以很好地处理您的用例,这会将源IP地址放入X-Forwarded-For HTTP标头,便于您的后端检索。