代理
用戶在使用 Kubernetes 的過程中可能遇到幾種不同的代理(proxy):
- kubectl proxy:
- 運行在用戶的桌面或 pod 中
- 從本機地址到 Kubernetes apiserver 的代理
- 客戶端到代理使用 HTTP 協(xié)議
- 代理到 apiserver 使用 HTTPS 協(xié)議
- 指向 apiserver
- 添加認證頭信息
- apiserver proxy:
- 是一個建立在 apiserver 內(nèi)部的“堡壘”
- 將集群外部的用戶與集群 IP 相連接,這些IP是無法通過其他方式訪問的
- 運行在 apiserver 進程內(nèi)
- 客戶端到代理使用 HTTPS 協(xié)議 (如果配置 apiserver 使用 HTTP 協(xié)議,則使用 HTTP 協(xié)議)
- 通過可用信息進行選擇,代理到目的地可能使用 HTTP 或 HTTPS 協(xié)議
- 可以用來訪問 Node、 Pod 或 Service
- 當用來訪問 Service 時,會進行負載均衡
- kube proxy:
- 在每個節(jié)點上運行
- 代理 UDP、TCP 和 SCTP
- 不支持 HTTP
- 提供負載均衡能力
- 只用來訪問 Service
- apiserver 之前的代理/負載均衡器:
- 在不同集群中的存在形式和實現(xiàn)不同 (如 nginx)
- 位于所有客戶端和一個或多個 API 服務(wù)器之間
- 存在多個 API 服務(wù)器時,扮演負載均衡器的角色
- 外部服務(wù)的云負載均衡器:
- 由一些云供應(yīng)商提供 (如 AWS ELB、Google Cloud Load Balancer)
- Kubernetes 服務(wù)類型為 ?
LoadBalancer
?時自動創(chuàng)建
- 通常僅支持 UDP/TCP 協(xié)議
- SCTP 支持取決于云供應(yīng)商的負載均衡器實現(xiàn)
- 不同云供應(yīng)商的云負載均衡器實現(xiàn)不同
Kubernetes 用戶通常只需要關(guān)心前兩種類型的代理,集群管理員通常需要確保后面幾種類型的代理設(shè)置正確。
請求重定向
代理已經(jīng)取代重定向功能,重定向功能已被棄用。
更多建議: