当前位置: 首页 > news >正文

k8s ingress获取客户端客户端真实IP

背景

在Kubernetes中,获取客户端真实IP地址是一个常见需求。这是因为在负载均衡架构中,原始请求的源IP地址会被替换成负载均衡器的IP地址。

获取客户端真实IP的需求背景包括以下几点:

  1. 安全性:基于客户端IP进行访问控制和认证授权可以提高系统安全性。
  2. 日志记录与审计:记录真实IP有助于监测、故障排除和合规性审计。
  3. 统计与分析:了解用户来源地区和行为可以提供有价值的数据支持,用于业务决策和优化资源分配。
  4. 反欺诈与风险评估:根据真实IP进行欺诈检测、风险评估或地理位置相关功能能够提高准确性和可靠性。
    通过适当配置Kubernetes Ingress和相关组件,可以确保将原始请求中的真实IP正确传递给后端服务,满足上述需求并提供更精确、安全和可靠的服务。

配置方法

以阿里云ack集群中安装的ingress-nginx为例

方法1 命令行添加方法

1.获取ingress-nginx-controllerconfigmap配置文件名称

[root@K8SMASTER01 ~]# kubectl get -n kube-system deployment ack-ingress-nginx-controller -oyaml|grep configmap- --configmap=$(POD_NAMESPACE)/ack-ingress-nginx-controller

2.编辑ingress-nginx-controller的configmap配置文件

添加一下参数到配置文件中添加层级如下图

compute-full-forwarded-for = true
forwarded-for-header = X-Forwarded-For
use-forwarded-headers =true

kubectl edit -n kube-system cm ack-ingress-nginx-controller

在这里插入图片描述
保存退出即可,立即生效无需重启pod

方法2 控制台添加

1.查看ingress-nginx-controller的yaml文件
在这里插入图片描述
2.去到k8s集群控制台配置项选项
在这里插入图片描述
3.添加以下配置点击保存即可
在这里插入图片描述

http://www.lryc.cn/news/111140.html

相关文章:

  • Mysql主从搭建 基于DOCKER
  • Leaflet入门,地图平移跳转到指定位置和飞行到指定位置效果
  • iMX6ULL驱动开发 | 让imx6ull开发板支持usb接口FC游戏手柄
  • Java 实现 SCP 携带密码拷贝文件
  • Flink CEP(三)pattern动态更新
  • 抽象工厂模式(C++)
  • 程序员面试金典17.*
  • 【瑞吉外卖项目复写】基本部分复写笔记
  • 用html+javascript打造公文一键排版系统15:一键删除所有空格
  • 苍穹外卖day12(完结撒花)——工作台+Spring_Apche_POI+导出运营数据Excel报表
  • SQL与NoSQL概念(详细介绍!!)
  • node debian 镜像 new Date 获取时间少 8 小时问题
  • 【N32L40X】学习笔记13-软件IIC读写EEPROM AT24C02
  • JVM 调优
  • DP-GAN剩余代码
  • 在word的文本框内使用Endnote引用文献,如何保证引文编号按照上下文排序
  • SpringBoot项目上传至服务器
  • C++中实现多线程的三种方式
  • 程序员副业指南:怎样实现年入10w+的目标?
  • excel 计算 分位值
  • mongodb-windows-x86_64-4.4.23-signed.msi
  • 一个SpringBoot 项目能处理多少请求?
  • Shell编程基础(十)读取多行文本到数组 写入多行文本到文件
  • MyBatis学习笔记2
  • spring总结
  • 记录--说一说css的font-size: 0
  • Matlab实现支持向量机算法(附上多个完整仿真源码)
  • AIGC大模型ChatGLM2-6B:国产版chatgpt本地部署及体验
  • [国产MCU]-BL602开发实例-开发环境搭建
  • 春秋云镜 CVE-2020-26048