Nginx
NGINX 與 GCE Kubernetes 入口類
在 Google Container Engine 上設置 Kubernetes 入口時,您可以選擇入口類 (
gce
或nginx
)。我意識到 GCE 類在 Google 的雲平台上提供了一個負載均衡器,每個成本約為 20 美元/月。經過一番研究,我找不到任何普遍的理由說明為什麼 Google 的負載均衡器比使用 NGINX 入口類更好——至少在達到非常大的規模之前是這樣。
事實上,GCE 類似乎不支持:
- 外部身份驗證
ingress.kubernetes.io/auth-url
- 基本認證
- NGINX ingress 內置的一些其他小功能
使用 GCE 類與 NGINX 類進行入口有什麼我不知道的好處嗎?
經過一些進一步的閱讀和測試,我確實發現了一些好處。我還意識到,使用 NGINX 控制器仍會提供負載均衡器……因此無法避免約 20 美元/月的成本。
差異
- GCE 控制器導致配置HTTP(S) 負載平衡器
- NGINX 控制器需要
service
指定為type: LoadBalancer
- 這樣做會導致配置網路負載平衡器
HTTP(S) 負載平衡器
網路負載均衡器
好處:
- 如上圖所示,HTTP(S)負載均衡器可以跨地域進行負載均衡,而網路負載均衡器只能跨同地域的zone進行負載均衡
- GCE 控制器是專門為 Google 的雲平台建構的,所以我認為它更可靠地工作
- 與維護和指定 NGINX 控制器執行所需的 YAML 文件相比,預設 GCE 控制器不需要額外的工作