Kubernetes Pod 端口代理:借道访问集群内部服务
概述在 Kubernetes 环境中,经常需要从本地访问集群内部的服务(如 Redis、MySQL 等),但出于安全考虑,这些服务通常不对外暴露。本文介绍如何利用已有的 Pod 作为跳板,安全地从本地连接到内部服务。 核心方案: 🔐 Pod 作为代理跳板 🔄 socat 端口转发 🛡️ kubectl port-forward 隧道 🚀 无需暴露服务到公网 适用场景: 访问内部数据库(Redis、MySQL、MongoDB) 调试集群内部服务 开发环境数据查询 临时访问未暴露的服务 方案架构网络拓扑12345本地电脑 (127.0.0.1:6379) ↓ kubectl port-forwardPod (my-app:6379) ↓ socat 代理内部服务 (Redis:10.244.0.5:6379) 流量路径1234567本地 Redis 客户端 → localhost:6379 → kubectl port-forward 隧道 → Pod:6379 → socat 监听 → 转发到 10.244.0.5:637...
