容器化与 Kubernetes 面试题:Pod、Service、存储、调度等核心知识点与回答框架

在 Kubernetes 面试中,Pod、Service、存储 和 调度 是四大核心考察维度。面试官通过这些问题评估候选人对容器编排的理解深度、生产实践经验以及故障排查能力。本章围绕这四个维度,梳理高频面试题及结构化回答框架,帮助你在面试中精准命中考点。

🎯 章节聚焦:Pod 生命周期与探针 · Service 类型与服务发现 · PV/PVC 与动态供给 · 调度策略与 QoS
K8s 核心概念 Pod 生命周期 + 探针 Service 类型 + 服务发现 存储 PV/PVC + 动态供给 调度 过滤打分 + 优先级

📊 知识结构:K8s 四大核心概念对比

概念 核心作用 关键配置 常见面试点
Pod 最小调度单元 探针、资源限制、init 容器 生命周期状态、健康检查、共享网络
Service 网络抽象层 ClusterIP / NodePort / LB / ExternalName 服务发现、负载均衡、流量转发
存储 数据持久化 PV / PVC、StorageClass、动态供给 存储生命周期、访问模式、回收策略
调度 资源分配 调度策略、优先级、QoS 过滤打分、亲和性、资源预留

🎙️ 面试问题:请解释 Kubernetes Pod 的生命周期状态,并说明容器探针的配置策略。

🎯 面试官考察点:对 Pod 状态机的完整理解,健康检查的实战经验,以及在不同场景下的探针组合策略。
📋 回答框架:状态定义 → 转换条件 → 探针类型 → 配置策略 → 最佳实践
💡 示例回答:

Pod 有 Pending、Running、Succeeded、Failed、Unknown 五种状态。探针包括 livenessProbe(失败重启容器)、readinessProbe(失败从 Service 摘除)、startupProbe(慢启动保护)。生产环境建议组合 startupProbe 与 livenessProbe,避免启动阶段误判。

❓ 可能追问:init 容器与 sidecar 容器的区别?如何实现 Pod 优雅终止?
⚠️ 避坑提醒:不要将 readinessProbe 用于应用健康检测,它只控制流量接入;避免探针超时时间过短导致频繁重启。

🎙️ 面试问题:Kubernetes Service 有哪几种类型?如何实现服务发现和 DNS 解析?

🎯 面试官考察点:Service 底层原理,网络模型理解,不同场景下的类型选择依据。
📋 回答框架:类型定义 → 适用场景 → 实现原理 → 服务发现机制 → 流量路径
💡 示例回答:

Service 类型包括 ClusterIP(集群内通信)、NodePort(节点端口接入)、LoadBalancer(云负载均衡)、ExternalName(DNS 映射)。通过 kube-dns 解析 Service 名到 ClusterIP,kube-proxy 使用 iptables/IPVS 实现四层转发。

❓ 可能追问:headless Service 如何做有状态服务?EndpointSlice 相比 Endpoints 的优势?
⚠️ 避坑提醒:不要忽略 ExternalName 类型的应用场景;避免误认为 Service 只能做四层负载均衡(可结合 Ingress 做七层)。

🎙️ 面试问题:Kubernetes 调度器如何选择节点?Pod 优先级和 QoS 机制如何协作?

🎯 面试官考察点:调度原理,资源管理策略,生产环境调优经验。
📋 回答框架:调度流程 → 过滤与打分 → 优先级与抢占 → QoS 分类 → 资源预留
💡 示例回答:

调度器先过滤(节点选择、资源充足),再打分(资源均衡、亲和性)。PriorityClass 控制调度顺序,高优先级可抢占低优先级。QoS 分 Guaranteed、Burstable、BestEffort 三级,影响节点资源分配和 eviction 顺序。

❓ 可能追问:nodeAffinity、podAffinity、podAntiAffinity 如何配置?如何进行节点资源预留?
⚠️ 避坑提醒:不要混淆抢占和预选;避免在高优先级 Pod 中忽略 QoS 配置导致调度失败;不要忽视调度器的可扩展性(调度框架)。
🔍 面试追问深度路径:从基础概念到底层扩展,面试官逐步深入考察 K8s 知识体系。
基础概念 Pod 状态 · Service 类型 原理机制 探针原理 · 网络转发 实践优化 ← 上一章 📖 返回目录 下一章 →