吴晓阳
发布于 2026-02-13 / 4 阅读
0
0

k8s单机版kind nodePort不能自动映射到宿主主机

k8s单机版kind nodePort不能自动映射到宿主主机
你问的 Kind 集群的 NodePort 访问特殊要求,核心根源是:Kind 是基于 Docker 容器的「轻量级 K8s 集群」,其 NodePort 规则仅在 Kind 容器内部生效,而非直接绑定到 Ubuntu 宿主机的网卡—— 这和物理机 / 虚拟机部署的 K8s 集群有本质区别

docker inspect kind-control-plane | grep -A 10 "IPAddress"
# 验证 IP 是否获取成功(必须有值,比如 172.18.0.2)
echo $KIND_IP

# 先杀死旧的 socat 进程(避免冲突)
sudo pkill socat

# 执行转发(用正确的 KIND_IP)
sudo socat TCP-LISTEN:30808,fork,reuseaddr TCP:$KIND_IP:30808 &

# 验证转发端口是否监听
sudo netstat -tulpn | grep 30808

# 转发 30080:母机端口 → Kind 容器端口
sudo socat TCP-LISTEN:30080,fork,reuseaddr TCP:$KIND_IP:30080 &

评论