nginx - 为 Kubernetes 入口保留客户端源 IP?
问题描述
我正在使用这个 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
我想保留客户端源公共 IP。在我的服务中,我正在设置ExternalTrafficPolicy: Local
,直接点击 LoadBalancer 时它可以工作,但我不知道通过 Ingress 时需要什么设置。
解决方案
要保留 Ingress 源 IP,请参阅以下步骤:https ://cloud.ibm.com/docs/containers?topic=containers-comm-ingress-annotations#preserve_source_ip_classic
本质上,您执行的操作与您描述的相同,只是您编辑了现有的 alb 服务。
脚步:
- kubectl 编辑 svc <ALB_ID> -n kube-system
- 在规范下,将 externalTrafficPolicy 的值从 Cluster 更改为 Local。
推荐阅读
- amazon-web-services - AWS lambda 执行超出超时限制
- multithreading - 用于多线程的 Scala 迭代器
- node.js - 在 Node.js 中为群聊应用程序实现端到端加密的好方法?
- swift - iOS:关闭应用程序时如何在后台运行代码?
- python - 在捕获输入错误后在第二次迭代中出现问题
- ios - 如何将表格视图单元格从一个表格视图移动到一个新的表格视图
- symfony - 使用 Symfony 5 信任 Heroku 路由器
- mysql - 我如何将此 mysql 语句转换为 hql
- java - 我可以在 java 的父子选项卡中并行运行测试吗?(硒测试NG)
- python - Python3 在同一行打印 - 7 段设备格式的数字