Load-Balancing
將 LoadBalancer 添加到現有服務
接近尾聲時,他們有點掩飾如何創建
LoadBalancer
或分配NodePorts
給服務。他們引用了描述不同類型及其功能的文件,但並未真正詳細說明如何將它們應用於服務。有沒有辦法更新正在執行的服務,創建負載均衡器並將其附加到指定的埠?使用 Amazon Web Services 來託管我們的集群,它支持負載均衡器,非常適合創建服務,但我不確定如何修改服務。
編輯:
嘗試這樣做會導致錯誤:
$ kubectl expose service frontend –port=80 –type=LoadBalancer
來自伺服器的錯誤:服務“前端”已經存在
這很令人困惑,但顯然
kubectl expose
只能創建一項新服務,而不能更新現有服務。它說在現有服務上執行時,您應該傳遞一個--name
標誌來指定新服務的所需名稱,以避免您看到的衝突。要就地更新服務,您應該能夠使用
kubectl patch
或kubectl update
。這可能不是最佳方法,但我個人傾向於通過執行kubectl get svc svc-name -o yaml > svc.yaml
、根據需要更新 svc.yaml (type: LoadBalancer
在這種情況下具有)然後kubectl update -f svc.yaml
.