我有一个在谷歌容器引擎中运行的kubernetes安装程序。 k8s服务之一“类型:LoadBalancer” ...所以我想它创建了一个Google网络负载平衡。现在是我帐单的一部分
“计算引擎网络负载平衡”远高于我的计算引擎成本。有没有办法用kubernates中的任何其他解决方案来消除“网络负载平衡”成本项...请注意。

这个问题与我要寻找的很接近:

GCP Kube-Lego forwarding rule pricing

...但是到目前为止还没有答案。

最佳答案

1)将nginx-ingress-controller部署到kube-cluster:

helm install --name my-lb stable/nginx-ingress --set controller.service.type=NodePort
helm list
kubectl get svc

这将创建“my-lb-nginx-ingress-controller”-一个自定义的nginx负载平衡器,而不是gke-load-balancer(谷歌的)。这将在kube-cluster中实现入口规则对象。
***之后,任何由“annotations:kubernetes.io/ingress.class:nginx”创建的入口规则对象都将由此ngnix-controller强制执行。

2)创建防火墙规则以打开nodePorts:
由于nginx-controller部署为“conroller.service.type = NodePort”,因此请从“kubect get svc”命令检查nodePorts并创建gcloud“networking / firewall”规则以允许端口“tcp:31181; tcp:31462”。现在,您可以使用浏览器到达“http://node-ip-address:31181”或“https://node-ip-address:31462”到达ngnix Controller 。

3)删除内容:
helm delete my-lb
helm del --purge my-lb

我在gke上面做了,现在我有了ngnix-load-balancer而不是Google的cloud-load-balancer。但是我遇到的一个限制是“http://node-ip:80”被拒绝连接...不知道为什么。但是,通过节点端口“http://node-ip-address:31181”的访问正在工作。现在确定,必须找出端口80的访问拒绝。

关于kubernetes - gcloud容器引擎-网络负载平衡成本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46248265/

10-15 21:56