容器與平台運維 進階
什麼是 Service Mesh?它解決了微服務架構中的哪些問題?
Service Mesh 概念
Service Mesh 是微服務間通訊的基礎設施層,透過 Sidecar 代理(通常是 Envoy)處理服務間的所有網路流量,讓業務程式碼無需關注網路邏輯。
解決的核心問題
可觀測性:自動為所有服務間請求生成 metrics、traces、logs,無需修改程式碼
流量管理:
- 金絲雀發布(Canary):將 10% 流量導向新版本
- 熔斷器(Circuit Breaker):防止連鎖故障
- 重試與逾時:統一設定重試策略
安全性:
- mTLS:服務間自動雙向加密通訊
- Authorization Policy:細粒度的存取控制
服務發現:自動發現叢集中的服務端點
架構
Data Plane(資料平面):各 Pod 中的 Sidecar 代理(Envoy)
Control Plane(控制平面):管理並下發設定至所有代理
- Istio:istiod
- Linkerd:linkerd-control-plane
何時需要 Service Mesh
- 微服務數量多(>10 個),服務間依賴複雜
- 需要強制 mTLS 以符合安全合規要求
- 需要精細的流量控制(A/B testing、漸進式發布)
代價
Sidecar 容器增加每個 Pod 的資源消耗(CPU/Memory),引入額外的網路延遲,配置複雜度提升。
✦ AI 模擬面試
輸入你的答案,AI 即時分析精準度與改進空間
登入後即可使用 AI 評分
