全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

获取pod真实ip的实践教程

最近更新时间:2026-05-12 14:52:20

背景信息

金山云容器服务的独立部署集群、托管集群中默认安装了守护进程 ip-masq-agent,Pod 之间跨节点相互访问以及 Pod 访问同 VPC 内其他节点时将不对 Pod 的 IP 地址做 SNAT。而在默认情况下,Pod 访问其他服务的地址将经过 k8s 伪装,导致用户无法获取 Pod 真实地址。

本次实践旨在暴露 k8s 中 Pod 真实 IP,以便用户采集日志。为方便用户进行操作,本次实践采用控制台修改方式。

在 2022 年 8 月 30 日后创建的独立集群 | 2022 年 11 月 8 日后创建的托管集群才会默认安装 ip-masq-agent

操作步骤

步骤一:定位 Pod 实例

  1. 登录容器服务控制台,在集群列表中,点击目标集群名称/ID,进入实例页面。

  2. 在实例信息页面,在左侧导航栏,选择工作负载 > DaemonSet > ip-masq-agent

  1. 进入相应详情页面,选择 YAML页签,定位 ip-masq-agent 使用的配置文件。

步骤二:修改 ConfigMap 内容

  1. 返回实例信息,选择配置管理 > ConfigMap > ip-masq-agent-config

  1. 点击编辑YAML,修改相应配置文件,将 NonMasqueradeCIDRs 中地址改为 0.0.0.0/0,并点击 更新

apiVersion: v1
kind: ConfigMap
metadata:
  creationTimestamp: 2024-05-31T09:25:24Z
  name: ip-masq-agent-config
  namespace: kube-system
  resourceVersion: "94030274"
  uid: 2f420bc1-7cb0-4a4e-ae1c-35f96264b2ce
data:
  config: '{"NonMasqueradeCIDRs":["0.0.0.0/0"],"MasqLinkLocal":true,"ResyncInterval":"1m0s"}'

步骤三:验证规则生效

验证生成的 iptables 规则,并且在生效节点上查看具体条目。

iptables -t nat -L IP-MASQ-AGENT

如下图,显示 anywhere 任意访问均不做地址伪装,即可实现 Pod 真实 IP 透传。

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈