Load-Balancing
Kubernetes - 我可以避免使用 GCE 負載均衡器來降低成本嗎?
我正在使用 Gitlab-CI 在 GCE 上部署 Kubernetes 集群。我想將成本降到最低 - 這是我目前的設置:
- 節點在 3 個
f1-micro
實例上執行Traefik
使用 ServiceType 配置執行的系統 podLoadBalancer
- 萬用字元 dns 已配置
- 1個
postgres
豆莢ingress
1 個為 Traefik 配置的Web 伺服器 pod我想降低我的部署成本。大部分成本都在 GCE 負載均衡器上。有沒有辦法可以在 GCE 上使用公共 IP 地址而不是負載均衡器?如果是這樣,我可以使用分配給集群的 IP 地址(而不是保留靜態 IP)嗎?
換句話說,有沒有辦法在沒有負載均衡器的情況下使用 GCE 將臨時 IP 綁定到 Kubernetes 服務?
有沒有其他我可以做不同的配置來降低 GCE 的成本?
是的,通過 ExternalIPs。請注意,如果已分配外部 IP 的節點發生故障,這將意味著您的服務將關閉,但如果您只執行 1 個主節點,您可能不太關心這一點。
範例服務:
apiVersion: v1 kind: Service metadata: name: myapp spec: ports: - port: 80 protocol: TCP selector: app: myapp externalIPs: - a.b.c.d
IP 需要是 GCE 實例的內部IP(這是因為 GCE DNAT 將流量傳輸到內部 IP)。然後應該可以通過節點分配的外部 IP 訪問該服務。
您可能希望更改入口控制器的服務,以便您可以通過一個 IP 路由所有應用程序。