首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes Nginx保存源IP

Kubernetes Nginx保存源IP
EN

Stack Overflow用户
提问于 2022-06-02 16:50:54
回答 1查看 242关注 0票数 1

我有几个正在运行的服务,需要保存Source才能正确执行身份验证。我使用Nginx作为我的侵入控制器在AKS中运行一个Kubernetes环境,并且在理解如何正确地实现这一点时遇到了问题。

我读过这个

https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer

还有这个

https://github.com/kubernetes/ingress-nginx/issues/1067

并阅读将这个service.spec.externalTrafficPolicy设置为本地应该解决我的问题,但是我很难理解我应该将它应用于哪个服务。听起来这几乎是需要添加到nginx部署中,它会影响所有的部署,这将是不可取的。

我的问题是,是否有一种方法可以将它应用到我的服务清单中,只适用于需要它的服务,而不是将它添加到所有东西中,或者使用Nginx注释或者为我正在部署的服务调整服务清单?

作为参考,这是我正在部署的“我的服务清单”,它是带舵的:

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: {{ template "service.fullname" . }}
  labels:
    app: {{ template "service.name" . }}
    chart: {{ template "service.chart" . }}
    release: {{ .Release.Name }}
    heritage: {{ .Release.Service }}
spec:
  type: {{ .Values.service.type }}. #ClusterIP
  ports:
    - port: {{ .Values.service.port }}
      targetPort: {{ .Values.service.targetPort }}
      protocol: TCP
      name: http
  selector:
    app: {{ template "service.name" . }}
    release: {{ .Release.Name }}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-03 10:11:39

显然,您需要将该设置添加到nginx ingress controller服务中,该服务具有type = LoadBalancer

如果你想一想,就没有其他选择了。Nginx ingress controller是集群中的入口点,所以如果不将源IP地址保存在那里,就不可能将其保存在随后的服务中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72479672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档