【问题标题】:Bind kubernetes istio ingress gateway to local ports 80 and 443将 kubernetes istio 入口网关绑定到本地端口 80 和 443
【发布时间】: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


【解决方案1】:

根据评论发布社区 wiki 答案以获得更好的可见性。随意扩展它。


问题的解决方法是:

我结合 Istio 网关设置了 HAProxy,现在它可以工作了。

原因:

我认为 SSL 不起作用的原因是 istio.io/latest/docs/setup/additional-setup/gateway 在与其余教程 (istio-system) 不同的命名空间 (istio-ingress) 中创建了入口网关。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-02
    • 2019-11-12
    • 2018-12-22
    • 1970-01-01
    • 2018-01-25
    • 2021-02-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多