阿里云容器服务Ingress设置原IP透传
问题
在很多业务场景里,我们都需要知道客户端的真实IP来控制业务逻辑。但是从客户到真正的服务,中间总会进过多层的SLB(负载均衡),那么如何才能获取到客户的真实IP呢?
在Kubernetes容器的环境下,通常一个客户端访问到业务要经过云的SLB,Ingress才能达到业务的应用。所以我们需要每一层都能够透传客户端的IP才行。
原理
在基于HTTP的协议里,对于客户端原IP的透传,可以参考: RFC7239(Forwarded HTTP Extension, https://tools.ietf.org/html/rfc7239) 标准。没经过一层链路,都会把对应地址加入到X-Forwarded-For
这个http的扩展头里,以逗号隔开,最早的客户端是第一个地址。
例如:
X-Forwarded-For: 192.0.2.43, 2001:d

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
如何设置 Kubernetes 资源限制
Kubernetes 作为当下最流行的的容器集群管理平台,需要统筹集群整体的资源使用情况,将合适的资源分配给pod容器使用,既要保证充分利用资源,提高资源利用率,又要保证重要容器在运行周期内能够分配到足够的资源稳定运行。 配置容器资源限制 对于一个pod来说,资源最基础的2个的指标就是:CPU和内存。Kubernetes提供了个采用requests和limits 两种类型参数对资源进行预分配和使用限制。limit 会限制pod的资源利用: 当pod 内存超过limit时,会被oom。 当cpu超过limit时,不会被kill,但是会限制不超过limit值。 测试内存限制 部署一个压测容器,压测时会分配250M内存,但实际pod的内存limit为100Mi apiVersion: v1 kind: Pod metadata: name: me
- 下一篇
ECS弹性计算-密集计算型实例规格族 ic5 上线
信息摘要: ECS推出密集计算型实例规格族ic5,vCPU与内存配比为1:1。 适用客户: Web前端服务器 数据分析、批量计算、视频编码 高网络包收发场景,如视频弹幕、电信业务转发等 大型多人在线游戏(MMO)前端 版本/规格功能: ecs.large(2vCPU/2GB) ecs.xlarge(4vCPU/4GB) ecs.2xlarge(8vCPU/8GB) ecs.3xlarge(12vCPU/12GB) ecs.4xlarge(16vCPU/16GB) 产品文档: https://help.aliyun.com/document_detail/25378.html?#concept-sx4-lxv-tdb-ic5
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS关闭SELinux安全模块
- CentOS8安装Docker,最新的服务器搭配容器使用
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范