0

这个周末我有 1 个任务,让 OpenFaas Cloud 在我的家庭服务器上工作。免责声明,我对 Kubernetes 知之甚少。

我一直在这里关注 OpenFaas Cloud 指南。松弛组非常有帮助,但我仍然坚持: https ://github.com/openfaas-incubator/ofc-bootstrap

所以我在主机(Ubuntu 16.04)上有一个 kubernetes 集群。它的 IP 是 192.168.0.98。

我想在我的主机(192.168.0.98)上映射端口 80,以便它将流量发送到 LoadBalancer(10.104.107.60)

kubernetes                                   ClusterIP      10.96.0.1       <none>        443/TCP                      6h30m

nginxingress-nginx-ingress-controller        LoadBalancer   10.104.107.60   <pending>     80:31166/TCP,443:30837/TCP   4h42m

nginxingress-nginx-ingress-default-backend   ClusterIP      10.97.123.87    <none>        80/TCP                       4h42m

当我询问他们提到的 OpenFaas 组上的端口转发时,LoadBalancer 正在运行 nginx-ingress:

Nginx -> 路由器 -> 身份验证 -> 网关 -> 功能

在云上,负载均衡器获取 IP,您设置 DNS,然后访问负载均衡器对应于 nginx 您在本地,因此您需要编辑您的 nginx 配置,使其绑定到端口 80/443 或使用主机上的 HAProxy 来转发到您在集群内节点上运行的 nginx。

这超出了我的技能范围:(

4

2 回答 2

1

通过升级 nginx-ingress-controller 的相应 helm chart,您可以很容易地将 LoadBalancer 服务类型更改为 NodePort 之一:

helm upgrade nginxingress stable/nginx-ingress --set \
controller.service.type=NodePort --recreate-pods

您现在应该可以通过http://localhost_ip:node_port/访问 openfaas 网关

于 2019-02-12T17:23:05.290 回答
0

假设如您提到的那样设置了 Hyper-V 级别的端口转发,您需要将主服务从 LoadBalancer 切换到 NodePort,然后硬连线特定的节点端口或转发碰巧选择的任何一个。

于 2019-02-10T22:27:11.203 回答