服务网格
精通预计深耕 6 个月+星团 云与基础设施
岗位需求
0 核心 · 2 加分
在职岗位将其列为技能要求
核心岗位薪资带
—
核心要求岗位的月薪区间
需求趋势
上升 0稳定 0收缩 0
核心要求岗位的趋势分布
面试题库
高频真题 · 参考答案随题展开1. 服务网格解决什么问题?与 SDK 治理方案相比如何?
微服务治理能力(服务发现、负载均衡、超时重试、熔断、灰度发布、mTLS 加密、链路埋点)最初沉淀在语言 SDK(如 Dubbo、Spring Cloud、Finagle),痛点是:多语言要重复实现与升级(异构栈能力不一致),SDK 版本演进要推动所有业务改代码发版,业务代码与治理逻辑耦合。服务网格把治理下沉到基础设施层:数据面在每个 Pod 注入 sidecar 代理(Envoy),拦截业务全部进出流量执行路由、弹性与安全策略;控制面(istiod)下发配置并生成证书,业务进程完全无感,多语言一份治理能力,升级网格不动业务代码。代价:多一跳代理带来延迟(P99 增加约一毫秒级)与资源开销(每 Pod 内存与 CPU)、运维复杂度高、排障多一层。选型:语言统一且治理需求简单时 SDK 或网关足够;多语言、统一策略、零信任与精细流量治理才上网格。
2. sidecar 如何劫持与转发流量?
以 Istio 注入为例:Pod init 容器在启动前配置 iptables 规则,把该 Pod 网络命名空间的出站与入站流量重定向到 sidecar(Envoy)监听的两个端口——入站经 15006、出站经 15001,从而业务容器无感地被代理。出站流程:应用发起对 other-service 的调用,iptables 拦截进 Envoy,Envoy 依据监听器与路由簇配置(控制面下发的服务发现、目的地规则、虚拟服务)选择集群与端点,做负载均衡、超时重试后转发;mTLS 在此处终止与发起。入站流程:上游 Envoy 连到本 Pod 15006,经策略(授权、限流)后转给业务端口。透明劫持的细节:回环地址流量排除、原始目的地保持(listen 加 original_dst)、协议自动探测(HTTP 加 TCP)决定是 L7 还是 L4 代理。排除项(redirect 排除端口)与 sidecar 生命周期顺序(容器启动顺序问题)是实践坑。能讲 init 改 iptables 加两个端口的链路即满分。
3. 网格中的 mTLS 是如何实现的?
目标是服务间流量默认加密并双向身份认证(零信任:不信任内网)。机制:控制面内置 CA(istiod),为每个工作负载签发短期客户端证书(SPIFFE 格式的 SAN 标识 service account 与命名空间);sidecar 之间建连时互相出示证书完成双向 TLS 认证,谁都不能冒充。策略分层:对等认证 PeerAuthentication 控制网格内 mTLS 模式(PERMISSIVE 兼容过渡期明文、STRICT 强制加密);请求认证 RequestAuthentication 校验终端入口的 JWT;授权策略 AuthorizationPolicy 按 身份加命名空间加路径加方法 做允许与拒绝,默认无策略即全允许,配了默认拒绝即白名单模型。运维要点:证书轮换自动完成(短期证书缩小泄露窗口)、外部 CA 集成、迁移顺序先 PERMISSIVE 观察再 STRICT、入口网关的 TLS 终止与网格内 mTLS 的衔接。能讲 CA 签发加双向认证加两层策略即完整。
4. 网格如何做流量治理与灰度发布?
核心资源以 Istio 为例:VirtualService 定义路由规则——按 header、uri、用户身份把请求分到不同 destination(权重分流),支持重写、镜像(mirror 把流量影子到新版本不影响响应)、重试与超时配置;DestinationRule 定义目标策略——连接池、异常点检测(连续 5xx 超阈值摘除)与负载均衡策略(轮询、最少请求、一致性哈希、随机)。灰度路径:权重灰度(v1 百分之九十五、v2 百分之五按效果放量)、内容灰度(内部用户或白名单 header 路由到 v2)、镜像流量(全量影子验证新版本再切)。配合入口网关(Gateway 资源)控制南北向,与金丝雀分析(Argo Rollouts、Flagger 依据指标自动调权重与回滚)形成闭环。对比 SDK 灰度:规则即时生效不用发版、版本路由基于服务版本子集而非部署多套。能讲 VirtualService 加 DestinationRule 分工并给一个灰度序列即优秀。
5. Istio 与 Linkerd 如何选型?无 sidecar 模式是什么趋势?
Istio 功能全面:流量管理最丰富(镜像、故障注入、多集群)、安全策略细、可观测集成深,但组件多、资源占用与学习曲线陡,适合大组织与复杂治理需求。Linkerd 极简哲学:自研 Rust 数据面(Linkerd2-proxy)轻量低延迟,默认值开箱即用(mTLS、重试、黄金指标),功能面窄但覆盖九成常规需求,运维负担小,适合中小团队快速受益。选型建议按治理复杂度与团队运维能力,而非功能清单。无 sidecar 趋势:sidecar 模式的痛点是每 Pod 资源放大与启动顺序问题,sidecar-less 路线包括 Istio ambient mesh(数据面拆成每节点 ztunnel 做 L4 加按需部署的 waypoint 代理做 L7,资源占用大降)与 Cilium(eBPF 在内核层劫持,无用户态代理加资源开销最小,L7 能力依赖 Envoy 按需起)。能点出 ztunnel 加 waypoint 分层与 eBPF 思路即体现跟进前沿。
官方文档
2 条功能最全的服务网格中文手册,流量与安全治理全覆盖
轻量级网格代表,极简运维理念值得一读
推荐教程
1 条主流网格的数据面底座,理解代理机制必修
推荐课程
0 条待共建——资源由编辑部持续遴选补充。
上手实践
1 条官方源码与 samples 示例应用,本地 kind 集群可跑
难度档决定星等与难度分权重(入门 1 / 进阶 2 / 精通 3);学习资源由编辑部遴选并持续维护, 经验心得欢迎在上方「知识分享」区署名分享。

