容器與平台運維 中階

Kubernetes Ingress 是什麼?與 Service LoadBalancer 有何不同?

AI 練習作答

Ingress 的作用

Ingress 是管理叢集外部 HTTP/HTTPS 流量進入叢集的 API 物件,提供:

  • 基於 URL 路徑的路由(/api → 後端服務,/ → 前端服務)
  • 基於 Host 的路由(api.example.com vs app.example.com)
  • TLS 終止(SSL 卸載)
  • 統一的外部入口(單一 LoadBalancer 服務多個應用)

Ingress vs LoadBalancer Service

方式 適用場景 成本
LoadBalancer Service 非 HTTP 服務、單一應用 每個 Service 一個雲端 LB(費用高)
Ingress 多個 HTTP/HTTPS 服務 一個 LB 對應多個後端(成本低)

設定範例

apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-ingress spec: rules:

  • host: api.example.com http: paths:
    • path: /users pathType: Prefix backend: service: name: user-service port: number: 80

Ingress Controller

Ingress 本身只是規則定義,需要 Ingress Controller 來實際處理流量。常見選擇:

  • nginx-ingress:最廣泛使用
  • Traefik:原生支援動態設定
  • AWS ALB Ingress:AWS 環境的原生整合

✦ AI 模擬面試

輸入你的答案,AI 即時分析精準度與改進空間

登入後即可使用 AI 評分