外观
一句话答案
四种 Service:ClusterIP(集群内部)、NodePort(端口暴露)、LoadBalancer(云 LB)、ExternalName(DNS 别名)。
核心要点
| 类型 | 访问范围 | 用途 |
|---|---|---|
| ClusterIP(默认) | 集群内部 | 服务间通信 |
| NodePort | 外部通过 NodeIP:Port | 开发测试 |
| LoadBalancer | 云厂商 LB | 生产对外暴露 |
| ExternalName | DNS CNAME | 访问外部服务 |
Headless Service:clusterIP=None,直接返回 Pod IP 列表
追问与易错
追问方向:
- 这个概念在你的项目中是怎么应用的?
- 和相关技术/方案相比有什么优劣?
- 如果出了问题你会怎么排查?
易错点:
- ❌ 只知道概念不知道原理——面试官会追问底层实现
- ❌ 缺乏实际使用经验——结合项目场景回答更有说服力
💡 记忆锚点
K8s四种Service像四种门禁:ClusterIP是内部工牌(默认,只有集群内同事能访问),NodePort是在大楼外墙开窗口(外部通过NodeIP:Port访问,适合开发测试),LoadBalancer是请保安公司在门口站岗分流(云厂商LB,生产用),ExternalName是给外部服务贴个内部别名(DNS CNAME)。Headless Service(clusterIP=None)则是直接给你所有员工的手机号(Pod IP列表)。