Service 为一组按 label 选中的 Pod 提供稳定的网络身份(一个虚拟 IP 和一个 DNS 名)。由于 Pod 是短暂的且会更换 IP,Service 就是客户端使用的持久地址,并在其背后的健康 Pod 之间进行负载均衡(load-balance)。
为什么需要 Service
Pod 来来去去(每次都是新 IP)。客户端需要一个稳定的端点。
一个 Service:
→ 按 label 选择 Pod (selector: app=web)
→ 获得一个固定的虚拟 IP + DNS 名 (web.default.svc.cluster.local)
→ 在匹配且已 READY 的 Pod 之间对请求做负载均衡
