【发布时间】:2022-01-11 18:18:27
【问题描述】:
我设法在托管服务提供商 (hetzner) 的专用服务器上安装了 kubernetes 1.22、longhorn、kiali、prometheus 和 istio 1.12 (profile=minimal)。
然后我继续使用 istio 教程中的 istio 入口网关测试 httpbin。我在从 Internet 访问它时遇到了一些问题(我设置 HAProxy 以将本地端口 80 转发到在 kubernetes 中分配的动态端口,因此在我的情况下是端口 31701/TCP)
如何让 kubernetes 在裸机接口端口 80(和 443)上直接可用。
我以为我找到了 metallb 的解决方案,但我无法完成这项工作,所以我认为它不适用于该用例。 (我尝试将EXTERNAL-IP设置为裸机接口的IP,但似乎不起作用)
我的 HAProxy 设置现在不适用于我的 SSL 流量(在 kubernetes 上使用 cert-manager),但在我继续调查之前,我想确定一下。这真的是您假设在裸机上使用 istio 网关配置将流量路由到 Kubernetes 的方式吗?
我遇到了this,但我没有外部负载均衡器,我的托管服务提供商也没有提供给我使用。
【问题讨论】:
-
我认为您的方法 - 配置 LoadBalancer(您发送的其他主题也建议)是一种正确的方法。我检查了MetalLB docs,它似乎受到 MetalLB 的支持:>是的,请参阅 Hetzner 笔记。您可以尝试按照"Hetzner notes" 的步骤设置 MetalLB 吗?
-
我设置 HAProxy 与 istio 网关相结合,现在它可以工作了。我认为 SSL 不起作用的原因是因为 istio.io/latest/docs/setup/additional-setup/gateway 在与其余教程(istio-system)不同的命名空间中创建了 ingressgateway。
-
很高兴听到它正在工作。您能否发布您的评论作为答案,以便社区可以看到?
标签: kubernetes istio istio-gateway